Você está na página 1de 11

Programação Linear no ensino secundário

Departamento do Ensino Secundário


Formação de acompanhantes
Mangualde, Julho de 2001

1 A programação linear e o programa


No programa do 11o¯ ano de Matemática A aparecem questões sob o tı́tulo
Programação linear. Também no 12o¯ ano de Matemática B, embora com
outra formulação, situações que podem ser referidas à programação linear.

1.1 Programação linear em Matemática B


Do programa de Matemática B, que encerra o 12o¯ ano, transcrevemos o texto
que está à discussão:
”Situações realistas simples com constrangimentos de produção ou outros que po-
dem ser modelados por inequações lineares servem para delimitar um polı́gono
convexo que dá informação completa sobre as quantidades possı́veis para cada
produto.
A matemática mobilizada é simples e acessı́vel e as representações gráficas apu-
radas (domı́nios planos) e tabelas são bons instrumentos que ajudam a interpretar
a situação, as condições impostas a uma produção ou uma cadeia de produção,
armazenamento, distribuição, etc.
Os problemas colocados apresentam os constrangimentos caracterı́sticos de cada
situação e um objectivo (máximo ou mı́nimo de uma função objectivo) a ser alcançado
com o maior êxito nas condições existentes.
Pretende-se familiarizar os estudantes com situações de gestão e desenvolver com-
petências para tomar decisões boas em termos de planeamento (da produção, por
exemplo) que podem ter a ver com maximizar lucros, minimizar custos ou con-
sumos, etc.

1
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 2

Na aula de Matemática poderão tratar-se problemas simples com caracterı́sticas


idênticas. Assim cada exemplo tratará de maximizar ou minimizar uma determi-
nada quantidade ( função objectivo) tendo-se em conta certas limitações ou cons-
trangimentos.
Se houver tempo, os estudantes podem mesmo ser colocados perante a necessi-
dade de tomar decisões de novos investimentos que alterem as condições de fab-
rico (o polı́gono dos constrangimentos) de modo a responder a novos desafios ou
a obter melhorias, com vantagem sobre o peso dos investimentos, nos máximos
ou mı́nimos da função objectivo. No fundo, trata-se de colocar aos estudantes
situações de trabalho em que seja marcante a utilidade do planeamento e benéfica
a colaboração da matemática para tomar boas decisões em empresas ou colectivos
de trabalhadores.”

1.2 Programação linear em Matemática A


Transcreve-se do programa de Matemática A,

Desenvolvimento Indicações metodológicas


Intersecção de planos A programação linear vai permitir ao estudynte
e interpretação ge- aplicar na resolução de problemas de extrema sim-
ométrica: plicidade e utilidade ( e que se apresentam hoje no
– resolução de sistemas; domı́nio da Economia) conceitos aprendidos no 10o¯
– equações cartesianas e ampliados no 11o¯.
da recta no espaço.
Programação linear - Recorda-se novamente que se dá a maior ênfase à
breve introdução. análise e interpretação de figuras quer planas quer
Domı́nios planos – in- tridimensionais pois, o estudante, para resolver prob-
terpretação geométrica lemas da vida corrente ou relacionados com áreas da
de condições engenharia, arquitectura,... precisa de usar intuição e
raciocı́nios geométricos. Ao professor compete asse-
gurar que, neste estudo da Geometria, o estudante
não se limita à ”manipulação” de condições desli-
gadas de situações concretas, sem qualquer esforço
de interpretação. A aprendizagem dos novos con-
ceitos aparece ligada à resolução de problemas como
prolongamento da geometria estudada no ano anteri-
or (agora o estudante poderá justificar propriedades
das figuras usando as suas representações em coor-
denadas)
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 3

2 Referência ao princı́pio
George Dantzig desenvolveu os conceitos fundadores daquilo a que chamamos
programação linear entre 1947 e 1949. Durante a 2a¯ Guerra Mundial, tra-
balhou no desenvolvimento de planos e propôs vários tipos de horários
de treino, fornecimento logı́stico a que os militares chamaram programas.
Já depois da guerra, ao procurar encontrar a via mais eficiente para de-
senvolver esses programas, Georges Dantzig descobriu que o problema de
planeamento podia ser formulado como um sistema de inequações linear-
es. Também teve de redefinir o conceito de objectivo. Nesse tempo, os ge-
stores pensavam nos objectivos em termos de algumas leis genéricas para
os atingir. Um homem da marinha diria que, se o objectivo é ganhar a
guerra, o que há a fazer é comprar mais navios de guerra. Dantzig foi a
primeira pessoa a falar de critérios para seleccionar o melhor plano explici-
tados matemáticamente, por aquilo a que agora chamamos função-objectivo.
Todo este trabalho teria um valor prático muito limitado sem métodos efi-
cientes ou algoritmos para encontrar a solução óptima de um sistema de
inequações lineares que maximiza (lucro, benefı́cio) ou minimiza (custo) de
uma função-objectivo.
Para responder a essa necessidade, desenvolveu o algoritmo ”simplex” 1
que resolve de forma eficiente o problema.
Em 1939, o matemático e economista soviético L. V. Kantorovich formulou e
resolveu um problema de programação linear relacionado com planeamen-
to da produção. O trabalho de Kantorovich era desconhecido na própria
União Soviética e ignorado no resto do mundo durante mais de 20 anos e,
por isso, não teve qualquer impacto no desenvolvimento da programação
linear pós-guerra.
O grupo de académicos mais interessados na programação linear era con-
stituı́do pelsos economistas. Vários dos participantes numa primeira con-
ferência intitulada Activity Analysis of Production and Allocation acabaram
por vir a ganhar o prémio Nobel da economia pelos seus trabalhos em mod-
elos de princı́pios fundamentais da economia, utilizando programação lin-
ear.
1
John Nash describes the Simplex method for solving linear programming problems.
(The use of the word programming here really refers to scheduling or planning-and not in
the way that we tell a computer what must be done.) The Simplex method relies on noticing
that the objective function’s maximum must occur on a corner of the space bounded by the
constraints of the ’feasible region’. in The Top 10 Algorithms, Jack Dongarra, University of
Tennessee and Oak Ridge National Laboratory Francis Sullivan IDA Center for Computing
Sciences
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 4

O primeiro problema resolvido por Dantzig, para tristeza da mulher, era um


problema de dieta de custo mı́nimo que envolvia solução de um sistema de
9 equações (requisitos de nutrição) com 77 variáveis de decisão. O National
Bureau of Standards supervisionou a solução que gastou 120 homens/dia us-
ando calculadoras operadas manualmente. (A esposa rejeitou e classificou
de aborrecida a dieta de custo mı́nimo). Actualmente, um computador pes-
soal resolve o problema em menos de um segundo. Folhas de cálculo (como
o Excel) incluem um módulo adicional designado por solver, que também
serve para a programação linear.
Com o aparecimento dos grandes computadores na década de 50 e o cresci-
mento das suas potencialidades, os principais utilizadores do algoritmo sim-
plex para resolver problemas práticos eram as indústrias quı́mica e petrolı́fera.
Um dos problemas era minimizar o custo da produção de gasolina que obe-
decesse a certos critérios de composição e garantisse determinadas perfor-
mances. Foi por essa via que o campo da programação linear cresceu ex-
ponencialmente e levou ao desenvolvimento de programação não linear na
qual as inequações e a função-objectivo se traduzem por funções não linear-
es. Outra extensão do tema de estudo é programação inteira (combinatória)
em que as variáveis só podem tomar valores inteiros. Estas disciplinas po-
dem agrupar-se num grnade domı́nio de programação matemática.
Adaptação de
http://mie.eng.wayne.edu/faculty/chelst/informs/introduction/linear.htm

3 Um exemplo
Uma empresa fabrica dois tipos de mesas – tipo J para sala de jantar e tipo
C para cozinha – utilizando três máquinas: uma serra mecânica – s, uma
rebarbadeira – r e uma prensa – p. As condições para a cadeia de produção
são as seguintes: o fabrico de uma mesa J gasta uma hora de trabalho com
a serra s, uma hora com a rebarbadeira r e 3h com a prensa p; enquanto que
para fabricar uma mesa C é preciso 1 hora de serra s, duas de rebarbadeira r
e 1 hora de prensa s. E sabe-se que, no perı́odo interessante para a produção,
as máquinas vão estar disponı́veis para o fabrico de mesas exactamente: 60
h de serra, 90 h de rebarbadeira e 150 h de prensa.
Sabendo que cada mesa J se pode vender a 200 euros e cada mesa C a 100
euros, interessa determinar o que deve ser produzido para tirar o máximo
benefı́cio da produção destes tipos de mesas.
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 5

3.1 Aspectos de uma resolução


Que modelo?

3.1.1 As condições da situação


O que queremos determinar? Queremos determinar um valor determina-
do para –x – número de mesas J e outro para – y – número de mesas C a
fabricar nas condições descritas para a sua produção.
Quais são as condições (os constrangimentos)?
Em primeiro lugar, é evidente que tem de ser x > 0 e y > 0,tem mesmo de
ser

x ∈ IN e y ∈ IN
.
Em segundo lugar, há os contrangimentos da disponibilidade das máquinas.
A serra está disponı́vel 60 horas. Para cada mesa J é preciso uma hora de
serra, x horas para x mesas. Do mesmo modo, para y mesas C é preciso y
horas de serra.

x + y ≤ 60
No que à rebarbadeira diz respeito, x mesas J ocupam x horas, enquanto
y mesas C ocupam 2y horas, sendo que a rebarbadeira não está disponı́vel
mais de 90 horas:

x + 2y ≤ 90
A prensa está disponı́vel no máximo 150h e para produzir x mesas J e y
mesas C são precisas 3x + y horas de prensa:

3x + y ≤ 150
Em resumo, os dados do problema podem ser organizados numa tabela
simples e esclarecedora. Por exemplo:

x Mesas C y Mesas J Limitações


Horas de Serra x + y ≤ 60
Horas de Rebarbadeira x + 2y ≤ 90
Horas de prensa 3x + y ≤ 150
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 6

3.1.2 E a função-objectivo
Finalmente, há que considerar o produto da venda em euros P = 200x +
100y, que é o que queremos maximizar.

Nenhuma destas aparece como absolutamente nova para os estudantes do


ensino secundário.

3.1.3 A interpretação gráfica


A primeira condição x > 0∧y > 0 só nos diz que tudo se passará no primeiro
quadrante.
O constrangimento da disponibilidade de horas da serra x + y ≤ 60 pode
ser descrito graficamente com o que os estudantes sabem sobre a recta de
equação y = −x + 60. O conjunto dos pares (x, y) que satisfazem a equação
x+y = 60 é exactamente o mesmo conjunto solução da equação y = −x+60.
Na figura seguinte, os pontos assinalados (área sombreada) são aqueles que
estão no 1o¯ quadrante e cujas coordenadas respeitam a condição do con-
strangimento da serra.

y (x, y) : y>-x+60

y (x, y) : y=-x+60

y (x, y) : y<-x+60

O x
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 7

Do mesmo modo, e sem ser preciso mobilizar matemática desconhecida, se


pode proceder para as condições x + 2y ≤ 90 e 3x + y ≤ 150.
O conjunto dos pontos que satisfazem simultaneamente as quatro condições
respeitamente aos constrangimentos da produção está representado como
área sombreada da figura que se segue. Podemos chamar a [OABCD] polı́gono
dos constrangimentos da produção.

x>0 e y>0
x+y≤60
x+2y≤90
3x+y ≤ 150

(x, y) : y=-x+60 e x+2y=90


C (x, y) : x+2y=90 e 3x+y=150

(x, y) : x+y=60 e 3x+y=150


B

O A

Restaria agora ver para qual destes pares (x, y) (isto é, para que números
de mesas J e C se podem produzir respeitando os constrangimentos da
produção) se obteria um produto de venda máximo i.e. um máximo da função
objectivo.
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 8

Ora sabe-se que


P
P = 200x + 100y ⇐⇒ y = −2x +
100
e pode ser representada por uma recta de declive -2 e cuja ordenada na
origem é a centésima parte de P .
É claro que a um maior valor de P/100 corresponde um maior valor de P
e o nosso problema residirá em procurar a recta de declive −2 de maior
ordenada na origem e que tem algum ponto de contacto com o polı́gono
dos constrangimentos da produção [OABCD].

3x+y=150

P/100 máximo
A: (50, 0)

B: (45, 15)

C: (30, 30)

D: (0, 45)

x+y=60

B
x+2y=90

O A

Das rectas de declive −2 que têm pontos de contacto com o domı́nio da


produção (na figura sombreada), a que tem maior ordenada na origem P/100
é a que passa pelo ponto de encontro da recta serra com a recta prensa.
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 9

Esse ponto é a solução do sistema.


[Método simplex: Basta-nos desenhar as rectas de declive -2 passando pelos
vértices do polı́gono de produção para visualizar a solução]
 
x + y = 60 x = 45
⇐⇒
3x + y = 150 y = 15
Aquela recta de declive −2 que passa por pontos do domı́nio da produção
e de ordenada na origem máxima, passa por (45, 15) e é por isso que, para
obter o máximo benefı́cio da produção de mesas vale é preciso fabricar 45
mesas de tipo J e 15 mesas de tipo C

P = 200 × 45 + 100 × 15 = 10500

3.1.4 Com a folha de cálculo


A B C D E F G H I
1
2 Variáveis de decisão max f.o. = 200x +100y
3 Nº de mesas J - x 45 sujeito a
4 Nº de mesas C - y 15 x+y ≤60
5 x+2y ≤ 90
6 3x+y ≤ 150
7 Matriz de coeficientes x y x,y ≥ 0
8
9 Função Objectivo 200 100 10500
10 F11=C11*C3+D11*C4
11 Restrição da serra 1 1 60 60 F12=C12*C3+D12*C4
12 Restrição da rebarbadeira 1 2 90 75 F13=C13*C3+D13*C4
13 Restrição da prensa 3 1 150 150
14 F9=C9*C3+D9*C4
15

Numa folha de cálculo (Excel, por exemplo), podemos construir o modelo


exactamente como fizemos na apresentação do exemplo. Nas células C3 e
C4 comecemos por colocar 0 em cada uma delas. Estas células irão fun-
cionar para o módulo Solver adicional do Excel como as nossas variáveis de
decisão.
E, tal como na apresentação do exemplo, escrevemos as desigualdades rel-
ativas às restrições da produção e a função objectivo como funções das
variáveis de decisão consideradas inicialmente.
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 10

4 Exemplos semelhantes
4.1
Uma empresa produz dois modelos de brinquedos B1 e B2 . Por dia, a em-
presa conta com 42 horas de trabalho e com matéria prima que dá para
fabricar 13 brinquedos. Para fabricar um B1 que rende 50 euros são precisas
3 horas, enquanto que o fabrico de um brinquedo B2 que rende 60 euros
gasta 4 horas.
a) Determine quais produções diárias rendem 650 euros.
b) Determine qual é ao tipo de produção diária que dá o máximo lucro.

4.2
A companhia A. Madeira, Lda. fabrica dois tipos de móveis: mesas e cadeiras.
Uma mesa vende-se por 27 contos, e usa 10 contos de materiais. As cadeiras
vendem-se a 21 contos, e cada uma requer 9 contos de materiais.
Cada mesa construı́da aumenta os custos variáveis de trabalho e as despesas
gerais em 14 contos; cada produzida cadeira aumenta estes custos em 10
contos.
A construção de mesas e cadeiras requer dois tipos de trabalho especializa-
do: carpintaria e acabamentos. A produção de uma mesa requer 2 horas
de acabamentos e uma hora de carpintaria; uma cadeira requer 1 hora de
acabamentos e uma hora de carpintaria.
Em cada semana de trabalho, A. Madeira, Lda. pode obter todas as matérias
primas que forem necessárias, mas tem disponı́veis apenas 100 horas de
mão-de-obra para acabamentos, e 80 horas de mão-de-obra de carpinteiros.
A procura de cadeiras é ilimitada, mas a venda de mesas é de, no máximo,
40 unidades por semana. A empresa pretende maximizar o lucro semanal.

de Joao Pedro Pedroso


http://correio.cc.fc.ul.pt/ jpp/classes/iio-main/

4.3
Um construtor de automóveis tem em armazém 900 toneladas de metal com
que quer fabricar automóveis e camiões. Cada automóvel gasta 2 toneladas
de metal e 200 homens/hora, enquanto cada camião gasta 4 toneladas de
Departamento do Ensino Secundário -- Formação de Acompanhantes de Matemática [Programação Linear] 11

metal e 150 homens/hora de trabalho. Na totalidade, a empresa dispõe de


60000 homens/hora.
Com cada automóvel realiza-se uma lucro de 500 contos e em cada camião
realiza-se um lucro de 800 contos.
Quantos camiões e quantos carros se devem construir para obter um lucro
máximo?

4.4
Um fabricante de automóveis produz automóveis e camiões dividida em 2
linhas de fabrico. A primeira linha de fabrico que faz a operação básica da
montagem gasta 5 homens/dia em cada camião e 2 homens/dia em cada
automóvel. A segunda linha de fabrico, que realiza acabamentos, gasta 3
homens/dia em cada automóvel ou camião que produz. As limitações em
número de homens e máquinas são: enquanto na linha de montagem se
pode contar com um máximo de 180 homens/dia por semana, na linha de
acabamentos não se pode contar com mais de 135 homens/dia por semana.
Se o fabricante realiza um lucro de 300 contos em cada camião e 200 em cada
automóvel, quantos de cada um se deve produzir por semana de forma a
maximizar o lucro?

. Cruchinho, Fonseca, Lopes e Martins, Lda


Mangualde, Julho de 2001