Escolar Documentos
Profissional Documentos
Cultura Documentos
Verso 1.11.0
1 Introduo
Linear Program Solver (LiPS) um pacote de otimizao projetado para resolver problemas de
programao linear, inteira e de objetivo. As principais caractersticas do LiPS so:
LiPS est baseado em uma eficiente implementao do mtodo simplex modificado que resolve
uma grande escala de problemas.
LiPS fornece no somente uma resposta, mas um processo de soluo detalhado como uma sequn-
cia de tabelas simplex, de modo que elas poden ser usadas para estudar (ensinar) programao
linear.
LiPS um ambiente integrado de desenvolvimento (IDE) que fornece ao usurio as seguintes interfaces:
Modo Edio (Model Editor), Modo Soluo (Model Solver) e Anlise de Sensibilidade (Sensitivity
Analysis).
Quando se usa o formato LPX, LiPS fornece ao usurio duas opes para entrada de modelos: alg-
brica e tabular.
1
Figura 1: Interface do LiPS.
Na janela (formulrio) que aparece, os campos devem ser preeenchidos com os parmetros do problema:
o nmero de variveis, restries, funes objetivo, bem como indicar a direo de otimizao.
2
A coluna dos lados direitos das restries.
Os tipos de restries (<=, =, >=).
Os limites inferiores das variveis.
Os limites superiores das variveis.
Os tipos das variveis (CONT - Contnua, INT - Inteira).
O modelo deve estar escrito de acordo com o formato LPX, que um conjunto de expresses algbricas
e declaraes na seguinte ordem:
<funo objetivo>
<restries>
<declaraes>
<funo objetivo> - uma combinao linear das variveis, terminando com um ponto-e-vrgula
(;) e opcionalmente precedido por max ou min para indicar se o objetivo a maximao ou
minimao. A maximao o padro. Exemplo: max: x1 + x2;
<restries> - consiste de quatro partes: 1) O nome da restrio (opcional), seguido por dois
pontos; 2) A combinao linear das variveis; 3) O tipo de restrio (>=, =, <=); 4) Os valores
do lado direito. As restries devem terminar com um ponto-e-vrgula (;). Exemplo: 4*x1 - x2
<= 8;
<declaraes> - variveis podem ser declaradas como inteiras usando o especificador int, se-
guido pelos nomes de variveis separadas por vrgulas. Exemplo: int x1, x2;
Uma varivel deve comear com uma letra (maiscula ou minscula) e pode conter qualquer nmero
de letras adicionais, numerais ou caracteres.
max: x1 + x2;
row1: 4*x1 - x2 < 8;
3
row2: 2*x1 + x2 < 10;
row3: -5*x1 + 2*x2 < 2;
Para carregar os modelos criados use o menu File Open. De acorodo com os formatos de arquivos
suportados, LiPS prov trs tipo de carregamento:
Modelo MPS;
Modelo LPX em modo plano;
Modelo LPX na forma tabular.
4 Modelo de Soluo
Para executar um processo de soluo use o menu LiPS Solve Model.
O modelo resolvedor tem dois modos: bsico e avanado. No modo bsico (que adequado para apren-
dizagem do mtodo simplex) LiPS fornece no somente uma resposta, mas uma soluo detalhada do
processo como uma sequncia de tabelas simplex. A cada iterao, a sada inclui: tabela simplex cor-
respondente, varivel a ser tomada como bsica, varivel que ir sair do conjunto bsico, etc. A forma
da soluo computacional simula o processo de soluo manual do problema (uma base artificial, uma
escolha inteligente da base inicial, fraes, etc.).
Em modo avanado, LiPs fornece um conjunto de mtodos para soluo de problemas de grande escala:
um mtodo simplex primal e dual baseado na decomposio LU e um mtodo ramificado e limitado
para MILP.
4
A cada iterao do mtodo simplex correspondem as seguintes informaes:
Note: LiPS fornece a opo de exportar as solues para o EXCEL. Para fazer isto, uso o menu:
Solution Export Excel.
5
4.3 Ajustes do Mtodo Simplex
Para selecionar variantes do mtodo simplex use o menu LiPS Settings e selecione a opo desejada
a partir da lista.
Table: mosta a soluo detalhada do processo na forma de uma sequncia de tabelas simplex.
Este mtodo o ideal para propsitos de de aprendizado, mas no deve ser usado para problemas
com mais de 100 restries.
Revised Simplex (EFI): no clculo matricial, usa um efetivo procedimento de decomposio LU
com eliminao na forma inversa (estabilidade numrica alta, velocidade mdia).
Revised Simplex (PFI): no clculo matricial, usa um procedimento efetivo de decomposio LU
com a forma de multiplicao inversa (estabilidade numrica mdia, alta velocidade).
Gaussian Pivoting: este mtodo muito rpido, mas numericamente instvel.
5 Anlise de Sensibilidade
Anlise de sensibilidade - permite o estudo do comportamento do modelo quando se modifica seus
parmetros.
6
Na janela que aparece, selecione os tipos de anlise de interesse. Para fazer isto, selecione a linha
apropriada na lista da esquerda e clique na seta para adicionar o item para a lista do lado direito.
Tipos de anlise que contm a palavra Vector em seu nome implicam em ajustar o vetor estrutural
de mudanas. Para fazer isto, selecione a linha relevante e clique em "Settings...".
Na janela que aparece, deve-se: 1) entrar com os valores do vetor estrutural, e 2) se necessrio, escolher
a coluna (linha) modificada a partir da lista drop-down.
Para obter mais tipos de relatrios (a mudana da funo objetivo, os preos duais, custos de reduo)
e grficos, selecione a aba "Charts".
A partir da lista drop-down, pode-se escolher os parmetros do modelo: Variveis, Preos Duais, Custos
de Reduo, Funo Objetivo.
I) Relatrio Principal - contm informao bsica sobre o tipo selecionado de anlise. O relatrio
principal uma tabela na forma:
7
Figura 11: Relatrio principal - Anlise de Sensibilidade.
II) Relatrios adicionais - contm informao adicional sobre as mudanas da funo objetivo, variveis
estruturais, preos duais e custos reduzidos, bem como os grficos ilustrando estas mudanas. A
estrutura dos relatrios adicionais similar ao do relatrio principal.
6 Caractersticas Experimentais
Esta seo descreve algumas caractersticas do programa que no esto padronizadas para otimizao
de modelagem de sistemas. Contudo, elas podem ser muito teis em aplicaes prticas de otimizao
de modelos.
1. Criar o modelo.
2. Executar o processo de soluo.
3. Escolher o mtodo de soluo.
4. Ajustar as restries do objetivo.
1. Mtodo ponderado;
2. Mtodo lexicogrfico;
3. Mtodo de concesses sucessivas.
8
Figura 12: Escolhendo o mtodo de soluo.
6.1.3 Resultados
O resultado da soluo do programa por objetivo um relatrio que contm duas tabelas.
A segunda tabela contm os valores dos objetivos: os valores desejados versus os valores atuais, i.,
obtidos por meio de otimizao.
A estrutura pode ser visualizada exibindo o padro diferente de zero da matriz A. Esta caracterstica
implementada no mdulo "Matrix Map". Para invocar este mdulo use o menu LiPS Matrix Map.
O mdulo "Matrix Map"representa os elementos diferentes de zero por pontos codificados por cores.
Esta anlise pode revelar propriedades de modelos LP e pode sugegir boas estratgias de soluo.
9
Figura 14: Matrix Map.
7 Suporte
Atualizaes
Postar uma Resenha
Reportar um Bug
Suport ao LiPS
Se voc tem quaisquer questes, sinta-se livre para me contactar em: m.v.melnick@gmail.com. Quais-
quer comentrios e sugestes seriam teis!
10