Prof. Renato de Sousa Gomide Objetivos • Apresentar conceitos utilizados em programação matemática • Listar e explicar as suposições da programação linear Conceitos-chave da programação linear • Programação linear trata do problema de alocação ótima de recursos escassos para a realização de atividades • O que é ótimo? • Não existe outra solução melhor do que a oferecida • Pode haver outras tão boas quanto • Recursos escassos representa a existência finita de recursos • Atividades se relacionam com algum interesse • Fabricação de produtos • Mistura de substâncias • Atendimento ao público... Modelo • Representação simplificada da realizada expressa por equações matemáticas que serve para simulá-la • Exemplo • Modelo que representa a distribuição de refrigerantes e clientes de uma engarrafadora de bebidas • A qualidade do modelo está relacionada com a significância das respostas • Representar um principais características de um sistema com a maior simplicidade possível Variáveis de decisão • Variáveis utilizadas no modelo • Podem ser controladas pelo tomador de decisão • Exemplo • Número de caminhões que a engarrafadora deve despachar num determinado dia Parâmetros • Variáveis utilizadas no modelo que não podem ser controladas pelo tomador de decisão • Exemplo • Capacidade de cada caminhão que vai transportar o refrigerante Função-objetivo • Função matemática que representa o principal objetivo do tomador de decisão • Dois tipos • Minimização (custos, erros, chance de perda...) • Maximização (lucro, receita, utilidade, bem-estar...) • Exemplo • Minimizar custos de transporte relativos à distribuição de refrigerante Restrições • Regras que dizem o que podemos (ou não) fazer • Quais são as limitações dos recursos ou das atividades associadas ao modelo • Exemplo • Número total de caminhões despachados pela manhã é menor ou igual ao número de motoristas que a empresa tem à disposição no primeiro turno Função linear • Uma função 𝑓 𝑥1 , 𝑥2 , … , 𝑥𝑛 das variáveis 𝑥1 , 𝑥2 , … , 𝑥𝑛 é uma função linear se for do tipo 𝑓 𝑥1 , 𝑥2 , … , 𝑥𝑛 = 𝑐1 𝑥1 + 𝑐2 𝑥2 + ⋯ + 𝑐𝑛 𝑥𝑛 , sendo 𝑐1 , 𝑐2 , … , 𝑐𝑛 valores constantes • Exemplo • 𝑓 𝑥1 , 𝑥2 = 2𝑥1 + 5𝑥2 é um função linear, ao passo que as funções 𝑓 𝑥1 , 𝑥2 = 5𝑥1 𝑥2 e 𝑓 𝑎, 𝑏 = 𝑎𝑏 3 + 2 são não lineares Algoritmo • Sequência de instruções que para uma determinada entrada, gera um determinado resultado • Exemplo • Uma receita de culinária é um exemplo clássico de algoritmo Algoritmo de programação linear • Contempla: • As variáveis as quais temos poder para alterar • Os parâmetros, que são variáveis e os quais não temos poder para alterar • As restrições que combinam variáveis e parâmetros para estabelecer regras • Uma “montagem” ou modelo que contemplam parâmetros, variáveis, função-objetivo e restrições • Representa o problema real em análise utilizando somente funções lineares Solução • Atribuições de valores às variáveis de decisão • Existem soluções viáveis, inviáveis e ótimas • Solução viável • Valores das variáveis de decisão atendem todas as restrições • Solução inviável • Valores das variáveis de decisão fazem com que pelo menos uma das restrições não seja atendida • Solução ótima • Além de ser viável, gera uma valor de função-objetivo extremo Suposições da programação linear Suposições da programação linear • Divisibilidade • As variáveis podem ter valores fracionados • Não se pode exigir que as variáveis sejam inteiras • O arredondamento pode levar à solução errada • Aditividade • Relacionamento entre variáveis são sempre adições e subtrações, nunca outras operações • Não há relação de dependência funcional entre variáveis Suposições da programação linear • Proporcionalidade • Contribuições de cada variável de decisão são proporcionais ao seu próprio valor • Certeza • Todos os parâmetros utilizados nos modelos são conhecidos com certeza • Muitas vezes acontece de essa suposição não ser verdadeira