xiii semana da matemática mini curso 7 modelagem de problemas de otimização socorro rangel (dcce)...

39
XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) http://www.dcce.ibilce.unesp.br/~socorro/ XIIISEMAT/new1705/

Upload: ayrton-porto-ximenes

Post on 07-Apr-2016

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

XIII Semana da MatemáticaMini curso 7

Modelagem de Problemas de Otimização

Socorro Rangel (DCCE)http://www.dcce.ibilce.unesp.br/~socorro/XIIISEMAT/new1705/

Page 2: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

2

ÍndiceParte I Modelagem de Problemas

Parte IIIConceitos de Teoria dos GrafosO problema da DesignaçãoO problema do Caixeiro Viajante

Parte IIO Problema da MochilaO Problema do Corte UnidimensionalO problema do Corte Bidimensional

Page 3: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

3

Construção de Modelos MatemáticosConstrução de Modelos Matemáticos

Sistema Real

Definição e Descrição do Problema

Modelo Matemático

Solução do Modelo

Implementação da Solução

Simplificação

Decisão Teórica x Política

Revisão

Page 4: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

4

Elementos de um modelo matemático

DECISÕES

Identificar quais decisões efetivamente resolvem o problema.O que não conhecemos no problema?

RESTRIÇÕES

Identificar quais as restrições que limitam as decisões a tomar

OBJETIVOS

Definir objetivos capazes de indicar que uma decisão é preferível a outras

Page 5: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

5

Forma Geral de um Modelo de Otimização

min ou max (funções objetivo)

sujeito a(restrições principais - equações ou

inequações)

(tipo das variáveis de decisão)

Page 6: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

6

Modelos de Otimização

• Modelos lineares• Não lineares• Discretos• Mistos

Page 7: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

7

Modelo de Otimização Linear

ou , ,ser pode~onde0,...,

~......

~...~...

a sujeito...max)min(

21

2211

22222122

11212111

2211

n

mnmnmm

nn

nn

nn

xxxbxaxaxa

bxaxaxabxaxaxa

xcxcxczou

Page 8: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

8

Modelo de otimização Não Linear

contínuas funções são g, eou , ,ser pode~onde

~),...,(g...

~),...,(g~),...,(g

a sujeito),...,(max)min(

i

21m

2212

1211

21

f

bxxx

bxxxbxxx

xxxfzou

mn

n

n

n

Page 9: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

9

Modelo de Otimização Linear Discreta

ou , ,ser pode~ondeinteiras e ,0,...,

~......

~...~...

a sujeito...max)min(

21

2211

22222122

11212111

2211

n

mnmnmm

nn

nn

nn

xxxbxaxaxa

bxaxaxabxaxaxa

xcxcxczou

Page 10: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

10

Construindo um modelo matemático

DECISÕES

Identificar quais decisões efetivamente resolvem o problemaDefinir Variáveis de decisão

RESTRIÇÕES

Identificar quais as restrições que limitam as decisões a tomarDefinir Conjunto de equações ou inequações

OBJETIVOS

Definir objetivos capazes de indicar que uma decisão é preferível a outrasDefinir Função Objetivo

Page 11: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

11

Problema: Paula deseja saber quanto gastar para fazer uma dieta alimentar que forneça diariamente toda a energia, proteína e cálcio que ela necessita.

Exemplo Linear

Page 12: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

12

Problema: Paula deseja saber quanto gastar para fazer uma dieta alimentar que forneça diariamente toda a energia, proteína e cálcio que ela necessita. Seu médico recomendou que ela se alimente de forma a obter diariamente no mínimo 2000 kcal de energia, 65g de proteína e 800 mg de cálcio.

Exemplo Linear

Page 13: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

13

Problema: Paula deseja saber quanto gastar para fazer uma dieta alimentar que forneça diariamente toda a energia, proteína e cálcio que ela necessita. Seu médico recomendou que ela se alimente de forma a obter diariamente no mínimo 2000 kcal de energia, 65g de proteína e 800 mg de cálcio. O Valor nutritivo e o preço (pôr porção) de cada alimento que ela esta considerando comprar é dado na tabela 1 abaixo.

Tabela 1 – Valor nutritivo e custo dos alimentos

alimento tamanhoda porção

energia(kcal)

Proteína(g)

cálcio(mg)

preço p/porção

(centavos)arroz 100g 205 32 12 14ovos 2un 160 13 54 13leite 237ml 160 8 285 9

feijão 260g 260 14 80 19

Exemplo Linear

Quanto de cada alimento Paula deve consumir?

Page 14: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

14

Construindo um modelo para o Problema da Dieta

Neste problema temos:

elementos conhecidos: valor nutritivo dos alimentos, custo dos alimentos

Page 15: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

15

Construindo um modelo para o Problema da Dieta

Neste problema temos:

elementos conhecidos: valor nutritivo dos alimentos, custo dos alimentos

elementos desconhecidos: quanto consumir de cada alimento

Page 16: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

16

Construindo um modelo para o Problema da Dieta

Neste problema temos:

elementos conhecidos: valor nutritivo dos alimentos, custo dos alimentos

elementos desconhecidos: quanto consumir de cada alimento

objetivo a ser alcançado: obter uma dieta de baixo custo

Page 17: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

17

Construindo um modelo para o Problema da Dieta

Neste problema temos:

elementos conhecidos: valor nutritivo dos alimentos, custo dos alimentos

elementos desconhecidos: quanto consumir de cada alimento

objetivo a ser alcançado: obter uma dieta de baixo custo

restrições: a dieta deve fornecer uma quantidade mínima de nutrientes.

Page 18: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

18

Construindo um modelo para o Problema da Dieta

VARIÁVEIS DE DECISÃO

A dieta deve ser feita a partir de 4 itens: arroz, ovos, leite, feijão.

Faça j = 1,2,3,4 representar respectivamente cada um dos itens

Defina então:

xj = número de porções adquirida do alimento j para ser usada na dieta

Page 19: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

19

Construindo um modelo para o Problema da Dieta

ObjetivoObjetivoObter a dieta de menor custo possível. Proporcionalidade:1 porção de arroz ==> 14 centavos,2 porções de arroz ==> 28 centavos, x1 porções de arroz ==> 14* x1 centavos. gasto associado a compra de ovos: 13 x2

Aditividade gasto total com arroz e ovos é dado pôr:

14 x1 +13 x2

Custo total da dieta é então: 4321 1991314min xxxxz

Page 20: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

20

Construindo um modelo para o Problema da Dieta

RestriçõesObter quantidade mínima de nutrientes:energia:1 porção de arroz ==> 205 kcal 1 porção de ovos ==> 160 kcal1 porção de leite ==> 160 kcal 1 porção de feijão ==>260 kcal

quantidade total de energia >= quantidade mínima Proporcionalidade e aditividade

Temos:

2000260160160205 4321 xxxx

Page 21: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

21

Modelo de Otimização Linear Para o Problema da Dieta

4321 1991314min xxxxz

sujeito a:

2000260160160205 4321 xxxx (energia)

651481332 4321 xxxx (proteína)

800802855412 4321 xxxx ( cálcio)

4,3,2,1,0 jx j

Page 22: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

22

Solução Para o Problema da Dieta

Software LINDO :LP OPTIMUM FOUND AT STEP 1 OBJECTIVE FUNCTION VALUE

1) 112.500VARIABLE VALUE

X1 0.000000 (arroz) X2 0.000000 (ovos) X3 12.500000 (leite)

X4 0.000000 (feijão)Isto é consumir 12.5* 237ml = 2,9625 l de leite

e gastar com a dieta 112,5 u.m.

Esta solução é aceitável?

Page 23: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

23

Novo Modelo Para o Problema da Dieta

Se limitarmos a quantidade de leite na dieta:No máximo 2 porções

4321 1991314min xxxxz

sujeito a:

2000260160160205 4321 xxxx

651481332 4321 xxxx800802855412 4321 xxxx

4,2,1,0 jx j x32

Page 24: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

24

Nova Solução Para o Problema da Dieta

Software LINDO :OBJECTIVE FUNCTION VALUE

1) 135.2598 VARIABLE VALUE

X1 5.617470 X2 0.000000 X3 2.000000

X4 2.032380 Isto é consumir:

5.617470*100g = 561.747 g de arroz 2* 237ml = 474m l de leite

2.032380*260g = 528,4188 g de feijão

e gastar com a dieta 135,2598 u.m.

Page 25: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

25

Exemplo Não Linear

Problema: Construa um modelo matemático que determina o retângulo de área máxima cujo perímetro seja no máximo 80 metros.

L

C

Área do retângulo: Largura x Comprimento Perímetro: soma do tamanho dos lados

Page 26: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

26

Construindo um Modelo para o Problema do Retângulo

Neste problema temos:

elementos conhecidos: fórmulas para calcular perímetro e área do

retângulo

Page 27: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

27

Construindo um Modelo para o Problema do Retângulo

Neste problema temos:

elementos conhecidos: fórmulas para calcular perímetro e área do

retângulo

elementos desconhecidos: comprimento e largura do retângulo

Page 28: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

28

Construindo um Modelo para o Problema do Retângulo

Neste problema temos:

elementos conhecidos: fórmulas para calcular perímetro e área do

retângulo

elementos desconhecidos: comprimento e largura do retângulo

objetivo a ser alcançado: obter um retângulo de maior área possível

Page 29: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

29

Construindo um Modelo para o Problema do Retângulo

Neste problema temos:

elementos conhecidos: fórmulas para calcular perímetro e área do

retângulo

elementos desconhecidos: comprimento e largura do retângulo

objetivo a ser alcançado: obter um retângulo de maior área possível

restrições: perímetro do retângulo deve menor ou igual a oitenta metros

Page 30: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

30

Construindo um Modelo para o Problema do Retângulo

Variáveis de decisãolargura: L em metrosComprimento: C em metros

RESTRIÇÕES O perímetro do retângulo = 2*L + 2* C deve ser no máximo igual a 80 metros

2L + 2 C <= 80

OBJETIVOSÁrea do retângulo = L*C deve ser a maior possível :

max f(L,C) = L*C

Page 31: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

31

Um modelo Não Linear para o Problema do Retângulo

Max f(L,C) = LC

sujeito a 2L + 2C <= 80

L, C >= 0Solução ótima:

L = C = 20

Page 32: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

32

Exemplo Linear Discreto

Problema: Considere uma mochila com capacidade limitada e diversos itens com pesos e valores conhecidos.

Page 33: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

33

Exemplo Linear Discreto

Problema: Considere uma mochila com capacidade limitada e diversos itens com pesos e valores conhecidos. O problema da mochila consiste em determinar um subconjunto destes itens cujo peso total não exceda a capacidade da mochila e cujo valor total seja o maior possível.

Page 34: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

34

Construindo um modelo para Problema da Mochila

Neste problema temos:

elementos conhecidos: peso e valor de cada ítem (p,v), capacidade

máxima da mochila ( C ). Suponha que não existem dois itens com o

mesmo par de valor e peso.

Page 35: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

35

Construindo um modelo para Problema da Mochila

Neste problema temos:

elementos conhecidos: peso e valor de cada ítem (p,v), capacidade

máxima da mochila ( C ). Suponha que não existem dois itens com o

mesmo par de valor e peso.

elementos desconhecidos: se um determinado elemento será

incluído ou não na mochila.

Page 36: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

36

Construindo um modelo para Problema da Mochila

Neste problema temos:

elementos conhecidos: peso e valor de cada ítem (p,v), capacidade

máxima da mochila ( C ). Suponha que não existem dois itens com o

mesmo par de valor e peso.

elementos desconhecidos: se um determinado elemento será

incluído ou não na mochila

objetivo a ser alcançado: o valor total dos itens incluídos na

mochila deve ser o maior possível

Page 37: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

37

Construindo um modelo para Problema da Mochila

Neste problema temos:

elementos conhecidos: peso e valor de cada ítem (p,v), capacidade

máxima da mochila ( C ). Suponha que não existem dois itens com o

mesmo par de valor e peso.

elementos desconhecidos: se um determinado elemento será

incluído ou não na mochila

objetivo a ser alcançado: o valor total dos itens incluídos na

mochila deve ser o maior possível

restrições: o peso total dos itens incluídos na mochila não deve

exceder a capacidade da mesma

Page 38: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

38

Construindo um modelo para Problema da Mochila

n1,...,j

contrário caso 0

mochila na incluídofor j item o se 1

jx

Variáveis de decisão

RestriçõesA soma total do peso dos itens não deve exceder a capacidade da mochila:

Cxpxpxp nn ...2211

OBJETIVOO valor total dos itens incluídos na mochila deve ser o maior possível.

nn xvxvxv ...zmax 2211

Page 39: XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE) socorro/XIIISEMAT/new1705

39

Um modelo Linear Discreto Para o Problema da Mochila

n1,...,j 1/0 jx

Cxpxpxp nn ...2211

Sujeito a

nn xvxvxv ...zmax 2211