Optimization Service

최적화

선형 최적화 서비스와 선형 및 정수 혼합 선형 프로그램을 모델링하고 해결하는 데 사용됩니다.

클래스

이름간략한 설명
LinearOptimizationConstraintlowerBound ≤ Sum(a(i) x(i)) ≤ upperBound 형식의 선형 제약 조건을 저장하는 객체. 여기서 lowerBoundupperBound는 상수, a(i)는 상수 계수, x(i)는 변수 (알 수 없음)입니다.
LinearOptimizationEngine선형 프로그램을 모델링하고 해결하는 데 사용되는 엔진입니다.
LinearOptimizationService선형 최적화 서비스와 선형 및 정수 혼합 선형 프로그램을 모델링하고 해결하는 데 사용됩니다.
LinearOptimizationSolution선형 프로그램의 해법입니다.
Status솔루션의 상태입니다.
VariableType엔진에서 만든 변수의 유형입니다.

LinearOptimizationConstraint

방법

메서드반환 유형간략한 설명
setCoefficient(variableName, coefficient)LinearOptimizationConstraint제약조건에서 변수의 계수를 설정합니다.

LinearOptimizationEngine

방법

메서드반환 유형간략한 설명
addConstraint(lowerBound, upperBound)LinearOptimizationConstraint모델에 새 선형 제약 조건을 추가합니다.
addConstraints(lowerBounds, upperBounds, variableNames, coefficients)LinearOptimizationEngine제약 조건을 모델에 일괄로 추가합니다.
addVariable(name, lowerBound, upperBound)LinearOptimizationEngine모델에 새 연속 변수를 추가합니다.
addVariable(name, lowerBound, upperBound, type)LinearOptimizationEngine모델에 새 변수를 추가합니다.
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient)LinearOptimizationEngine모델에 새 변수를 추가합니다.
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients)LinearOptimizationEngine변수를 모델에 일괄 추가합니다.
setMaximization()LinearOptimizationEngine최적화 방향을 선형 목표 함수를 최대화하도록 설정합니다.
setMinimization()LinearOptimizationEngine선형 목표 함수를 최소화하도록 최적화 방향을 설정합니다.
setObjectiveCoefficient(variableName, coefficient)LinearOptimizationEngine선형 목표 함수에서 변수의 계수를 설정합니다.
solve()LinearOptimizationSolution기본 기한을 30초로 설정하여 현재 선형 프로그램을 풉니다.
solve(seconds)LinearOptimizationSolution현재 선형 프로그램을 풉니다.

LinearOptimizationService

속성

속성유형설명
StatusStatus문제 해결사의 상태입니다.
VariableTypeVariableType솔버가 만든 변수의 유형입니다.

방법

메서드반환 유형간략한 설명
createEngine()LinearOptimizationEngine선형 프로그램 (혼합 정수 프로그램일 수 있음)을 해결하기 위한 엔진을 만듭니다.

LinearOptimizationSolution

방법

메서드반환 유형간략한 설명
getObjectiveValue()Number현재 해의 목표 함수의 값을 가져옵니다.
getStatus()Status솔루션의 상태를 가져옵니다.
getVariableValue(variableName)Number솔루션의 마지막 LinearOptimizationEngine.solve() 호출로 생성된 변수 값을 가져옵니다.
isValid()Boolean솔루션이 실행 가능한지, 아니면 최적의 솔루션인지 판단합니다.

Status

속성

속성유형설명
OPTIMALEnum최적의 솔루션을 찾은 경우의 상태입니다.
FEASIBLEEnum가능한 (최적일 필요는 없음) 솔루션이 발견된 경우의 상태입니다.
INFEASIBLEEnum현재 모델을 실행할 수 없는 경우의 상태입니다 (해결책이 없음).
UNBOUNDEDEnum현재 모델이 결합되지 않은 경우의 상태입니다.
ABNORMALEnum예상치 못한 이유로 해결 방법을 찾지 못한 상태입니다.
MODEL_INVALIDEnum모델이 유효하지 않은 경우의 상태입니다.
NOT_SOLVEDEnumLinearOptimizationEngine.solve()가 아직 호출되지 않은 경우의 상태입니다.

VariableType

속성

속성유형설명
INTEGEREnum정수 값만 사용할 수 있는 변수 유형입니다.
CONTINUOUSEnum모든 실수 값을 사용할 수 있는 변수 유형입니다.