Optimization Service

Otimização

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

Aulas

NomeBreve descrição
LinearOptimizationConstraintObjeto que armazena uma restrição linear no formato 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 de números inteiros lineares e mistos.
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 de otimização para maximizar a função de objetivo linear.
setMinimization()LinearOptimizationEngineDefine a direção de otimização para minimizar a função de objetivo 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 de objetivo na solução atual.
getStatus()StatusExtrai 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 é possível encontrar uma solução por motivos inesperados.
MODEL_INVALIDEnumStatus quando o modelo é inválido.
NOT_SOLVEDEnumStatus quando LinearOptimizationEngine.solve() ainda não tiver sido chamado.

VariableType

Propriedades

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