apostila po - prof biluka-1

22
Sistemas de Informação - Pesquisa Operacional – 7 o Período Prof. Biluka Bibliografia utilizada: SILVA, Ermes Medeiros da, et al. Pesquisa Operacional. São Paulo: Atlas, 1995. LACHTERMACHER, Gerson. Pesquisa Operacional na tomada de decisões. Rio de Janeiro: Campus, 2002. LISBOA, ERICO. Introdução à Pesquisa Operacional. Disponível em http://www.ericolisboa.eng.br 1 INTRODUÇÃO À PESQUISA OPERACIONAL 1.1 O Desenvolvimento da Pesquisa Operacional Durante a Segunda Guerra Mundial, um grupo de cientistas foi convocado na Inglaterra para estudar problemas de estratégia e de tática associados com a defesa do país. O objetivo era decidir sobre a utilização mais eficaz de recursos militares limitados. A convocação deste grupo marcou a primeira atividade formal de pesquisa operacional. Os resultados positivos conseguidos pela equipe de pesquisa operacional inglesa motivaram os Estados Unidos a iniciarem atividades semelhantes. Apesar de ser creditada à Inglaterra a origem da Pesquisa Operacional, sua propagação deve-se principalmente à equipe de cientistas liderada por George B. Dantzig, dos Estados Unidos, convocada durante a Segunda Guerra Mundial. Ao resultado deste esforço de pesquisa, concluído em 1947, deu-se o nome de Método Simplex. Com o fim da guerra, a utilização de técnicas de pesquisa operacional atraiu o interesse de diversas outras áreas. A natureza dos problemas encontrados é bastante abrangente e complexa, exigindo, portanto uma abordagem que permita reconhecer os múltiplos aspectos envolvidos. Uma característica importante da pesquisa operacional e que facilita o processo de análise e de decisão é a utilização de modelos. Eles permitem a experimentação da solução proposta. Isto significa que uma decisão pode ser mais bem avaliada e testada antes de ser efetivamente implementada. A economia obtida e a experiência adquirida pela experimentação justificam a utilização da Pesquisa Operacional. Com o aumento da velocidade de processamento e quantidade de memória dos computadores atuais, houve um grande progresso na Pesquisa Operacional. Este progresso é devido também à larga utilização de microcomputadores, que se tornaram unidades isoladas dentro de empresas. Isso faz com que os modelos desenvolvidos pelos profissionais de Pesquisa Operacional sejam mais rápidos e versáteis, além de serem também interativos, possibilitando a participação do usuário ao longo do processo de cálculo.

Upload: alcovao

Post on 08-Aug-2015

54 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

Bibliografia utilizada:

SILVA, Ermes Medeiros da, et al. Pesquisa Operacional. São Paulo: Atlas, 1995.

LACHTERMACHER, Gerson. Pesquisa Operacional na tomada de decisões. Rio de

Janeiro: Campus, 2002.

LISBOA, ERICO. Introdução à Pesquisa Operacional. Disponível em

http://www.ericolisboa.eng.br

1 INTRODUÇÃO À PESQUISA OPERACIONAL

1.1 O Desenvolvimento da Pesquisa Operacional

Durante a Segunda Guerra Mundial, um grupo de cientistas foi convocado na

Inglaterra para estudar problemas de estratégia e de tática associados com a defesa do país. O objetivo

era decidir sobre a utilização mais eficaz de recursos militares limitados. A convocação deste grupo

marcou a primeira atividade formal de pesquisa operacional.

Os resultados positivos conseguidos pela equipe de pesquisa operacional inglesa

motivaram os Estados Unidos a iniciarem atividades semelhantes. Apesar de ser creditada à Inglaterra

a origem da Pesquisa Operacional, sua propagação deve-se principalmente à equipe de cientistas

liderada por George B. Dantzig, dos Estados Unidos, convocada durante a Segunda Guerra Mundial.

Ao resultado deste esforço de pesquisa, concluído em 1947, deu-se o nome de Método Simplex.

Com o fim da guerra, a utilização de técnicas de pesquisa operacional atraiu o

interesse de diversas outras áreas. A natureza dos problemas encontrados é bastante abrangente e

complexa, exigindo, portanto uma abordagem que permita reconhecer os múltiplos aspectos

envolvidos. Uma característica importante da pesquisa operacional e que facilita o processo de análise

e de decisão é a utilização de modelos. Eles permitem a experimentação da solução proposta. Isto

significa que uma decisão pode ser mais bem avaliada e testada antes de ser efetivamente

implementada. A economia obtida e a experiência adquirida pela experimentação justificam a

utilização da Pesquisa Operacional.

Com o aumento da velocidade de processamento e quantidade de memória dos

computadores atuais, houve um grande progresso na Pesquisa Operacional. Este progresso é devido

também à larga utilização de microcomputadores, que se tornaram unidades isoladas dentro de

empresas. Isso faz com que os modelos desenvolvidos pelos profissionais de Pesquisa Operacional

sejam mais rápidos e versáteis, além de serem também interativos, possibilitando a participação do

usuário ao longo do processo de cálculo.

Page 2: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 2 -

Pesquisa Operacional é um método cientifico de tomada de decisões. Em linhas

gerais, consiste na descrição de um sistema organizado com auxilio de um modelo, e através da

experimentação com o modelo, na descoberta da melhor maneira de operar o sistema.

1.2 Fases de um Estudo em P.O.

Um estudo em Pesquisa Operacional costuma envolver seis fases:

Formulação do problema;

Construção do modelo do sistema;

Calculo da solução através do modelo;

Teste do modelo e da solução;

Estabelecimento de controles da solução;

Implantação e acompanhamento;

que podem ser descritas como segue:

Formulação do Problema – Nesta fase, o administrador do sistema e o

responsável pelo estudo em P.O. deverão discutir, no sentido de colocar o problema de maneira clara e

coerente, definindo os objetivos a alcançar e quis os possíveis caminhos alternativos para que isso

ocorra.

Além disso, serão levantadas as limitações técnicas do sistema e as relações desse

sistema com outros da empresa ou do ambiente externo, com a finalidade de criticar a validade de

possíveis soluções em face destes obstáculos.

Deverá ainda ser acordada uma medida de eficiência para o sistema que permita ao

administrador ordenar as soluções encontradas, concluindo o processo decisório.

Construção do Modelo do Sistema – Os modelos que interessam em P.O. são

modelos matemáticos, isto é, modelos formados por um conjunto de equações e inequações.

Um modelo é uma representação de um sistema real, que pode já existir ou ser um

projeto aguardando execução. No primeiro caso, o modelo pretende reproduzir o funcionamento do

sistema, de modo a aumentar sua produtividade. No segundo caso, o modelo é utilizado para definir a

Page 3: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 3 -

estrutura ideal do sistema. A confiabilidade da solução obtida através do modelo depende da validação

do modelo na representação do sistema real. A validação do modelo é a confirmação de que ele

realmente representa o sistema real. A diferença entre a solução real e a solução proposta pelo modelo

depende diretamente da precisão do modelo em descrever o comportamento original do sistema.

Um problema simples pode ser representado por modelos também simples e de

fácil solução. Já problemas mais complexos requerem modelos mais elaborados, cuja solução pode vir

a ser bastante complicada.

Em um modelo matemático, são incluídos três conjuntos principais de elementos:

Variáveis de decisão e parâmetros: variáveis de decisão são as incógnitas a

serem determinadas pela solução do modelo. Parâmetros são valores fixos no

problema;

Restrições: de modo a levar em conta as limitações físicas do sistema, o

modelo deve incluir restrições que limitam as variáveis de decisão a seus

valores possíveis (ou viáveis);

Função objetivo: é uma função matemática que define a qualidade da solução

em função das variáveis de decisão.

Para melhor ilustrar ao conjuntos acima, considere o seguinte exemplo:

“Uma empresa de comida canina produz dois tipos de rações: Tobi e Rex. Para a manufatura das

rações são utilizados cereais e carne. Sabe-se que:

a ração Tobi utiliza 5 kg de cereais e 1 kg de carne, e a ração Rex utiliza 4 kg de carne e 2 kg

de cereais;

o pacote de ração Tobi custa R$ 20 e o pacote de ração Rex custa $ 30;

o kg de carne custa R$ 4 e o kg de cereais custa R$ 1;

estão disponíveis por mês 10 000 kg de carne e 30 000 kg de cereais.

Deseja-se saber qual a quantidade de cada ração a produzir de modo a maximizar o lucro. ”

Neste problema as variáveis de decisão são as quantidades de ração de cada tipo a

serem produzidas.

Os parâmetros fornecidos são os preços unitários de compra e venda, além das

quantidades de carne e cereais utilizadas em cada tipo de ração. As restrições são os limites de carne e

cereais e a função objetivo é uma função matemática que determine o lucro em função das variáveis

de decisão e que deve ser maximizada.

Page 4: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 4 -

Cálculo da solução através do modelo – É feito através de técnicas matemáticas

específicas. A construção do modelo deve levar em consideração a disponibilidade de uma técnica para

o cálculo da solução.

A formulação do modelo depende diretamente do sistema a ser representado. A

função objetivo e as funções de restrições podem ser lineares ou não- lineares. As variáveis de decisão

podem ser contínuas ou discretas (por exemplo, inteiras) e os parâmetros podem ser determinísticos ou

probabilísticos.

O resultado dessa diversidade de representações de sistemas é o desenvolvimento

de diversas técnicas de otimização, de modo a resolver cada tipo de modelo existente. Estas técnicas

incluem, principalmente: programação linear, programação inteira, programação dinâmica,

programação estocástica e programação não- linear.

Programação linear é utilizada para analisar modelos onde as restrições e a função

objetivo são lineares; programação inteira se aplica a modelos que possuem variáveis inteiras (ou

discretas); programação dinâmica é utilizada em modelos onde o problema completo pode ser

decomposto em subproblemas menores; programação estocástica é aplicada a uma classe especial de

modelos onde os parâmetros são descritos por funções de probabilidade; finalmente, programação

não-linear é utilizada em modelos contendo funções não-lineares.

Uma característica presente em quase todas as técnicas de programação matemática

é que a solução ótima do problema não pode ser obtida em um único passo, devendo ser obtida

iterativamente. É escolhida uma solução inicial (que geralmente não é a solução ótima). Um algoritmo

é especificado para determinar, a partir desta, uma nova solução, que geralmente é superior à anterior.

Este passo é repetido até que a solução ótima seja alcançada (supondo que ela existe).

Teste do modelo e da solução – Esse teste é realizado com dados empíricos do

sistema. Se houver dados históricos, eles serão aplicados no modelo, gerando um desempenho que

pode ser comparado ao desempenho observado no sistema. Se o desvio verificado não for aceitável, a

reformulação ou mesmo o abandono do modelo será inevitável. Caso não haja dados históricos, os

dados empíricos serão anotados com o sistema funcionando sem interferência, até que o teste possa ser

realizado.

Estabelecimento de controles da solução – A construção e experimentação com o

modelo identificam parâmetros fundamentais para solução do problema. Qualquer mudança nesses

Page 5: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 5 -

parâmetros deverá ser controlada para garantir a validade da solução adotada. Caso alguns desses

parâmetros sofram desvio além do permitido, o cálculo de nova solução ou mesmo a reformulação do

modelo poderá ser necessária.

Implementação e acompanhamento – Nesta fase, a solução será apresentada ao

administrador, evitando-se o uso da linguagem técnica do modelo. O uso da linguagem do sistema em

estudo facilita a compreensão e gera boa vontade para a implantação que está sendo sugerida. Essa

implantação deve será acompanhada para se observar o comportamento do sistema com a solução

adotada. Algum ajuste pode ser requerido.

Page 6: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 6 -

2 Programação Linear

2.1 Modelo em Programação Linear

Uma das técnicas mais utilizadas na abordagem de problemas em Pesquisa

Operacional é a programação linear. A simplicidade do modelo envolvido e a disponibilidade de uma

técnica de solução programável em computador facilitam sua aplicação. As aplicações mais

conhecidas são feitas em sistema estruturados, como os de produção, finanças, controles de estoques

etc.

O problema geral de programação linear é utilizado para otimizar (maximizar ou

minimizar) uma função linear de variáveis, chamada de "função objetivo", sujeita a uma série de

equações ou inequações lineares, chamadas restrições. A formulação do problema a ser resolvido por

programação linear segue alguns passos básicos.

deve ser definido o objetivo básico do problema, ou seja, a otimização a ser

alcançada. Por exemplo, maximização de lucros, ou de desempenhos, ou de

bem-estar social; minimização de custos, de perdas, de tempo. Tal objetivo

será representado por uma função objetivo, a ser maximizada ou minimizada;

para que esta função objetivo seja matematicamente especificada, devem ser

definidas as variáveis de decisão envolvidas. Por exemplo, número de

máquinas, a área a ser explorada, as classes de investimento à disposição etc.

Normalmente, assume-se que todas estas variáveis possam assumir somente

valores positivos;

estas variáveis normalmente estão sujeitas a uma série de restrições,

normalmente representadas por inequações. Por exemplo, quantidade de

equipamento disponível, tamanho da área a ser explorada, capacidade de um

reservatório, exigências nutricionais para determinada dieta etc.

Todas essas expressões, entretanto, devem estar de acordo com a hipótese principal

da programação linear, ou seja, todas as relações entre as variáveis devem ser lineares. Isto implica

proporcionalidade das quantidades envolvidas. Esta característica de linearidade pode ser interessante

no tocante à simplificação da estrutura matemática envolvida, mas prejudicial na representação de

fenômenos não lineares (por exemplo, funções de custo tipicamente quadráticas).

Um problema de programação linear está em sua forma padrão se tiver na função

objetivo uma Maximização e se todas as restrições forem do tipo menor ou igual, bem como os termos

constantes e variáveis de decisão não-negativos.

A fim de facilitar nossa explicação, algum tipo de padronização de terminologia

deve ser introduzido. Entende-se por:

Page 7: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 7 -

Solução qualquer especificação de valores para variáveis de decisão, independente de

se tratar de uma escolha desejável ou permissível.

Solução Viável uma solução em que todas as restrições são satisfeitas.

Solução Ótima uma solução viável que tem o valor mais favoráveis da função-objetivo, isto é,

maximiza ou minimiza a função-objetivo em toda a região viável, podendo ser

única ou não.

Todo problema de Programação Linear parte de algumas hipóteses que são assumidas quando

tentamos resolvê-los:

Proporcionalidade O valor da função-objetivo é diretamente proporcional ao nível de atividade

de cada variável de decisão.

Aditividade Considera as atividades (variáveis de decisão) do modelo como entidades

totalmente independentes, não permitindo que haja interdependência entre as

mesmas, isto é, não permitindo a existência de termos cruzados, tanto na

função-objetivo como nas restrições.

Divisibilidade Assume que todas as unidades de atividade possam ser divididas em qualquer

nível fracional, isto é, qualquer variável de decisão pode assuimir qualquer

valor fracionário.

Certeza Assume que todos os parâmetros do modelo são constantes conhecidas. Em

problemas reais, a certeza quase nunca é satisfeita, provocando a necessidade

de análise de sensibilidade dos resultados.

Page 8: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 8 -

O problema geral de programação linear pode ser definido por Maximizar (ou minimizar)

Maximizar (ou minimizar)

nnxcxcxcxcZ .......332211

Sujeito a

),(...

...

),(...

),(...

2211

22222121

11212111

ououbxaxaxa

ououbxaxaxa

ououbxaxaxa

mnmnmm

nn

nn

0,, 21 nxxx

As variáveis controladas ou variáveis de decisões são nxxx ,, 21 . A função objetivo

ou função de eficiência mede o desempenho do sistema, podendo ser a capacidade de gerar lucro ou a

capacidade de minimizar perdas. As restrições garantem que essas soluções estão de acordo com as

limitações técnicas impostas pelo sistema, há também as restrições de não negatividade das variáveis

de decisão, o que deverá acontecer sempre que a técnica de abordagem for a de programação linear.

A construção do modelo matemático, no caso um modelo linear, é parte mais

complicada de nosso estudo. Não há regra fixa para esse trabalho, mas podemos sugerir um roteiro que

ajuda a ordenar o raciocínio.

Roteiro

a) Quais as variáveis de decisão?

Aqui o trabalho consiste em explicitar as decisões que devem ser tomadas e representar as possíveis

decisões através de variáveis chamadas de variáveis de decisão. Se o problema é de programação de

produção, as variáveis de decisão são as quantidades a produzir no período; se for um problema de

programação de investimento, as variáveis vão representar as decisões de investimento, isto é, quanto

investir em cada oportunidade de investimento, e em que período. Nas descrições sumárias de

sistemas, isso fica claro lemos a questão proposta, isto é, a pergunta do problema.

b) Qual o objetivo?

Aqui devemos identificar o objetivo da tomada de decisão. Eles aparecem geralmente na forma de

maximização de lucros ou receitas, minimização de custos, perdas etc. A função objetivo é a expressão

que calcula o valor do objetivo (lucro, custo, receita, perda etc.), em função das variáveis de decisão.

Restrições de não negatividade

Restrições técnicas

Função Objetivo

Page 9: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 9 -

c) Quais as restrições?

Cada restrição imposta na descrição do sistema deve ser expressa com uma relação linear (igualdade

ou desigualdade), montadas com as variáveis de decisão.

Exemplo 2 – Certa empresa fabrica dois produtos P1 e P2. O lucro unitário do produto P1 é de 1000

unidades monetárias e o lucro unitário de P2 é de 1800 unidades monetárias. A empresa precisa de 20

horas para fabricar uma unidade de P1 e de 30 horas para fabricar uma unidade de P2. O tempo anual

de produção disponível para isso é de 1200 horas. A demanda esperada para cada produto é de 40

unidades anuais para P1 e 30 unidades anuais de P2. Qual é o plano de produção para que a empresa

maximize seus lucro nesses itens? Construa o modelo de programação linear para esse caso.

a) Quais as variáveis de decisão?

O que deve ser decidido é o plano de produção, isto é, quais as quantidades anuais que devem ser

produzidas de P1 e P2.

Portanto, as variáveis de decisão serão 1x e 2x .

1x quantidade anual a produzir de P1.

2x quantidade anual a produzir de P2.

b) Qual o objetivo?

O objetivo é maximizar o lucro, que pode ser calculado:

Lucro devido a P1: 1000 . 1x (lucro por unidade de P1 x quantidade produzida de P1)

Lucro devido a P2: 1800 . 2x (lucro por unidade de P2 x quantidade produzida de P2)

Lucro total: 21 18001000 xxL

Objetivo: maximizar 21 18001000 xxL

c) Quais as restrições?

As restrições impostas pelo sistema são:

- Disponibilidade de horas para a produção: 1200 horas.

horas ocupadas com P1: 120x (uso por unidade x quantidade produzida)

horas ocupadas com P2: 230x (uso por unidade x quantidade produzida)

Total em horas ocupadas na produção: 21 3020 xx

Disponibilidade: 1200 horas

Restrição descritiva da situação: 12003020 21 xx

Page 10: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 10 -

- Disponibilidade de mercado para os produtos (demanda)

Disponibilidade para P1: 40 unidades

Quantidade a produzir de P1: 1x

Restrição descritiva da situação: 401 x

Disponibilidade para P2: 30 unidades

Quantidade a produzir de P2: 2x

Restrição descritiva da situação: 302 x

Resumo do modelo: max 21 18001000 xxL

Sujeito a

30

40

12003020

2

1

21

x

x

xx

0, 21 xx

Restrição de não-negatividade

Restrição de

demanda

Restrição das horas

Page 11: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 11 -

Exemplo 2 – Vamos reescrever o exemplo utilizado na seção 1.2:

“Uma empresa de comida canina produz dois tipos de rações: Tobi e Rex. Para a manufatura das

rações são utilizados cereais e carne. Sabe-se que”:

a ração Tobi utiliza 5 kg de cereais e 1 kg de carne, e a ração Rex utiliza 4 kg de carne e 2 kg

de cereais;

o pacote de ração Tobi custa R$ 20 e o pacote de ração Rex custa $ 30;

o kg de carne custa R$ 4 e o kg de cereais custa R$ 1;

estão disponíveis por mês 10 000 kg de carne e 30 000 kg de cereais.

Deseja-se saber qual a quantidade de cada ração a produzir de modo a maximizar o lucro. ”

Nosso modelo deseja maximizar o lucro (Z) a partir da quantidade de ração Tobi (x1) e de ração

Rex(x2). A Tabela abaixo apresenta o cálculo do lucro unitário de cada ração.

Ração Tobi Ração Rex

Custo de carne 1 kg x R$ 4 = R$ 4 4 kg x R$ 4 = R$ 16

Custo de cereais 5 kg x R$ 1 = R$ 5 2 kg x R$ 1 = R$ 2

Custo total R$ 9 R$ 18

Preço R$ 20 R$ 30

Lucro R$ 11 R$ 12

maximizar 21 1211 xxZ

Sujeito a 3000025

100041

21

21

xx

xx

0, 21 xx

Restrição de não-negatividade

Restrição de cereais

Restrição de carne

Page 12: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 12 -

Exercícios

1) Uma marcenaria deseja estabelecer uma programação diária de produção. Atualmente, a oficina faz

apenas dois produtos: mesa e armário, ambos de um só modelo. Para efeito de simplificação, vamos

considerar que a marcenaria tem limitações em somente dois recursos: madeira e mão-de-obra, cujas

disponibilidades diárias são mostradas na tabela a seguir.

Recurso Disponibilidade

Madeira 12m2

Mão-de-obra 8 H.h

O processo de produção é tal que, para fazer uma mesa a fábrica gasta 2 m2 de madeira e 2 H.h de

mão-de-obra. Para fazer um armário, a fábrica gasta 3 m2 de madeira e 1 H.h de mão de obra. Além

disso, o fabricante sabe que cada mesa dá uma margem de contribuição para o lucro de $ 4 e cada

armário de $ 1. O problema é encontrar o programa de produção que maximiza a margem de

contribuição total para o lucro.

2) Uma pequena metalúrgica deseja maximizar sua receita com a venda de dois tipos de finas fitas de

aço que se diferenciam em qualidade no acabamento de corte. As fitas são produzidas a partir do corte

de bobinas de grande largura. Existem duas máquina em operação. Uma das máquinas é mais antiga e

permite o corte diário de 4000 m de fita. A outra, mais nova, corta 6000 m. A venda das chapas no

mercado varia com a qualidade de cada uma. Fitas produzidas na máquina antiga permitem um lucro

de 3 u.m. por mil metros de produção. Fitas cortadas na máquina moderna produzem um lucro de 5

u.m. por mil metros de produção. Cada mil metro de fita cortada na máquina antiga consome 3 homens

X hora de mão-de-obra. Na máquina moderna são gastos apenas 2 homens X hora. Diariamente são

disponíveis 18 homens X hora para operação de ambas as máquinas. Determinar a produção que

otimiza o lucro da metalúrgica.

Page 13: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 13 -

3) Um fabricante de móveis fornece os seguintes produtos: mesas, armários e cadeiras. A fabricação de

cada tipo de produto requer chapas de mogno e dois tipos de mão de obra, uma para acabamento e

outra para carpintaria. A quantidade de recursos para cada tipo de produto é dada na tabela abaixo.

Recurso Armário Mesa Cadeira Disponibilidade

Mogno 8 m2 6 m

2 1 m

2 30 m

2

Horas de

acabamento

4 2 1,5 10

Horas de carpintaria 2 1,5 0,5 10

Sendo que cada mesa, armário e cadeira dão um lucro de 3, 4 e 5 u.m. Formular o modelo matemático

para maximizar seu lucro semanal.

4) Giapetto fabrica dois tipos de brinquedos de madeira: soldados e trens. Um soldado é vendido por

27 u.m. e usa 10 u.m de matéria prima. Cada soldado que é fabricado tem um custo adicional de 14

u.m. relativo a mão de obra. Um trem é vendido por 21 u.m. e gasta 9 u.m. de matéria prima. O custo

de mão de obra adicional para cada trem é de 10 u.m.. A fabricação destes brinquedos requer dois tipos

de mão de obra: carpintaria e acabamento. Um soldado necessita de 2 horas para acabamento e 1 de

carpintaria. Um trem necessita de 1 hora para acabamento e 1 hora de carpintaria. Cada semana,

Giapetto pode obter qualquer quantidade de matéria prima, mas tem a disposição até 100 horas de

acabamento e 80 de carpintaria. A demanda por trens é ilimitada, mas a venda de soldados é de no

máximo 40 por semana. Giapetto que maximizar seu lucro diário (receitas-custos). Formular o modelo

matemático que poderá ser usado por Giapetto para maximizar seu lucro semanal.

Page 14: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 14 -

2.2 Técnica de Solução para Modelos de Programação Linear com Duas Variáveis de Decisão –

Método Gráfico.

Essa técnica consiste em representar num sistema de eixos ortogonais o conjunto

das possíveis soluções do problema, isto é, o conjunto de pontos ),( 21 xx

que obedecem ao grupo de

restrições impostas pelo sistema em estudo. O desempenho do modelo é avaliado através da

representação gráfica da função objetivo. AS soluções são classificadas de acordo com sua posição no

gráfico.

2.2.1 Gráfico do Conjunto de Soluções

A representação gráfica de uma equação linear com duas variáveis é uma reta. A

representação gráfica de uma inequação linear com duas variáveis é um dos semiplanos definidos pela

reta correspondente à equação.

Exemplo 1: Representar graficamente a inequação: 1021 21 xx

a. Construir a reta correspondente à equação: 1021 21 xx (acompanhe no gráfico)

Precisamos de dois pontos:

Fazendo 01 x teremos 5102 22 xx

Fazendo 02 x teremos 101 x

b. Testar a inequação: 1021 21 xx

Tomamos um ponto qualquer de uma das regiões limitadas pela reta, por exemplo o ponto

( 101 x , 52 x ).

Substituindo na inequação:

105.210 ou 1020 , o que é verdadeiro, portanto a região das soluções da inequação é

aquela que contem o ponto testado.

Page 15: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 15 -

Exercício.

Representar graficamente a solução do sistema:

0

0

162

123

2

1

21

21

x

x

xx

xx

5

10 x1

x2

(10,5)

Região de soluções

Page 16: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 16 -

2.2.1 Avaliação do Objetivo

Avaliar o desempenho da função objetivo: Maximizar L = 21 52 xx , na região de soluções do gráfico

abaixo:

Solução: Escolhemos um valor arbitrário para L, por exemplo, o valor 10.

A equação: 21 5210 xx fornece o conjunto de pontos ),( 21 xx

que dão para L o valor 10. Vamos

representar esses pontos:

1052 21 xx

Fazendo 01 x teremos 2105 22 xx

Fazendo 02 x teremos 5102 11 xx

Escolhemos um segundo valor para L, por exemplo, o valor 15, então:

1052 21 xx

Fazendo 01 x teremos 3155 22 xx

Fazendo 02 x teremos 5,7152 11 xx

0 4

6

8

8 x1

x2

Page 17: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 17 -

Graficamente, teremos:

Verificamos do gráfico que:

1. À medida que atribuímos valores a L, obtemos retas paralelas.

2. À medida que o valor de L aumenta, a reta se afasta da origem do sistema de eixos.

Podemos concluir que pelo ponto P do gráfico teremos a paralela de maior valor que ainda apresenta

um ponto na região de soluções. Portanto, o ponto P é a solução que maximiza L na região de soluções

dadas.

Como P = (0,6) e L = 21 52 xx , substituindo 01 x e 62 x teremos:

L = 2.0 + 5.6 ou L máximo = 30.

8

L = 10

7,5 5 0 4

6

8

x1

x2

L = máximo

L = 15

Page 18: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 18 -

Exercício.

Resolver o problema de programação linear:

Minimizar

maximizar 21 32 xxZ

Sujeito a

8

105

5

1

21

21

x

xx

xx

0, 21 xx

Page 19: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 19 -

O MÉTODO SIMPLEX

4

O Método Simplex caminha pelos vértices da região viável até encontrar uma

solução que não possua soluções vizinhas melhores que ela. Esta é a solução ótima. A solução ótima

pode não existir em dois casos: quando não há nenhuma solução viável para o problema, devido a

restrições incompatíveis; ou quando não há máximo (ou mínimo), isto é, uma ou mais variáveis podem

tender a infinito e as restrições continuarem sendo satisfeitas, o que fornece um valor sem limites para

a função objetivo.

Esse método é formado por um grupo de critérios para escolha de soluções básicas

que melhorem o desempenho do modelo, e também de um teste otimalidade. Para isso, o problema

deve apresentar uma solução básica inicial. As soluções básicas subseqüentes são calculadas com a

troca de variáveis básicas por não básica, gerando novas soluções.

Os critérios para escolha de vetores e conseqüentemente das variáveis que entram e

saem para a formação da nova base constituem o centro do simplex.

Suponhamos inicialmente que o modelo apresente a solução básica inicial. Os

modelos com restrições tipo e com termos da direita não negativos têm uma solução básica formada

pelas variáveis de folga.

Exemplo:

No modelo:

maximizar 21 53 xxZ

sujeito a :

30

206

1042

21

21

21

xx

xx

xx

0, 21 xx

Page 20: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 20 -

Acrescenta-se as folgas, determina-se a solução básica inicial.

30

206

1042

321

221

121

xFxx

xFxx

xFxx

0,,,, 32121 xFxFxFxx

Podemos visualizar uma solução formada pelas variáveis de folga.

Solução básica inicial: 30,20,10,0,0 32121 xFxFxFxx

Descrição do Método para Maximização

1ª Parte: Teste de otimalidade para a solução.

Consiste em avaliar o efeito da permuta de uma variável básica por outro não

básica, com a conseqüente formação de nova solução. Se a entrada de uma variável não básica puder

melhorar o desempenho do sistema, a solução testa não é ótima.

Essa avaliação é possível quando a função objetivo está escrita somente em termos

das variáveis não básicas.

Voltando ao exemplo, função objetivo está escrita na forma:

maximizar 21 53 xxZ

e obtivemos, fazendo 01 x , 02 x , uma solução básica inicial formada pelas

variáveis de folga 30,20,10 321 xFxFxF .

No caso, as variáveis básicas são 321 ,, xFxFxF e as não básicas 21, xx .

Portanto, a função objetivo está escrita com as variáveis não básicas.

Examinando a função objetivo e a solução inicial 0,0,0 21 zxx com

21 53 xxZ , temos:

Se 1x entra na base com valor 1, o valor de Z passa de 0Z para 3Z ,

aumentando 3 unidades, exatamente o valor do coeficiente de 1x .

Se 2x entra na base com valor 1, o valor de Z passa de 0Z para 5Z ,

aumentando 5 unidades, exatamente o valor do coeficiente de 2x .

Page 21: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 21 -

Por outro lado, se o coeficiente de 1x ou 2x fosse negativo, a entrada dessa

variável diminuiria o valor de Z, de acordo com seu coeficiente. Pode-se concluir que enquanto a

função objetivo apresentar variáveis não básicas com coeficientes positivos, ela poderá ser aumentada,

não sendo portanto a solução ótima.

Vamos reescrever, agora, a função objetivo com todas as variáveis a esquerda:

05353 2121 xxZxxZ

Os coeficientes positivos à direita são negativos à esquerda, portanto, coeficiente

negativos à esquerda indicam que o valor de Z pode ser aumentado com a entrada da variável na base,

e na proporção de seu coeficiente. Escrito dessa forma, a solução testada só será ótima quando as

variáveis não básicas apresentarem somente coeficientes positivos.

2ª Parte: Cálculo da nova solução básica

a) Variável que entra na base: entra na base a variável com coeficiente negativo

de maior valor absoluto. A idéia é melhorar rapidamente o valor de Z.

Examinando a função objetivo do exemplo:

05353 121 xxouZxxZ entra a variável 2x , pois cada unidade a mais em

2x aumenta Z em 5 unidades.

b) Variável que sai: sai a variável que primeiro se anula com a entrada da variável

escolhida no item anterior, no caso 2x , que entra com maior valor possível.

Ela pode ser descoberta dividindo-se os termos da direita das restrições pelos

coeficientes positivos da variável que entra. O menor valor indica que a variável básica dessa linha é a

que primeiro se anula e sairá da base.

3011

2016

1042

321

221

121

xFxx

xFxx

xFxx

30)1/(30

201/20

5,24/10

Sai

A última divisão (30/(-1))não pode ser considerada, pois Dara valor negativo para a

variável na próxima base, o que não é possível. Portanto, sai a variável da primeira linha, no caso 1xF .

c) Elemento Pivô: A coluna da variável que entra e a linha da variável que sai

identificam um elemento comum chamado pivô.

d) Calculando a nova solução:

Page 22: Apostila PO - Prof Biluka-1

Sistemas de Informação - Pesquisa Operacional – 7o Período

Prof. Biluka

C:\Users\JAZON\AppData\Local\Temp\Apostila PO - Prof Biluka-1.doc

- 22 -

d1. Vamos organizar a função objetivo e restrições numa tabela com colunas

formadas pelos coeficientes de cada variável e outra dos termos independentes.