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)NumberLinearOptimizationEngine.solve()를 마지막으로 호출하여 만든 솔루션의 변수 값을 가져옵니다.
isValid()Boolean해결책이 실행 가능하거나 최적인지 판단합니다.

Status

속성

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

VariableType

속성

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