Optimization Service

Otimização

O serviço de otimização linear, usado para modelar e resolver programas lineares e lineares de números inteiros misturados.

Classes

NomeBreve descrição
LinearOptimizationConstraintObjeto que armazena uma restrição linear do formulário lowerBound ≤ Sum(a(i) x(i)) ≤ upperBound, em que lowerBound e upperBound são constantes, a(i) são coeficientes constantes e x(i) são variáveis (desconhecidas).
LinearOptimizationEngineO mecanismo usado para modelar e resolver um programa linear.
LinearOptimizationServiceO serviço de otimização linear, usado para modelar e resolver programas lineares e lineares de números inteiros misturados.
LinearOptimizationSolutionA solução de um programa linear.
StatusStatus da solução.
VariableTypeTipo de variáveis criadas pelo mecanismo.

LinearOptimizationConstraint

Métodos

MétodoTipo de retornoBreve descrição
setCoefficient(variableName, coefficient)LinearOptimizationConstraintDefine o coeficiente de uma variável na restrição.

LinearOptimizationEngine

Métodos

MétodoTipo de retornoBreve descrição
addConstraint(lowerBound, upperBound)LinearOptimizationConstraintAdiciona uma nova restrição linear ao modelo.
addConstraints(lowerBounds, upperBounds, variableNames, coefficients)LinearOptimizationEngineAdiciona restrições em lote ao modelo.
addVariable(name, lowerBound, upperBound)LinearOptimizationEngineAdiciona uma nova variável contínua ao modelo.
addVariable(name, lowerBound, upperBound, type)LinearOptimizationEngineAdiciona uma nova variável ao modelo.
addVariable(name, lowerBound, upperBound, type, objectiveCoefficient)LinearOptimizationEngineAdiciona uma nova variável ao modelo.
addVariables(names, lowerBounds, upperBounds, types, objectiveCoefficients)LinearOptimizationEngineAdiciona variáveis em lote ao modelo.
setMaximization()LinearOptimizationEngineDefine a direção da otimização para maximizar a função objetiva linear.
setMinimization()LinearOptimizationEngineDefine a direção de otimização para minimizar a função objetiva linear.
setObjectiveCoefficient(variableName, coefficient)LinearOptimizationEngineDefine o coeficiente de uma variável na função de objetivo linear.
solve()LinearOptimizationSolutionResolve o programa linear atual com o prazo padrão de 30 segundos.
solve(seconds)LinearOptimizationSolutionResolve o programa linear atual.

LinearOptimizationService

Propriedades

PropriedadeTipoDescrição
StatusStatusStatus do solucionador.
VariableTypeVariableTypeTipo de variáveis criadas pelo solucionador.

Métodos

MétodoTipo de retornoBreve descrição
createEngine()LinearOptimizationEngineCria um mecanismo para resolver programas lineares (possivelmente programas de números inteiros mistos).

LinearOptimizationSolution

Métodos

MétodoTipo de retornoBreve descrição
getObjectiveValue()NumberRecebe o valor da função objetivo na solução atual.
getStatus()StatusRecebe o status da solução.
getVariableValue(variableName)NumberRecebe o valor de uma variável na solução criada pela última chamada para LinearOptimizationEngine.solve().
isValid()BooleanDetermina se a solução é viável ou ideal.

Status

Propriedades

PropriedadeTipoDescrição
OPTIMALEnumStatus quando uma solução ideal foi encontrada.
FEASIBLEEnumStatus quando uma solução viável (não necessariamente ideal) foi encontrada.
INFEASIBLEEnumStatus quando o modelo atual é inviável (não tem solução).
UNBOUNDEDEnumStatus quando o modelo atual não está vinculado.
ABNORMALEnumStatus quando não foi possível encontrar uma solução por motivos inesperados.
MODEL_INVALIDEnumStatus quando o modelo é inválido.
NOT_SOLVEDEnumStatus quando LinearOptimizationEngine.solve() ainda não foi chamado.

VariableType

Propriedades

PropriedadeTipoDescrição
INTEGEREnumTipo de variável que só pode receber valores inteiros.
CONTINUOUSEnumTipo de variável que pode assumir qualquer valor real.