





































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Trata-se de um tcc sobre o problema de programação linear.
Tipologia: Teses (TCC)
1 / 45
Esta página não é visível na pré-visualização
Não perca as partes importantes!






































O Problema de Programa¸c˜ao Linear
Programa¸c˜ao Linear
Jos´e Lucyan Mendon¸ca de Almeida
Trabalho de Conclus˜ao de Curso submetido ao Colegiado do Curso de Gradua¸c˜ao em Matem´atica da Universidade Federal de Alagoas, como requisito parcial para obten¸c˜ao do t´ıtulo de Licenciado em Matem´atica.
Prof. Dimas Mart´ınez Morera
Prof. Ad´an Jos´e Corcho Fern´andez
Profa. Luana Giarola Contiero
Acredita-se que o surgimento da Programa¸c˜ao Linear ocorreu no per´ıodo da segunda guerra mundial, onde diversos problemas t´aticos e estrat´egicos de origem militares foram resolvidos. Nessa ´epoca, foram realizadas diversas pesquisas relacionadas `a procura de t´ecnicas para usos administrativos no estabelecimento de programas ´otimos e levanta- mento de alternativas economicamente vi´aveis.
No entanto, o que havia de mais avan¸cado dentro do campo de pesquisa, foram os conceito formulados por Von Neumann em, 1928, sobre a aplica¸c˜ao do teorema do m´ınimo-m´aximo aos jogos de estrat´egias. Posteriormente em 1941, Hitchcook desen- volveu o problema do transporte, que tamb´em foi desenvolvido independentemente por Koopmans em 1947. Por fim o problema de dieta formulado por Stigler em 1945 [1].
Em sua pesquisa em 1945, George Stigler formulou um problema de determina¸c˜ao de uma dieta composta por 77 alimentos distintos contendo nove nutrientes com o menor custo poss´ıvel. Descobriu que uma dieta perfeita seria composta apenas por farinha de trigo, repolho e feij˜ao branco seco com o m´ınimo de 39,93 d´olares para o ano de 1939. J´a com os pre¸cos calculados em 1944, o feij˜ao deve ser substitu´ıdo por f´ıgado de porco para que a dieta custasse apenas 59,88 d´olares naquele ano.
Estes problemas precursores tratavam sempre de otimizar uma fun¸c˜ao linear acom- panhada por restri¸c˜oes lineares. Em 1947, um grupo de pesquisadores formado por George B. Dantzig, Marshall Wood e colaboradores investigou t´ecnicas matem´aticas para problemas militares de programa¸c˜ao.
Percebeu-se que, de modo semelhante, diversos problemas do cotidiano poderiam ser solucionados pelos m´etodos da programa¸c˜ao linear. Inicialmente, grandes organiza¸c˜oes como companhias de petr´oleo adotaram o novo conjunto de metodologias para resolu¸c˜ao de seus problemas de decis˜ao, avan¸cando no planejamento da produ¸c˜ao em larga escala atrav´es da programa¸c˜ao linear que, por sua vez, investiram em novos processos. Peque- nas empresas que n˜ao podiam investir em pesquisa tamb´em se beneficiaram do uso da programa¸c˜ao linear.
dodecaedro com inicio e fim numa dada cidade sem repetir uma visita [2].
A importˆancia deste problema ´e caracterizada por uma grande aplica¸c˜ao pr´atica com in´umeras rela¸c˜oes com outros modelos e pela dificuldade de se encontrar uma solu¸c˜ao exa- ta. Pela sua importˆancia, ao longo da hist´oria, v´arios pesquisadores criaram formula¸c˜oes para esse problema.
No in´ıcio deste cap´ıtulo, citamos o problema da dieta formulado por George Stigler. Na ´epoca, Stigler descobriu quais seriam os alimentos para uma dieta perfeita a um custo m´ınimo.
Este problema cl´assico pode ser associado a uma dieta para uma redu¸c˜ao cal´orica, em que, as quantidades de certos alimentos que devem ser ingeridos diariamente, de modo que alguns requisitos nutricionais sejam rigorosamente obedecidos a um custo m´ınimo [3].
O objetivo deste problema ´e determinar a quantidade de cada alimento na dieta para que o custo total das quantidades dos alimentos ingeridos seja m´ınimo, sabendo o custo unit´ario e a quantidade m´ınima de vitamina que deve ser obtida de cada alimento.
Neste cap´ıtulo, apresentamos como transformar problemas reais em modelos de pro- grama¸c˜ao linear e, mostraremos alguns exemplos de modelagem.
Em geral, um problema de programa¸c˜ao linear ´e disposto da seguinte maneira:
Maximizar ou minimizar uma fun¸c˜ao f (x) = c 1 x 1 + c 2 x 2 + · · · + cnxn, satisfazendo `as seguintes restri¸c˜oes:
a 11 x 1 + a 12 x 2 + · · · + a 1 nxn ≤ b 1 a 21 x 1 + a 22 x 2 + · · · + a 2 nxn ≤ b 2 .. .
am 1 x 1 + am 2 x 2 + · · · + amnxn ≤ bm
Em diversos problemas, al´em destas restri¸c˜oes, ´e necess´ario que se tenha condi¸c˜oes de n˜ao-negatividade: x 1 ≥ 0 , x 2 ≥ 0 , x 3 ≥ 0 ,... , xn ≥ 0, devido `a possibilidade do problema admitir apenas vari´aveis n˜ao-negativas.
A fun¸c˜ao f (x) ´e demoninada fun¸c˜ao objetivo, ci, aij e bi s˜ao os parˆametros do modelo, onde cj s˜ao os coeficientes da fun¸c˜ao objetivo, aij s˜ao os coeficiente das restri¸c˜oes. Com isso temos a seguinte defini¸c˜ao:
Defini¸c˜ao 2.1 A fun¸c˜ao principal, que deve ser otimizada num problema de Programa¸c˜ao Linear, recebe o nome de Fun¸c˜ao Objetivo.
Assim o objetivo do problema consiste em encontrar x ∈ Rn^ que maximize ou mini- mize a fun¸c˜ao objetivo.
2.3 Exemplos
A seguir apresentaremos alguns exemplos de problemas reais com suas respectivas modelagens.
Considere o problema da dieta, como apresentado na introdu¸c˜ao em que quantidades de certos alimentos devem ser ingeridos diariamente, satisfazendo requisitos nutricionais m´ınimos, a um custo m´ınimo.
Vamos considerar, para cada i = 1, 2 ,... , m e para cada j = 1, 2 ,... , n, as seguintes vari´aveis:
O objetivo deste problema ´e determinar x 1 , x 2 , x 3 ,... , xn que minimizem a fun¸c˜ao objetivo f (x) = c 1 x 1 + c 2 x 2 + · · · + cnxn , de modo que x 1 , x 2 , x 3 ,... , xn satisfa¸cam `as restri¸c˜oes:
a 11 x 1 + a 12 x 2 + · · · + a 1 nxn ≥ b 1 a 21 x 1 + a 22 x 2 + · · · + a 2 nxn ≥ b 2 .. .
am 1 x 1 + am 2 x 2 + · · · + amnxn ≥ bm
e `as condi¸c˜oes de n˜ao-negatividade:
x 1 ≥ 0 , x 2 ≥ 0 , x 3 ≥ 0 ,... , xn ≥ 0.
Assim f (x) = c 1 x 1 + c 2 x 2 + · · · + cnxn representa o custo bruto, em Reais, da quan- tidade do alimento consumido e as restri¸c˜oes lineares indicam que o total da vitamina i obtida dos n alimentos deve ser maior ou igual `a quantidade m´ınima bi desta vitamina.
Um fazendeiro deseja aumentar seus lucros nas planta¸c˜oes de trigo e soja em sua propriedade. Sabendo que o lucro, por unidade de ´area plantada de trigo ´e de 3 unidades monet´arias e que o lucro, por unidade de ´area plantada de soja ´e de 5 unidades monet´arias
e, por quest˜oes internas, as ´areas plantadas de trigo e soja n˜ao podem ultrapassar 4 unidades de ´area, e 6 unidades de ´area, respectivamente. Al´em disso, para cada unidade de ´area plantada de trigo, s˜ao necess´arios 3 homens e na outra cultura, s˜ao necess´arios 2 homens. O total de homens trabalhando em cada hora em ambas, planta¸c˜oes n˜ao pode ser maior que 18 trabalhadores.
Apresentamos, a seguir, a modelagem de programa¸c˜ao linear para que o lucro nas planta¸c˜oes seja m´aximo. Isto reduz-se a encontrar as ´areas de trigo e soja que devem ser plantadas respectivamente.
Modelagem:
Escolha das vari´aveis:
x 1 ≡ quantidade de unidades de ´area de trigo a serem plantadas e,
x 2 ≡ quantidade de unidades de ´area de soja a serem plantadas.
Elabora¸c˜ao da fun¸c˜ao objetivo:
f (x) = 3x 1 + 5x 2.
Formula¸c˜ao das Restri¸c˜oes:
Logo, para este exemplo o modelo ficar´a disposto da seguinte forma:
Maximizar f (x) = 3x 1 + 5x 2 , sujeito a:
x 1 ≤ 4 x 2 ≤ 6 3 x 1 + 2x 2 ≤ 18 x 1 ≥ 0 x 2 ≥ 0.
Elabora¸c˜ao das fun¸c˜oes objetivos:
Formula¸c˜ao das Restri¸c˜oes:
T otal ≡ T =
i=
xi. Logo,
xi ≥ 0 , 15 T ⇔ 100 x 1 ≥ 15(x 1 + x 2 + x 3 ) ⇔ 85 x 1 − 15 x 2 − 15 x 3 ≥ 0 ⇔ 17 x 1 − 3 x 2 − 3 x 3 ≥ 0;
E ainda,
xi ≤ 0 , 30 T ⇔ 100 x 1 ≤ 30(x 1 + x 2 + x 3 ) ⇔ 70 x 1 − 15 x 2 − 15 x 3 ≤ 0 ⇔ 14 x 1 − 3 x 2 − 3 x 3 ≤ 0;
Com isso cada fun¸c˜ao objetivo ficar´a sujeita a:
x 1 + x 2 + x 3 ≤ 70 x 1 + 2 x 2 + 3 x 3 ≥ 120 17 x 1 − 3 x 2 − 3 x 3 ≥ 0 14 x 1 − 3 x 2 − 3 x 3 ≤ 0 x 1 ≥ 0 x 2 ≥ 0 x 3 ≥ 0.
Inicialmente, tra¸camos no plano x 1 ox 2 a reta ai 1 x 1 + ai 2 x 2 = ai 0 que o divide em dois semi-planos.
Considere P um ponto arbitr´ario do plano x 1 ox 2. Podemos verificar, sem dificul- dades, que qualquer ponto do semi-plano que o cont´em satisfaz ai 1 x 1 + ai 2 x 2 ≤ bi ou ai 1 x 1 + ai 2 x 2 ≥ bi. A outra desigualdade ´e satisfeita por qualquer ponto Q do outro semi-plano. Al´em disso, qualquer ponto desta reta satisfaz `a equa¸c˜ao ai 1 x 1 + ai 2 x 2 = bi.
Figura 3.1: O semi-plano selecionado ´e o que cont´em o ponto P.
Assim, para sabermos qual ´e o semiplano que satisfaz a cada desigualdade, escolhemos arbitrariamente um ponto qualquer do plano x 1 ox 2. Se tal ponto satisfizer `a desigual- dade, ent˜ao o semi-plano ficar´a voltado para este ponto. Sen˜ao, ficar´a voltado para o lado oposto. Neste trabalho, indicamos o semi-plano escolhido por setas direcionadas para o mesmo, como mostrado na figura (3.1).
Agora, representamos graficamente a equa¸c˜ao f (x) = c 1 x 1 + c 2 x 2. Considere esta equa¸c˜ao para um certo f 0 ∈ R fixado. Logo, a equa¸c˜ao f 0 = c 1 x 1 + c 2 x 2 define uma reta no plano x 1 ox 2 e, fazendo f (x) variar no conjunto dos n´umeros reais, temos uma fam´ılia de retas paralelas a esta. A figura (3.2) ilustra um caso particular onde c 1 > 0 e c 2 > 0.
Observe que o vetor V = (c 1 , c 2 ) ´e perpendicular a todas essas retas e indica o sentido e a dire¸c˜ao do crescimento de f (x). Al´em disso, todos os pontos situados numa mesma reta possuem o mesmo valor. Por essa raz˜ao, tais retas s˜ao denominadas retas de n´ıvel da fun¸c˜ao f (x).
Ent˜ao, para cada restri¸c˜ao do problema, desenhamos sua reta correspondente e iden- tificamos o semi-plano que satisfaz a desigualdade. Dessa forma, podemos perceber qual ´e a regi˜ao do plano que correspondea regi˜ao compat´ıvel do problema.
Figura 3.2: Duas de suas retas de n´ıvel da fun¸c˜ao f (x).
Defini¸c˜ao 3.2 Dizemos que qualquer atribui¸c˜ao de valores para as vari´aveis do modelo ´e uma Solu¸c˜ao.
Defini¸c˜ao 3.3 A solu¸c˜ao que satisfaz a todas as restri¸c˜oes do modelo considerado, ou seja, pertence `a regi˜ao compat´ıvel do modelo, ´e definida como Solu¸c˜ao Compat´ıvel.
E na regi˜^ ´ ao compat´ıvel que est˜ao todos os pontos candidatos a serem o ponto ´otimo, ou seja, o ponto que satisfaz a todas as restri¸c˜oes lineares do modelo e que otimiza sua fun¸c˜ao objetivo.
Defini¸c˜ao 3.4 Dizemos que a solu¸c˜ao pertencente `a regi˜ao compat´ıvel do modelo e que otimiza o valor da fun¸c˜ao objetivo ´e a Solu¸c˜ao Otima.´
Defini¸c˜ao 3.5 A solu¸c˜ao que n˜ao satisfaz a alguma das restri¸c˜oes do modelo considera- do ´e definida como Solu¸c˜ao Incompat´ıvel.
Como j´a foi observado, a equa¸c˜ao da fun¸c˜ao objetivo f (x) = c 1 x 1 + c 2 x 2 representa, graficamente, uma fam´ılia de retas paralelas. Ent˜ao, inicialmente, na regi˜ao compat´ıvel do problema, constru´ımos a reta f 0 = c 1 x 1 + c 2 x 2 para algum f 0 ∈ R fixado. A figura (3.3) ilustra a id´eia desta tal constru¸c˜ao numa regi˜ao gen´erica e limitada.
Observa¸c˜ao 3.1 Veremos, a seguir, que encontrar este ponto S vai depender da regi˜ao das poss´ıveis solu¸c˜oes do conjunto de restri¸c˜oes lineares associado ao problema que pode ser: vazia, ter apenas um ponto, ser um pol´ıgono convexo, ou ainda, uma regi˜ao poligonal convexa ilimitada.
Observa¸c˜ao 3.2 O ponto S, que maximiza a fun¸c˜ao objetivo, ´e um dos v´ertices da regi˜ao compat´ıvel do problema. No cap´ıtulo seguinte, mostraremos que isto sempre acontece, ou seja, que este ponto ´e sempre obtido em um dos v´ertices desta regi˜ao, a n˜ao ser quando o problema admite m´ultiplas solu¸c˜oes ´otimas.
3.2 Poss´ıveis Regi˜oes Compat´ıveis
Antes de apresentarmos um exemplo, destacaremos os poss´ıveis casos de regi˜oes compat´ıveis do sistema de desigualdade da restri¸c˜ao associada ao problema, que podem ocorrer nos diversos problemas de programa¸c˜ao linear.
Seja dado um problema de programa¸c˜ao linear. Os seguintes casos mostram como podem ser as suas regi˜oes compat´ıveis.
1 ◦^ Caso:
Suponha que a restri¸c˜ao associada a um determinado problema seja:
x 1 + 2x 2 ≤ 3 − 3 x 1 + x 2 ≥ 2 x 1 ≥ 0 x 2 ≥ 0.
Inicialmente, observamos que x 1 ≥ 0 e x 2 ≥ 0 , ou seja , se existir uma solu¸c˜ao que otimiza a fun¸c˜ao objetivo, deve pertencer ao primeiro quadrante do plano x 1 ox 2. Em seguida, constru´ımos a regi˜ao do plano que satisfaz as duas primeiras inequa¸c˜oes. Veja figura (3.5). Com essa constru¸c˜ao, podemos concluir que a regi˜ao compat´ıvel deste pro- blema ´e vazia.
2 ◦^ Caso:
Suponha que a restri¸c˜ao associada a um segundo problema seja:
x 1 + x 2 ≤ 3 −x 1 + x 2 ≥ 3 x 1 ≥ 0 x 2 ≥ 0.
Como no caso anterior, x 1 ≥ 0 e x 2 ≥ 0. Logo, se existir uma solu¸c˜ao que otimiza a fun¸c˜ao objetivo, tamb´em deve pertencer ao primeiro quadrante do plano x 1 ox 2. Em seguida, constru´ımos a regi˜ao do plano que satisfaz `as duas primeiras inequa¸c˜oes. Veja figura (3.6). Assim, conclu´ımos que a regi˜ao compat´ıvel deste problema ´e constitu´ıda por uma ´unica solu¸c˜ao, o ponto (3, 0).
Figura 3.5: Regi˜ao compat´ıvel do 1o^ caso. Figura 3.6: Regi˜ao compat´ıvel do 2o^ caso.
3 ◦^ Caso:
Suponha que a restri¸c˜ao associada a um terceiro problema seja:
x 1 − 2 x 2 ≤ 4 x 1 + 2x 2 ≥ 3 x 1 + 5x 2 ≥ 5 2 x 1 − 3 x 2 ≤ 6 3 x 1 − x 2 ≥ 0 x 1 ≥ 0 x 2 ≥ 0.
Como nos casos anteriores, x 1 ≥ 0 e x 2 ≥ 0. Logo, se existir uma solu¸c˜ao que otimiza a fun¸c˜ao objetivo, tamb´em deve pertencer ao primeiro quadrante do plano x 1 ox 2. Cons- tru´ımos, conforme a se¸c˜ao anterior, a regi˜ao do plano que satisfaz a todas as inequa¸c˜oes do sistema acima. Veja figura (3.7).
Para este problema, o sistema de desigualdades corresponde a uma regi˜ao limitada do plano x 1 ox 2. Logo, podemos concluir que a regi˜ao compat´ıvel deste problema ´e um pol´ıgono convexo.