apostila gams

of 22/22
APOSTILA DO USO DO GAMS PARA PROGRAMAÇÃO LINEAR DETERMINÍSTICA E ESTOCÁSTICA CONSIDERANDO RISCO PELO MÉTODO MOTAD Patricia Angélica Alves Marques Piracicaba Estado de São Paulo Setembro de 2002

Post on 03-Jul-2015

592 views

Category:

Documents

8 download

Embed Size (px)

TRANSCRIPT

APOSTILA DO USO DO GAMS PARA PROGRAMAO LINEARDETERMINSTICA E ESTOCSTICA CONSIDERANDO RISCO PELO MTODO MOTAD

Patricia Anglica Alves Marques

Piracicaba Estado de So Paulo Setembro de 2002

SUMRIOpgina

1 CARACTERSTICAS DO GAMS .............................................................................................. 3 2 UTILIZANDO O GAMS ............................................................................................................. 4 2.1 ESTRUTURA DE UM MODELO DE GAMS......................................................................... 6 EXEMPLO 1 ................................................................................................................................... 6 EXEMPLO 2 ................................................................................................................................. 12

1 CARACTERSTICAS DO GAMS O GAMS um programa que resolve modelos de programao linear, no linear, inteira e inteira mista utilizando teoria de banco de dados e relaes com programao matemtica e tenta fundir estas idias para atender as necessidades dos modelos estratgicos. Os princpios seguintes so usados nos projetos: Algoritmo: Algoritmo uma seqncia lgica e geral de regras e operaes bem definidas cada passo a ser realizado pelo modelo para otimizao com numero finito de etapas. Mtodos: permite a soluo de problemas de programao linear, no linear, mista, inteira e outras, sem requerer mudanas em modelos existentes. O problema de otimizao independentemente dos dados que usa. Esta separao de lgica e dados de um problema, permite que esta seja ser aumentado em tamanho sem causar um aumento na complexidade da representao. Isto se d pela representao matricial utilizada no GAMS, uma forma que pode ser lida facilmente por pessoas e atravs de computadores. O sistema de GAMS projetado de forma que modelos podem ser resolvidos qualquer tipo de computador. Um modelo desenvolvido em um computador pessoal pequeno pode ser resolvido depois em qualquer outro. Uma pessoa pode desenvolver um modelo e depois utilizlo para outros fins alternando dados. No necessrio o uso de nenhum editor especial, o GAMS oferece uma arquitetura aberta no qual cada usurio pode usar um processador de texto ou digitar diretamente no programa. Os arquivos criados no GAMS so salvos com a extenso *.GMS e os arquivos processados no GAMS, aqueles que trazem os resultados, so salvos com a extenso *.LST.

2 UTILIZANDO O GAMS

Quando pretende-se resolver um problema de programao linear no GAMS, necessrio criar-se o modelo deste problema e inseri-lo corretamente. Para inserir um modelo no GAMS deve-se primeiro conhecer a tabela de inequaes e de dados do modelo, os quais sero inseridos de forma algbrica respeitando os seguintes smbolos: =L= =G= =E= SUM Onde : A to Z alfabeto a to z alfabeto 0 to 9 nmeros * asterisco funo multiplicador @ marca um ponto ; ponto e vrgula (semicolon) encerra linhas de comando - menos ( ) parnteses $ dollar, marca uma comparao + mais Alguns caracteres so de uso exclusivo do GAMS no podendo serem utilizados no modelo com qualquer outra funo. O nico lugar onde qualquer carter legal em um comentrio, o qual no considerado como comando pelo GAMS. A pontuao no deve ser usada no modelo, mas pode ser usado livremente em comentrios. Os principais caracteres exclusivos so listados a seguir:Abort And Display Ge Loop Models Option Parameters Scalars Acronym Assign Eps no table na options Positive Set table binary Eq inf maximizing Ne or prod Sets Alias Card Equation Integer minimizing negative Ord sameas smax Else Putpage For until Semicont then while semiint free Sos1 Using Sos2 variable files solve system xor if All Diag X Le Model Not File Scalar Repeat

menor ou igual maior ou igual igual soma

No GAMS para definir o domnio de uma varivel, isto , se ela apresentava valores positivos, negativos ou livre apresentando tanto valores positivos como negativos, utiliza-se das seguintes atribuies na montagem do modelo: POSITIVE VARIABLE 0 at NEGATIVE VARIABLE - at 0 FREE VARIABLE (default) - at BINARY VARIABLE 0 or 1 INTEGER VARIABLE 0,1,...., 100 As inequaes utilizadas no GAMS apresentam em sua estrutura dois lados denominados LHS e RHS. Quando na soluo tima LHS=RHS, chamado de restrio atuante, indica que utilizou-se todo o recurso disponvel naquela restrio. restrio no-atuante. LHS (left hand side) onde esto as variveis endgenas, aquelas que so alteradas durante a otimizao, por exemplo a quantidade de rea a ser plantada, entra como incgnita e depois durante a otimizao assumido o seu valor na resoluo. RHS (right hand side) onde esto as variveis exgenas representadas pela constante Quando diferentes chamado de

Exemplo:

9X1 + 3X 2 + 5X3 500LHS RHS

Pode-se dizer ento que uma restrio atuante aquela que apresenta folga nula utilizando todo recurso disponvel, o que implica em preo sombra, isto , o quanto alteraria a soluo tima com o acrscimo de uma unidade no RHS da inequao. E uma restrio no atuante , apresenta folga e no possui preo sombra. No GAMS so permitidas linhas em branco, porm ao final de comando necessrio colocar ; (ponto e vrgula), caso contrrio o programa no entender o comando e no aceitar o modelo. Qualquer linha que comece com um asterisco (*) desconsiderada pelo compilador do GAMS. Os nomes dados no modelo devem comear com uma letra e ter no mximo 9 letras.

2.1 ESTRUTURA DE UM MODELO DE GAMS

Para aprendermos a utilizar o GAMS sero dados 2 exemplos, onde a complexidade ser incrementada para cada modelo.

EXEMPLO 1 Para aprendermos com o inserir e rodar um modelo no GAMS, utilizaremos o exemplo da apostila onde um agricultor dispe de 150 ha de terra e uma vazo de 97 L s-1 equivalente 260 dm.ha. $ 490.000,00.3 -1

Pretende-se neste exemplo cultivar as culturas A e B, tendo disponveis No ms de agosto ocorre a maior demanda de gua pelas culturas, sendo

1.600 m hora para a cultura A e 2.000 m3 hora-1 para a cultura B, equivalentes a 1,6 dm.ha e 2,0 dm.ha respectivamente. Determinar a ocupao tima da rea, utilizando as informaes contidas na tabela abaixo: Cultura A B Rendimento esperado( t ha-1) 5 6 Preo do produto ($ t-1) 1.300 1.200 Custo de produo ($ ha-1) 3.000 3.500 Receita lquida ($ ha-1) 3.500 3.700

Como resolver? Primeiro deve-se transformar-se estas informaes em inequaes apropriadas para soluo em programao linear, resultando em: Deseja-se maximizar o lucro, ento a funo a ser maximizada : Max Z = 3.500 X1 + 3.700 X2 Sujeito as restries: Terra) X1 + X2 150 Agua) 1,6 X1 + 2,0 X2 260 Capital) 3000 X1 + 3500 X2 490000 X1 0 e X2 0 Onde X1 = rea cultivada com A em ha; X2 = rea cultivada com B em ha; Z= receita lquida total em $.

Para identificar as variveis envolvidas no modelo o GAMS utiliza-se ndices, no exemplo tinha-se i culturas, sendo i = culturas 1,2 Baseado nestes ndices os valores referentes so indexados no modelo: R(I) = receita lquida da cultura i em $ ha-1 C(I) = consumo de gua pela cultura i em dm ha-1 P(I) = custo de produo da cultura i em $ ha-1 As variveis de deciso tambm so indexadas como: X(I) = quantia rea cultivada com a cultura i em ha Note que este exemplo simples revela algumas prticas consideradas bons hbitos. Primeiro, todas as entidades do modelo so identificado (e agrupadas) atravs de tipo. Segundo, utilizamos smbolos diferentes para cada grupo. Terceiro, so especificadas as unidades de todas as entidades. Para montar a estrutura do modelo, deve-se declarar no GAMS quais so os fatores que ele usar, para isto determina-se o SET (conjunto de informaes sobre ndices e dados do modelo) logo no incio do modelo, para nosso exemplo ser informado para o GAMS que teremos 2 culturas na tomada de deciso sendo uma denominada A e a outra denominada B: SET i culturas /A,B/; Neste exemplo utilizaremos a entrada de dados por lista, onde declara-se o parmetro inicialmente e depois seus valores correspondentes: R(I) receita lquida da cultura i em $ ha-1 / A 3500 B 3700 / C(I) consumo de gua pela cultura i em dm ha-1 / A 1.6 B 2.0 / P(I) custo de produo da cultura i em $ ha-1 / A 3000 B 3500 /;

Esta declarao tem vrios efeitos. Ela declara a existncia de dois parmetros, lhes d os nomes A, C e P, e declara o seu plano de ao i. (determinao sobre a qual a equao definida, no exemplo sobre as duas culturas). A lista de elementos e os valores de parmetro respectivos devem ser includos por partes, onde os elementos devem ser separados por vrgula ou entrarem em linhas separadas, como no exemplo. Esta declarao ser usada no GAMS para a criao das equaes de lucro e as restries. Antes de iniciar a declarao das equaes deve-se declarar as variveis usadas nestas equaes, sendo: VARIABLES Z lucro X(I) area cultivada As equaes so declaradas utilizando a simbologia do GAMS vista anteriormente e os parmetros j definidos, elas so representadas de forma matricial e indexada quando necessrio. Para nosso exemplo: EQUATIONS LUCRO TERRA AGUA CAPITAL; LUCRO .. Z =E= SUM(I,(R(I)* X(I))); TERRA .. SUM(I,X(I)) =L= 150; AGUA .. SUM(I,(C(I)*X(I))) =L= 260; CAPITAL .. SUM(I,(P(I)*X(I))) =L= 490000; Aps inseridas todas as informaes necessrias, necessrio nomear o arquivo e selecionar o solver para o modelo sendo os mais usados: PL para programao linear NLP para programao no linear MIP para programao mista, que envolve inteiros e reais

No quadro a seguir tem-se a entrada real de dados deste exemplo no GAMS, onde o modelo nomeado como ex1 e utilizado o solver PL.

SET I culturas /A,B/; PARAMETERS R(I) receita liquida da cultura i / A 3500 B 3700 / C(I) consumo de agua pela cultura i / A 1.6 B 2.0 / P(I) custo de producao da cultura i / A 3000 B 3500 /; VARIABLES Z lucro X(I) area cultivada; EQUATIONS LUCRO TERRA AGUA CAPITAL; LUCRO .. Z =E= SUM(I,(R(I)* X(I))); TERRA .. SUM(I,X(I)) =L= 150; AGUA .. SUM(I,(C(I)*X(I))) =L= 260; CAPITAL .. SUM(I,(P(I)*X(I))) =L= 490000; MODEL EX1 /ALL/; SOLVE EX1 USING LP MAXIMIZING Z;

No quadro seguinte tem-se a sada deste modelo EX1 no GAMS, neste texto repetido a entrada de dados, formuladas as equaes com os parmetros fornecidos, e realizado a otimizao requerida. Os resultados so mostrados como este retirado do texto de sada, ele indica que utilizou-se toda a terra disponvel (150 ha) e o custo marginal dela de $ 2.700, 00; o que significa que a cada unidade de terra que forneamos a mais representa um aumento do lucro em $ 2.700,00 o que indica uma restrio atuante. O mesmo ocorre com a gua com um custo marginal de $ 500,00. J o capital no foi uma restrio atuante foi utilizou-se $475.000,00 deixando uma folga de $15.000,00, isto indica que se o valor do capital fosse superior a esta no alteraria a resoluo, portanto no apresenta custo marginal (ou preo sombra).LOWER LEVEL UPPER MARGINAL EQU LUCRO . . . 1.000 ---- EQU TERRA -INF 150.000 150.000 2700.000 ---- EQU AGUA -INF 260.000 260.000 500.000 ---- EQU CAPITAL -INF 4.7500E+5 4.9000E+5 .

A soluo tima encontrada foi de 100 ha para a cultura A e 50 ha para a cultura B.

GAMS 2.50D Windows NT/95/98 09/09/02 12:00:50 PAGE General Algebraic Modeling System Compilation 1 SET 2 I culturas /A,B/; 3 4 PARAMETERS 5 R(I) receita liquida da cultura i 6 / A 3500 7 B 3700 / 8 9 C(I) consumo de agua pela cultura i 10 / A 1.6 11 B 2.0 / 12 13 P(I) custo de producao da cultura i 14 / A 3000 15 B 3500 /; 16 17 18 VARIABLES 19 Z lucro 20 X(I) area cultivada; 21 22 EQUATIONS 23 LUCRO 24 TERRA 25 AGUA 26 CAPITAL; 27 28 LUCRO .. Z =E= SUM(I,(R(I)* X(I))); 29 TERRA .. SUM(I,X(I)) =L= 150; 30 AGUA .. SUM(I,(C(I)*X(I))) =L= 260; 31 CAPITAL .. SUM(I,(P(I)*X(I))) =L= 490000; 32 MODEL EX1 /ALL/; 33 34 SOLVE EX1 USING LP MAXIMIZING Z; COMPILATION TIME = 0.000 SECONDS 0.7 Mb WIN-19-114

1

---- LUCRO =E= LUCRO.. Z - 3500*X(A) - 3700*X(B) =E= 0 ; (LHS = 0) ---- TERRA =L= TERRA.. X(A) + X(B) =L= 150 ; (LHS = 0) ---- AGUA =L= AGUA.. 1.6*X(A) + 2*X(B) =L= 260 ; (LHS = 0) ---- CAPITAL =L= CAPITAL.. 3000*X(A) + 3500*X(B) =L= 490000 ; (LHS = 0)

---- Z lucro Z (.LO, .L, .UP = -INF, 0, +INF) 1 LUCRO ---- X area cultivada X(A) (.LO, .L, .UP = -INF, 0, +INF) -3500 LUCRO 1 TERRA 1.6 AGUA 3000 CAPITAL X(B) (.LO, .L, .UP = -INF, 0, +INF) -3700 LUCRO 1 TERRA 2 AGUA 3500 CAPITAL MODEL STATISTICS BLOCKS OF EQUATIONS BLOCKS OF VARIABLES NON ZERO ELEMENTS GENERATION TIME EXECUTION TIME SOLVE MODEL EX1 TYPE LP SOLVER XA = = 4 2 9 SINGLE EQUATIONS SINGLE VARIABLES 4 3 WIN-19-114 WIN-19-114

0.000 SECONDS 1.4 Mb 0.000 SECONDS 1.4 Mb

SUMMARY OBJECTIVE Z DIRECTION MAXIMIZE FROM LINE 36

**** SOLVER STATUS 1 NORMAL COMPLETION **** MODEL STATUS 1 OPTIMAL **** OBJECTIVE VALUE 535000.0000 RESOURCE USAGE, LIMIT ITERATION COUNT, LIMIT 0.050 1000.000 0 10000

LOWER LEVEL UPPER MARGINAL EQU LUCRO . . . 1.000 ---- EQU TERRA -INF 150.000 150.000 2700.000 ---- EQU AGUA -INF 260.000 260.000 500.000 ---- EQU CAPITAL -INF 4.7500E+5 4.9000E+5 . ---- VAR Z LOWER LEVEL UPPER -INF 5.3500E+5 +INF MARGINAL .

---- VAR X area cultivada LOWER LEVEL UPPER A -INF 100.000 +INF B -INF 50.000 +INF

MARGINAL . .

EXEMPLO 2 Faremos agora uma aplicao considerando risco pelo mtodo MOTAD apresentada na apostila. Neste exemplo utilizaremos entrada de dados por linhas e por tabelas e tambm 2 ndices, sendo portanto um modelo mais complexo. Trata-se da determinao do plano de cultivo timo maximizando o lucro. As restries so quanto a disponibilidade de terra, horas de trabalho e rotao de cultura. Sendo inserido posteriormente o risco como restrio. Tal projeto dispe de 4 atividades, 200 ha e 10.000 horas de trabalho. As margens brutas das 4 atividades em 6 anos so: ano 1 2 3 4 5 6 Mdia Atividades 1 292 179 114 247 426 259 253 2 -128 560 648 544 182 850 443 3 420 187 366 249 322 159 284 4 579 639 379 924 5 569 516

Tendo como restries: restrio terra Horas de trabalho rotao Atividade 1 1 25 -1 2 1 36 1 3 1 27 -1 4 1 87 1 Mximo 200 10.000 0

Montando-se o problema determinista, isto , transformando estas informaes em inequaes apropriadas para soluo em programao linear sem considerar o risco, resulta: Deseja-se maximizar o lucro, ento a funo a ser maximizada : Max Z = 253X1 + 443X2 + 284X3 + 516X4 Sujeito as restries: TERRA) X1 + X2 + X3 + X4 200 TRABALHO) 25X1 + 36X2 + 27X3 + 87X4 10000 ROTACAO) -1X1 + 1X2 1X3 + 1 X4 0 Sendo o ndice J referente as atividades, tendo-se ento: M(J) = margem bruta mdia da atividade J em $ ha-1 T(J) horas de trabalho da atividade J em horas ha-1

C(J) rotao da atividade J sem unidade As variveis de deciso tambm so indexadas como: X(J) = quantia rea utilizada com a atividade J Nos quadros seguintes so mostrados ao modelo inserido e a resoluo do modelo, obtendo como soluo tima a utilizao ode 27,45 ha de X2, 100 ha de X3 e 72,55 ha de X4 obtende-se uma margem bruta esperada de $ 77.996,00.SETS J atividades /1*4/ PARAMETERS M(J) margem bruta media /1 253 2 443 3 284 4 516/ T(J) horas de trabalho /1 25 2 36 3 27 4 87/ C(J) rotacao das culturas /1 -1 2 1 3 -1 4 1/; VARIABLES X(J) quantidade produto j Z lucro total; POSITIVE VARIABLE X; EQUATIONS MARGEMBRUTA AREA ROTACAO TRABALHO ; MARGEMBRUTA .. Z =E= SUM(J, M(J)*X(J)); AREA .. SUM(J, X(J)) =L= 200; ROTACAO..SUM(J,(C(J)*X(J))) =L= 0; TRABALHO .. SUM(J,(T(J)*X(J))) =L= 10000; MODEL EXE2 /ALL/; SOLVE EXE2 USING LP MAXIMIZING Z;

GAMS 2.50D Windows NT/95/98 09/09/02 13:38:54 PAGE General Algebraic Modeling System Compilation 1 SETS 2 J atividades /1*4/ 3 I anos /1*6/; 4 5 PARAMETERS 6 7 M(J) margem bruta media 8 /1 253 9 2 443 10 3 284 11 4 516/ 12 13 T(J) horas de trabalho 14 /1 25 15 2 36 16 3 27 17 4 87/ 18 19 C(J) rotacao das culturas 20 /1 -1 21 2 1 22 3 -1 23 4 1/; 24 25 26 VARIABLES 27 X(J) quantidade produto j 28 Z lucro total; 29 30 POSITIVE VARIABLE X; 31 32 EQUATIONS 33 MARGEMBRUTA 34 AREA 35 ROTACAO 36 TRABALHO ; 37 38 MARGEMBRUTA .. Z =E= SUM(J, M(J)*X(J)); 39 AREA .. SUM(J, X(J)) =L= 200; 40 ROTACAO..SUM(J,(C(J)*X(J))) =L= 0; 41 TRABALHO .. SUM(J,(T(J)*X(J))) =L= 10000; 42 43 44 MODEL EXE2 /ALL/; 45 56 SOLVE EXE2 USING LP MAXIMIZING Z; COMPILATION TIME = 0.000 SECONDS 0.7 Mb WIN-19-114

1

---- MARGEMBRUTA =E= MARGEMBRUTA.. - 253*X(1) - 443*X(2) - 284*X(3) - 516*X(4) + Z =E= 0 ; (LHS = 0) ---- AREA =L= AREA.. X(1) + X(2) + X(3) + X(4) =L= 200 ; (LHS = 0) ---- ROTACAO =L= ROTACAO.. - X(1) + X(2) - X(3) + X(4) =L= 0 ; (LHS = 0) ---- TRABALHO =L= TRABALHO.. 25*X(1) + 36*X(2) + 27*X(3) + 87*X(4) =L= 10000 ; (LHS = 0) ---- X quantidade produto j X(1) -253 1 -1 25 X(2) -443 1 1 36 X(3) -284 1 -1 27 (.LO, .L, .UP = 0, 0, +INF) MARGEMBRUTA AREA ROTACAO TRABALHO (.LO, .L, .UP = 0, 0, +INF) MARGEMBRUTA AREA ROTACAO TRABALHO (.LO, .L, .UP = 0, 0, +INF) MARGEMBRUTA AREA ROTACAO TRABALHO

REMAINING ENTRY SKIPPED ---- Z lucro total Z (.LO, .L, .UP = -INF, 0, +INF) 1 MARGEMBRUTA MODEL STATISTICS BLOCKS OF EQUATIONS BLOCKS OF VARIABLES NON ZERO ELEMENTS GENERATION TIME = 4 2 17 SINGLE EQUATIONS SINGLE VARIABLES 1.4 Mb 4 5 WIN-19-114

0.000 SECONDS

EXECUTION TIME

=

0.000 SECONDS

1.4 Mb

WIN-19-114

SOLVE SUMMARY MODEL EXE2 OBJECTIVE Z TYPE LP DIRECTION MAXIMIZE SOLVER XA FROM LINE 56

**** SOLVER STATUS 1 NORMAL COMPLETION **** MODEL STATUS 1 OPTIMAL **** OBJECTIVE VALUE 77996.0784 RESOURCE USAGE, LIMIT ITERATION COUNT, LIMIT 0.000 1000.000 3 10000 LOWER ---- EQU MARGEMBRU~ ---- EQU AREA ---- EQU ROTACAO ---- EQU TRABALHO ---- VAR X quantidade produto j 1 2 3 4 LOWER LEVEL . . . 27.451 . 100.000 . 72.549 UPPER +INF +INF +INF +INF MARGINAL -28.137 . . . MARGINAL . LEVEL UPPER MARGINAL

. . . 1.000 -INF 200.000 200.000 318.412 -INF . . 73.059 -INF 10000.000 10000.000 1.431

---- VAR Z Z lucro total

LOWER LEVEL UPPER -INF 77996.078 +INF NONOPT

**** REPORT SUMMARY : 0 0 INFEASIBLE 0 UNBOUNDED EXECUTION TIME =

0.000 SECONDS

0.7 Mb

WIN-19-114

**** FILE SUMMARY INPUT C:\RASCUNHO7\PATRICIA\2002\EXERCICIOS PL\GAMS\EXERISCO APOSTILA.GMS OUTPUT C:\RASCUNHO7\PATRICIA\2002\EXERCICIOS PL\GAMS\EXERISCO APOSTILA.LST

Para incluir risco neste exemplo utilizaremos a entrada de dados por tabelas, onde formase um par ordenado entrando-se primeiramente o ndice que representa as colunas e como segundo fator o ndice que representa as linhas. Outra modificao necessria para utilizao deste mtodo, a antiga funo objetivo das margens brutas torna-se agora uma restrio a ser parametrizada e a nova funo objetivo minimizar os desvios anuais, para tanto tem-se a novas inequaes: Deseja-se minimizar o desvio , ento a funo : Min Y = D1 + D2 + D3 + D4 + D5 + D6 Sujeito as restries: MARGEMBRUTA) 253X1 + 443X2 + 284X3 + 516X4 = TERRA) X1 + X2 + X3 + X4 200 TRABALHO) 25X1 + 36X2 + 27X3 + 87X4 10000 ROTACAO) -1X1 + 1X2 1X3 + 1 X4 0

Sendo o ndice J referente as atividades e utilizando agora o ndice I para os anos, tem-se ento: M(J) = margem bruta mdia da atividade J em $ ha-1 T(J) horas de trabalho da atividade J em horas ha-1 C(J) rotao da atividade J sem unidade TABLE R(I,J) margem bruta simulada das culturas em $ ha-1 As variveis de deciso tambm so indexadas como: X(J) = quantia rea utilizada com a atividade J em ha D(I) = desvios dos anos I em $ ha-1 Estes desvios so a diferena da margem bruta do ano I e a mdia de margem bruta para cada ano e para cada atividade. Note-se que agora obteremos duas respostas, sendo o desvio mnimo e a distribuio das atividades para este desvio, em funo da margem bruta esperada () podendose assim simular para diversas margens brutas esperadas () e obtermos um grfico com a margem bruta esperada versus o desvio anual como mostrado a seguir.80000 margem bruta esperada em $ ha-

75000

70000

65000

60000

55000

50000 0 5000 10000 15000 20000 25000 30000 35000 40000 45000 desvios anuais em $ ha-

Nos quadros seguintes so mostrados ao modelo inserido e a resoluo do modelo, obtendo como soluo tima para a margem bruta esperada de $62.770,00 a utilizao de 72,26 ha de X1, 26,80 ha de X2, 83,92 ha de X3 e 17,02 ha de X4 obtende-se um desvio anual de $ 8.237,70. Note-se que quando utilizou-se a minimizao na linha final de comando pediu-se para minimizing Y using LP. importante sempre observar-se Qua l o objetivo da otimizao e atentar-se aos solvers e procedimentos utilizados.

SETS J atividades /1*4/ I anos /1*6/; PARAMETERS M(J) margem bruta media /1 253 2 443 3 284 4 516/ T(J) horas de trabalho /1 25 2 36 3 27 4 87/ C(J) rotacao das culturas /1 -1 2 1 3 -1 4 1/; TABLE R(I,J) margem bruta simulada das culturas 1 2 3 4 1 39 -570 136 63 2 -74 117 -97 123 3 -138 205 82 -137 4 -6 101 -35 408 5 173 -261 38 -510 6 6 408 -124 53; VARIABLES X(J) quantidade produto j D1(I) desvios anuais negativos D2(I) desvios anuais positivos Y desviototal; POSITIVE VARIABLE X,D1; NEGATIVE VARIABLE D2; EQUATIONS DESVIOT MARGEMBRUTA AREA ROTACAO TRABALHO DESVIO(I) ; DESVIOT .. Y =E= SUM(I,D1(I)); MARGEMBRUTA .. SUM(J, M(J)*X(J)) =E= 62770; AREA .. SUM(J, X(J)) =L= 200; ROTACAO..SUM(J,(C(J)*X(J))) =L= 0; TRABALHO .. SUM(J,(T(J)*X(J))) =L= 10000; DESVIO(I)..SUM(J,(R(I,J)*X(J)))+D1(I) + D2(I) =G= 0; MODEL EXE2 /ALL/; SOLVE EXE2 USING LP MINIMIZING Y;

GAMS 2.50D Windows NT/95/98 09/09/02 16:27:36 PAGE General Algebraic Modeling System Compilation 1 SETS 2 J atividades /1*4/ 3 I anos /1*6/; 4 5 PARAMETERS 6 7 M(J) margem bruta media 8 /1 253 9 2 443 10 3 284 11 4 516/ 12 13 T(J) horas de trabalho 14 /1 25 15 2 36 16 3 27 17 4 87/ 18 19 C(J) rotacao das culturas 20 /1 -1 21 2 1 22 3 -1 23 4 1/; 24 25 TABLE R(I,J) margem bruta simulada das culturas 26 1 2 3 4 27 1 39 -570 136 63 28 2 -74 117 -97 123 29 3 -138 205 82 -137 30 4 -6 101 -35 408 31 5 173 -261 38 -510 32 6 6 408 -124 53; 33 34 VARIABLES 35 X(J) quantidade produto j 36 D1(I) desvios anuais negativos 37 D2(I) desvios anuais positivos 38 Y desviototal; 39 40 POSITIVE VARIABLE X,D1; 41 NEGATIVE VARIABLE D2; 42 43 EQUATIONS 44 DESVIOT 45 MARGEMBRUTA 46 AREA 47 ROTACAO 48 TRABALHO 49 DESVIO(I) ; 50 51 DESVIOT .. Y =E= SUM(I,D1(I)); 52 MARGEMBRUTA .. SUM(J, M(J)*X(J)) =E= 62770;

1

53 54 55 56 57 58 59 60 61

AREA .. SUM(J, X(J)) =L= 200; ROTACAO..SUM(J,(C(J)*X(J))) =L= 0; TRABALHO .. SUM(J,(T(J)*X(J))) =L= 10000; DESVIO(I)..SUM(J,(R(I,J)*X(J)))+D1(I) + D2(I) =G= 0; MODEL EXE2 /ALL/; SOLVE EXE2 USING LP MINIMIZING Y; = 0.000 SECONDS 0.7 Mb WIN-19-114

COMPILATION TIME

---- DESVIOT =E= DESVIOT.. - D1(1) - D1(2) - D1(3) - D1(4) - D1(5) - D1(6) + Y =E= 0 ; (LHS = 0) ---- MARGEMBRUTA =E= MARGEMBRUTA.. 253*X(1) + 443*X(2) + 284*X(3) + 516*X(4) =E= 62770 ; (LHS = 0, INFES = 62770 ***) ---- AREA =L= AREA.. X(1) + X(2) + X(3) + X(4) =L= 200 ; (LHS = 0) ---- ROTACAO =L= ROTACAO.. - X(1) + X(2) - X(3) + X(4) =L= 0 ; (LHS = 0) ---- TRABALHO =L= TRABALHO.. 25*X(1) + 36*X(2) + 27*X(3) + 87*X(4) =L= 10000 ; (LHS = 0) ---- DESVIO =G= DESVIO(1).. 39*X(1) - 570*X(2) + 136*X(3) + 63*X(4) + D1(1) + D2(1) =G= 0 ; (LHS = 0) DESVIO(2).. - 74*X(1) + 117*X(2) - 97*X(3) + 123*X(4) + D1(2) + D2(2) =G= 0 ; (LHS = 0) DESVIO(3).. - 138*X(1) + 205*X(2) + 82*X(3) - 137*X(4) + D1(3) + D2(3) =G= 0 ; (LHS = 0) REMAINING 3 ENTRIES SKIPPED ---- X quantidade produto j X(1) (.LO, .L, .UP = 0, 0, +INF) 253 MARGEMBRUTA 1 AREA -1 ROTACAO 25 TRABALHO 39 DESVIO(1) -74 DESVIO(2) -138 DESVIO(3) -6 DESVIO(4) 173 DESVIO(5) 6 DESVIO(6)

X(2) 443 1 1 36 -570 117 205 101 -261 408 (.LO, .L, .UP = 0, 0, +INF) MARGEMBRUTA AREA ROTACAO TRABALHO DESVIO(1) DESVIO(2) DESVIO(3) DESVIO(4) DESVIO(5) DESVIO(6)

REMAINING ENTRY SKIPPED ---- D1 desvios anuais negativos D1(1) (.LO, .L, .UP = 0, 0, +INF) -1 DESVIOT 1 DESVIO(1) D1(2) -1 1 (.LO, .L, .UP = 0, 0, +INF) DESVIOT DESVIO(2)

REMAINING 4 ENTRIES SKIPPED ---- D2 desvios anuais positivos D2(1) (.LO, .L, .UP = -INF, 0, 0) 1 DESVIO(1) D2(2) 1 (.LO, .L, .UP = -INF, 0, 0) DESVIO(2)

REMAINING 4 ENTRIES SKIPPED ---- Y desviototal Y (.LO, .L, .UP = -INF, 0, +INF) 1 DESVIOT MODEL STATISTICS BLOCKS OF EQUATIONS BLOCKS OF VARIABLES NON ZERO ELEMENTS GENERATION TIME EXECUTION TIME = = 6 4 59 SINGLE EQUATIONS SINGLE VARIABLES 11 17 WIN-19-114 WIN-19-114

0.000 SECONDS 1.4 Mb 0.000 SECONDS 1.4 Mb

SOLVE SUMMARY MODEL EXE2 OBJECTIVE Y TYPE LP DIRECTION MINIMIZE SOLVER XA FROM LINE 61

**** SOLVER STATUS 1 NORMAL COMPLETION **** MODEL STATUS 1 OPTIMAL **** OBJECTIVE VALUE 8232.7068 RESOURCE USAGE, LIMIT ITERATION COUNT, LIMIT ---- EQU DESVIOT ---- EQU MARGEMBRU~ ---- EQU AREA ---- EQU ROTACAO ---- EQU TRABALHO ---- EQU DESVIO LOWER LEVEL 1 . . 2 . . 3 . . 4 . 6324.202 5 . . 6 . . ---- VAR X LOWER 1 . 2 . 3 . 4 . 0.060 1000.000 7 10000 LOWER LEVEL UPPER MARGINAL . . . 1.000 62770.000 62770.000 62770.000 0.131 -INF 199.961 200.000 . -INF -112.169 . . -INF 6521.351 10000.000 . UPPER +INF +INF +INF +INF +INF +INF MARGINAL 0.221 1.000 0.202 . 0.347 EPS

quantidade produto j LEVEL UPPER 72.484 +INF 26.792 +INF 83.581 +INF 17.104 +INF

MARGINAL . . . . .

LOWER LEVEL UPPER MARGINAL ---- VAR Y -INF 8232.707 +INF Y desviototal **** REPORT SUMMARY : 5 0 INFEASIBLE 0 UNBOUNDED EXECUTION TIME =

NONOPT ( NOPT)

0.000 SECONDS

0.7 Mb

WIN-19-114