940 likes | 1.21k Views
Programação inteira. Modelagem. Aula baseada em diversas fontes: “Integer programming” de L. Wolsey, 1998. “Pesquisa operacional” de Arenales et al., 2007. Slides do Prof. Celso Carneiro Apostila “Programação da produção”, Prof. Marcos N. Arenales. Conceitos básicos.
E N D
Programação inteira Modelagem Aula baseada em diversas fontes: “Integer programming” de L. Wolsey, 1998. “Pesquisa operacional” de Arenales et al., 2007. Slides do Prof. Celso Carneiro Apostila “Programação da produção”, Prof. Marcos N. Arenales
(problema de programação linear inteiro misto) (problema de programação linear inteiro) (problema de programação binária) forma geral Baseado em “Integer programming” - Wolsey, 1998.
problema de otimização combinatória • Onde N={1,...,n} (finito) • é o conjunto de subconjuntos factíveis de n. (cada conjunto tem um custo cj e o objetivo é escolher o melhor deles) (problema de otimização combinatória) Baseado em “Integer programming” - Wolsey, 1998.
(Re)defina variáveis A partir das variáveis, defina restrições cujos pontos factíveis correspondam aos pontos factíveis do problema. A partir das variáveis, defina a função objetivo. Dificuldade ? Formulando • Varíáveis £ parâmetros. • “Algoritmo” Wolsey: Baseado em “Integer programming” - Wolsey, 1998.
inteiro ? • Voltando à justificativa de Land e Doig: • Por que não arredondar ?
Resolução via arredondamento • Ideia: eficiência do simplex £ similaridade dos problemas inteiros com os problemas contínuos. • Dificuldade: Situação ainda mais crítica para problemas binários. Baseado em “Integer programming” - Wolsey, 1998.
três situações • Nos slides a seguir, vamos modelar três problemas de programação linear e estudar a necessidade (ou não) do uso de variáveis inteiras. (Slides do Prof. Celso Carneiro Ribeiro Universidade Federal Fluminense.)
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.
Necessidade das variáveis inteiras (pela própria característica das variáveis – justificativa de Land e Doig e dos slides anteriores); • Outra situação: • Necessitamos das variáveis inteiras como um artifício de modelagem. [em particular, vejamos o caso em que necessitamos de variáveis binárias]
Utilização de variáveis binárias Decisão sobre uma atitude (fazer ou não fazer, comprar ou não comprar...). Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
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). Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Custo de produção: Como modelar de maneira linear ? Dica: precisamos do auxílio de uma variável binária. Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
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) Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Caso 1: implicações se-então • B) Produção de itens: • Considere o caso em que, se o produto 1 é fabricado, o produto 2 também deve ser. logo, podemos forçar: Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Restrições: y é uma variável que indica se 2,3 ou 4 foram produzidos Outra forma ? Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Caso 2: restrições disjuntivas • Às vezes, deseja-se aplicar apenas uma de um conjunto de restrições: ex: quero um carro que faça 20km/litro OU que atinja 100km/h em 4s. Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
De maneira geral: OU Se y=1, f()≤0 está ativada Se y=0, g()≤0 está ativada Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Valor de M Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Caso 3: Relações lógicas • Variáveis binárias podem ser usadas para representar relações lógicas. Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
ou Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
O que é melhor ? ou Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
Caso 4: Representação de valores discretos Slide baseado no livro “Pesquisa Operacional”, Arenales et al., 2007
(Muito breve) introdução à teoria de variáveis lógicas (TVL)
Proposição: • simpes: variável binária • composta: modificação de uma proposição por uma negação ou composição de proposições. Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
Tabelas verdade Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
Outras restrições “linearização” forma lógica Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
“Linearizações” usando TVL • Teorema útil... Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
“Linearizações” • Introduzimos duas variáveis tais que: Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
“Linearizações” (1-1) = 0 pelo teorema: pelo teorema: Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
“Linearizações” Com equações similares para g(x), temos: E uma última restrição, indicando que apenas uma das duas situações ocorre: Slide baseado no livro “Linear and integer programming”, Sierksma, 1996
Outro exemplo • Linearizar (teorema)
Outro exemplo • Linearizar (teorema)
Problemas clássicos • Importância histórica... ... e prática. • Usados para modelar problemas reais e como subproblemas em problemas maiores (e mais frequentes na prática).
Problema da mochila • Idéia básica: diversos ítens, cada um com um valor de utilidade e um peso. Queremos levar a maior soma de utilidades possível (não podemos ultrapassar a capacidade da mochila)
Slide do Prof. Celso Carneiro Ribeiro - Universidade Federal Fluminense.