Tópicos em otimização combinatória

Slides:



Advertisements
Apresentações semelhantes
AULA 02 PROGRAMAÇÃO LINEAR INTEIRA
Advertisements

Prof. M.Sc. Fábio Francisco da Costa Fontes Maio
Fluxo em Redes Prof. Ricardo R. Santos.
Análise de Sensibilidade
Prof. M.Sc. Fábio Francisco da Costa Fontes Agosto
Solved Exercises 1. Finding the Peak. Let A= a1,…,an be a sequence of n numbers with the following property: there is p in {1,…,n} for which (i) the.
CONTEÚDO PROGRAMÁTICO
1 Optimização Na programação por restrições, há que considerar não apenas a satisfação de restrições mas também a optimização de uma função objectivo.
Prof. M.Sc. Fábio Francisco da Costa Fontes Outubro
Prof. M.Sc. Fábio Francisco da Costa Fontes Agosto
Problemas de Forma Não-padrão
Modelos Matemáticos utilizados na PO
Programação Linear Método Simplex
PARTIÇÃO DE BENDERS Secundino Soares Filho Unicamp.
Uma aplicação de Programação Linear em uma empresa de serviços
Então, vamos lá! Qual é esse conteúdo?
EQUAÇÕES POLINOMIAIS Prof. Marlon.
Profa Úrsula Lisbôa Fernades Ribeiro
Método Simplex (Noções iniciais) Sistemas de Equações Lineares
Profa Úrsula Lisbôa Fernades Ribeiro
Tópico Avançados em Sistemas de Computação (Pesquisa Operacional)
TEORIA DAS RESTRIÇÕES Prof Samir Silveira.
SIMPLEX ANÁLISE COMPLETA ANDERSON BESTETTI 1, EDUARDO RIGHES 1, EVERTON FONTOURA 2, GUILHERME LAZZARI 3, RODRIGO SCHRAMM 3, ROGERIO MARTINS 4 1 {anderson.bestetti,
Programação Linear.
Quantidade de Pedidos Prof. Reinaldo Di Lucia 1º Semestre de 2011.
Programação Linear - Prof. Helder Costa
Para uma boa alimentação, o corpo necessita de
EAL ESTATÍSTICA, PLANEJAMENTO E OTIMIZAÇÃO DE EXPERIMENTOS
PROGRAMAÇÃO INTEIRA 27 de maio de 2014.
Classificação. Classificação: Atribuição a uma classe (rótulo de um atributo categórico). Classifica dados (constrói um modelo) baseado em um conjunto.
A NOÇÃO DE FUNÇÃO Belo Horizonte 2012
O processo de decisão dos agentes econômicos
Otimização Inteira 5a. Aula Franklina.
Conceitos Básicos Alysson e Franklina 2ºs/
Tópicos em otimização combinatória
Tópicos em otimização combinatória
Programação inteira Introdução.
Universidade Federal de São Carlos Universidade de São Paulo
Tópicos em otimização combinatória
Alysson M. Costa – ICMC/USP Tópicos em otimização combinatória Heurísticas construtivas Análise de qualidade: análise de pior caso Aula baseada em material.
Programação Linear Rosa Canelas Janeiro 2008.
Alexis Adriano da Silva Vitek Consultoria Ltda.
PROBLEMAS DE ALOCAÇÃO DE RECURSOS: PROGRAMAÇÃO LINEAR
INTRODUÇÃO À ANÁLISE COMBINATÓRIA
AULA COMPUTACIONAL - Síntese de Sistemas de Separação (Cap. 7) 20 DE OUTUBRO DE 2008.
Aula 5 Programação Inteira
Animação Autodesk inventor
1 A COMPUTAÇÃO MODERNA Valdemar W. Setzer Depto. de Ciência da Computação da USP
Análise e Projeto de Sistemas
Cálculo da Direção de Caminhada: Gradiente de f(x)
ORÇAMENTO EMPRESARIAL - FACITEC Prof. CARLOS EDUARDO MARINHO DINIZ
Construção e Análise de Algoritmos
Usando o Solver em PL Pontifícia Universidade Católica de Goiás
O Problema de Corte de Estoque
Introdução Prof. Antonio Carlos Coelho
AULA 3 - Construindo Modelos Matemáticos
Capitulo 8: Dualidade O que é um modelo Dual?
Programação Linear Daniel de Oliveira Isadora Mendes José Alípio
Problemas de Forma Não-Padrão
Aplicações Reais.
XIII Semana da Matemática Mini curso 7 Modelagem de Problemas de Otimização Socorro Rangel (DCCE)
Capítulo 9: SAD orientado a Modelo
O Problema do Corte Unidimensional
INTRODUÇÃO AOS MÉTODOS NUMÉRICOS Professor: Dr. Edwin B. Mitacc Meza
Maria do Socorro Nogueira Rangel DCCE
2 - Portfólio de Investimentos
Pesquisa Operacional Profa. Leila Jane Brum Lage Sena Guimarães
Pesquisa Operacional:
Disciplina: Otimização Econômica
PROBLEMAS DE TRANSPORTE
Transcrição da apresentação:

Tópicos em otimização combinatória Revisão: formulação matemática e métodos de resolução Alysson M. Costa – ICMC/USP

Modelos algumas Modelo: estrutura construída com o intuíto de exibir/demonstrar/reproduzir características de outros objetos.1 1(Model building in Mathematical Programming - Williams)

Utilidade de modelos em Programação Matemática 4 mar 2009 . 11:37 Utilidade de modelos em Programação Matemática Permitem a obtenção de respostas (conjunto de valores para as variáveis que atendem os requisitos do modelo). Estas respostas podem ser usadas diretamente na prática ou como um indicativo do que seria uma boa solução prática. Criam insights.

Utilidade de modelos em Programação Matemática 4 mar 2009 . 11:37 Utilidade de modelos em Programação Matemática O processo de criação (e resolução) do modelo também é útil por si só: Exigem a obtenção de dados que (muitas vezes) estão escondidos nas empresas e situações práticas (conhecimento do processo) Exigem um formalismo que elimina (ou ajuda a eliminar) ambiguidades sobre o que se deseja de uma solução.

Utilidade de modelos em Programação Matemática 4 mar 2009 . 11:37 Utilidade de modelos em Programação Matemática Permitem experimentações que não seriam possíveis na prática: Por questões de custo Por questões legais ...

Modelos de programação linear Problema da dieta: Sabendo que cada alimento tem um certo custo e uma certa quantidade de nutrientes. Qual a dieta (de menor custo) que atende as restrições nutricionais ? Grão Qtd Mínima Nutriente 1 2 3 A 7 10 B 4 15 C 8 D 30 Custo/Kg 20

Formulando Perguntas: Variáveis Restrições Objetivo Grão Qtd Mínima Nutriente 1 2 3 A 7 10 B 4 15 C 8 D 30 Custo/Kg 20 Perguntas: O que precisamos decidir ? Variáveis Quais são as condições sobre estas decisões ? Restrições O que queremos ? Objetivo

Formulando Variáveis: x1, x2, x3 xi = qtd. do grão i. Variáveis ? Mínima Nutriente 1 2 3 A 7 10 B 4 15 C 8 D 30 Custo/Kg 20 Variáveis: x1, x2, x3 xi = qtd. do grão i. Variáveis ? Quanto do grão 1 vamos incluir na dieta: x1 Quanto do grão 2 vamos incluir na dieta: x2 Quanto do grão 3 vamos incluir na dieta: x3

Formulando Variáveis: x1, x2, x3 xi = qtd. do grão i. Restrições: Mínima Nutriente 1 2 3 A 7 10 B 4 15 C 8 D 30 Custo/Kg 20 Variáveis: x1, x2, x3 xi = qtd. do grão i. Restrições ? Quantas unidades do nutriente A, no mínimo: 10 Quantas unidades do nutriente B, no mínimo: 15 Quantas unidades do nutriente C, no mínimo: 10 Quantas unidades do nutriente D, no mínimo: 2 Restrições: NA,Nc ¸ 10 NB ¸ 15 ND ¸ 2

Formulando Variáveis: x1, x2, x3 xi = qtd. do grão i. Restrições: Mínima Nutriente 1 2 3 A 7 10 B 4 15 C 8 D 30 Custo/Kg 20 Variáveis: x1, x2, x3 xi = qtd. do grão i. Restrições: NA,Nc ¸ 10 NB ¸ 15 ND ¸ 2 Pecisamos escrever NA...ND em função das variáveis (tudo precisa ser escrito em função das variáveis usadas) NA = 2x1 + 3x2 + 7x3 NB = 4x1 + 2x2 + x3 NC = x1 + 8x2 + x3 ND = 30x1 + x2 + x3

Formulando Variáveis: x1, x2, x3 xi = qtd. do grão i. Restrições: Mínima Nutriente 1 2 3 A 7 10 B 4 15 C 8 D 30 Custo/Kg 20 Variáveis: x1, x2, x3 xi = qtd. do grão i. Restrições: NA,Nc ¸ 10 NB ¸ 15 ND ¸ 2 Objetivo: Min 20x1 + 10x2 + 10x3 Objetivo Min Custo: 20x1 + 10x2 + 10x3

4 mar 2009 . 11:37 De maneira geral De maneira geral, um problema de otimização modelado linearmente pode ser escrito na forma abaixo: Min cx s.a. Ax · b x ¸ 0

Testando soluções (Solver do Microsoft Excel – também presente em distribuições similares open-source, como o OpenOffice )

O que está por trás do “solver” ? 4 mar 2009 . 11:37 O que está por trás do “solver” ? Algoritmo Simplex (Dantzig, 1947) Créditos da imagem: Wikimedia commons

O que está por trás do “solver” ? 4 mar 2009 . 11:37 O que está por trás do “solver” ? Algoritmo Simplex: maneira matemática de expressar os pontos extremos de uma região formada por restrições lineares e estratégia para passar de um ponto a outro (de melhor função objetivo que o ponto inicial). "If one would take statistics about which mathematical problem is using up most of the computer time in the world, then ... the answer would probably be linear programming. (Laszlo Lovasz)"

Limitação importante do simplex 4 mar 2009 . 11:37 Limitação importante do simplex

Exercício (Móveis I) Uma indústria moveleira dispõe de dois tipos de peças de madeira, A e B, usadas para construir mesas e cadeiras. A B Mesas (Lucro $90): usa duas peças do tipo A e duas do tipo B Cadeiras (Lucro $60): usa duas peças do tipo A e uma peça do tipo B Total disponível: 14 peças A, 8 peças B.

Solução x1 - quantidade produzida de mesas x2 - quantidade produzida de cadeiras Max 90x1 + 60x2 s.a. 2x1 + 2x2 · 14 (restrição nas peças do tipo A) 2x1 + x2 · 8 (restrição nas peças do tipo B)

4 mar 2009 . 11:37

Muitos problemas necessitam variáveis inteiras 4 mar 2009 . 11:37 Muitos problemas necessitam variáveis inteiras Seja porque as variáveis... são inteiras por natureza. Seja porque variáveis inteiras são necessárias para modelagem do problema

Ex: Utilização de variáveis binárias Decisão sobre uma atitude (fazer ou não fazer, comprar ou não comprar...).

Caso 1: implicações se-então A) Custo fixo: A produção de um item (o envio de uma mercadoria, a decisão de se tomar um taxi, etc) implica em um custo fixo, por exemplo, de preparação da máquina (de pagamento do custo mínimo de envio, da taxa inicial do taxi, etc). Antigamente tínhamos: x = quantidade produzida do ítem

Custo de produção: Como modelar de maneira linear ? Dica: precisamos do auxílio de uma variável binária.

Seja uma variável binária y, tal que y vale 1 se x>0 e y vale 0 caso contrário. Como associar x e y ? M é um valor suficientemente grande (produção máxima x)

4 mar 2009 . 11:37 O modelo geral fica De maneira geral, um problema de otimização modelado linearmente pode ser escrito na forma abaixo: Min cx s.a. Ax + Dy · b x ¸ 0, y ¸ 0 e inteiro

O que acontece com o simplex ? Região factível:

Uma solução (branch-and-bound) ¸ 2 factível!

No pior caso teríamos que ramificar até as folhas da árvore... ... ...

Muito comum para problemas reais... 4 mar 2009 . 11:37 Muito comum para problemas reais... Apesar dos avanços dos computadores e dos métodos de resolução, ainda é muito comum encontrar problemas para os quais: Dias de simulação transcorrem sem que se encontre sequer uma solução factível. A memória (por maior que seja) se torna insuficiente. (estes fatos são boas justificativas – entre outras – para a utilização de métodos como os que serão vistos neste curso)