Aula 24 Planejamento e Análise de Sistemas de Produção Paulo Augusto Valente Ferreira Departamento de Telemática Faculdade de Engenharia Elétrica e Computação Universidade Estadual de Campinas
Conteúdo Aula 24 1 Modelos de Programação Inteira
Modelagem com Variáveis Binárias Modelam a ocorrência ou não de um evento: { 1, se o evento ocorre; y = 0, caso contrário. Exemplo 1: produção com custo fixo, c f, { cf + cx, se x > 0, c(x) = 0, se x = 0, é representada por c(x) = c f y + cx, x My, onde M é um limitante superior para x e y é binária; Se x > 0 então y = 1 e c(x) = c f + cx; (x, y) = (0, 0) e (x, y) = (0, 1) são viáveis, mas (0, 0) minimiza c(x).
Modelagem com Variáveis Binárias Exemplo 2: na produção de itens, para descrever se o item 1 é fabricado então o item 2 é fabricado; A condição equivale a y = { 1, se x1 > 0, 0, caso contrário, x 1 My, onde M é um limitante superior de x 1 ; Quando x 1 > 0 (isto é, y = 1) deve-se obter x 2 > 0. Consegue-se isso com x 2 my, onde m é um limitante inferior de x 2.
Modelagem com Variáveis Binárias Exemplo 3: em implicações, para descrever f(x) > 0 implica g(x) 0; Seja M muito grande tal que f(x) M, g(x) M para qualquer x (x = (x 1, x 2,...,x n )); A implicação é equivalente a g(x) My, f(x) M(1 y); Se f(x) > 0, então y = 0 e g(x) 0.
Modelagem com Variáveis Binárias Exemplo 3: n itens podem ser produzidos numa máquina j. Se o item k é produzido em j, os demais são produzidos em outras máquinas. Defina { 1, se i é produzido em j, x ij = 0, caso contrário; Então x kj = 1 implica x ij = 0 para todo i k, ou x kj > 0 implica x ij 0, x ij 0; i k i k Escolhendo-se M = n 1, tem-se a equivalência com x ij (n 1)y, x kj (n 1)(1 y). i k
Modelagem com Variáveis Binárias Exemplo 4: incorporar e desincorporar desigualdades; Se y é uma variável binária, defina { 1, para incorporar f(x) 0, y = 0, para desincorporar f(x) 0; Seja M tal que f(x) M para todo x. A incorporação ou desincorporação de f(x) 0 é equivalente a f(x) M(1 y); Se y = 1, então f(x) 0. Se y = 0, então f(x) M, o que é sempre verdade.
Problema das Múltiplas Mochilas Deve-se distribuir n itens em m mochilas de capacidades b i, i = 1, 2,...,m; o item j vale p j e pesa a j ; Problema frequente em carregamento de contêineres e corte de materiais em indústrias de papel e aço; Problema de otimização: m n maximizar p j x ij i=1 j=1 n (PMM) sujeito a a j x ij b i, i = 1, 2,...,m, j=1 m x ij 1, j = 1, 2,...,n, i=1 x ij = 0 ou x ij = 1, i(j) = 1, 2,...,m(n).
Problema de Corte Unidimensional Cortar barras disponíveis no tamanho L para produzir m barras menores (itens) com tamanhos l 1, l 2,...,l m ; Existem n barras de tamanho L. As demandas por barras menores são b 1, b 2,...,b m ; Deve-se minimizar o número de barras usadas. Defina { 1, se a barra i é usada, y i = 0, caso contrário x ij, número de vezes que o item j é cortado na barra i; Problema envolve n variáveis binárias e mn variáveis inteiras não-negativas.
Problema de Corte Unidimensional Problema de otimização: n minimizar y i i=1 n sujeito a x ij b j, j = 1, 2,...,m, (PCU) i=1 m l j x ij Ly i, i = 1, 2,...,n, j=1 y i = 0 ou y i = 1, i = 1, 2,...,n, x ij Z +, i(j) = 1, 2,...,n(m); Pelas últimas n restrições, uma barra é cortada (y i = 1) respeitando-se o comprimento total L.
Problema de Corte Unidimensional Equivalente a colocar m itens (barras menores) numa mochila (barra) de capacidade (tamanho) L; Teoricamente é possível enumerar as soluções inteiras que satisfazem a restrição de forma máxima; Essas soluções são chamadas de padrões de corte. A sobra da barra é zero ou uma fração de min 1 j m l j ; Exemplo: L = 11, m = 4, l 1 = 2, l 2 = 3, l 3 = 3.5 e l 4 = 4. Alguns padrões de corte: 2, 2, 2, 2, 2, sobrando 1; 3, 4, 4, sobrando 0; 3, 3.5, 4, sobrando 0.5.
Problema de Corte Unidimensional Seja N o número total de padrões de corte. Defina o vetor b = (b 1, b 2,...,b m ) e para cada padrão de corte, a j = (a 1j, a 2j,...,a mj ), a ij = no. de barras i no padrão j; Exemplo: a 1 = (5, 0, 0, 0), a 2 = (0, 1, 0, 2), a 3 = (0, 1, 1, 1); Seja x j = número de barras cortadas no padrão j. Então o problema é equivalente a N minimizar x j j=1 (PCU) N sujeito a a j x j = b, j=1 x j Z +, j = 1, 2,...,N.
Problema da Designação Generalizado Deve-se designar m trabalhadores a n tarefas; m < n; Cada tarefa é executada por um único trabalhador. Um trabalhador pode executar mais de uma tarefa; A tarefa j consome a ij e custa c ij quando executada pelo trabalhador i. O trabalhador i dispõe de b i (e.g., horas); Problema de otimização: minimizar m n i=1 j=1 c ijx ij sujeito a m i=1 (PDG) x ij = 1, j = 1, 2,...,n, n j=1 a ijx ij b i, i = 1, 2,...,m, x ij Z +, i(j) = 1, 2,...,m(n).
Problemas de Cobertura, Empacotamento e Partição Cobertura Dado um conjunto S, selecionar subconjuntos S i, i = 1, 2,...,n de S tais que S 1 S 2 S n = S. Empacotamento Dado um conjunto S, selecionar uma união de subconjuntos disjuntos de S. Partição Dado um conjunto S, selecionar subconjuntos S i, i = 1, 2,...,n de S tais que S 1 S 2 S n = S e S 1 S 2 S n = (cobertura e empacotamento).
Problemas de Cobertura Modelam problemas de localização de facilidades, como serviços de emergência e de telecomunicações. Exemplo O setor de telefonia de uma universidade está discutindo a instalação de telefones públicos no campus. Mapa do campus: 1 2 3 A B I K G F 4 C 5 H J E D 6 7 8
Problemas de Cobertura Deve-se instalar o menor número de telefones; cada rua (A,B,... ) deve ser atendida por no mínimo um telefone; Um telefone localizado em cruzamento (1,2,... ) atende no mínimo 2 ruas; Existem 8 cruzamentos e no máximo 8 telefones serão necessários. Defina, para i = 1, 2,...,8, { 1, se um telefone é instalado no cruzamento i, x i = 0, caso contrário. Para atender a rua A é possível instalar um telefone no cruzamento 1 ou no cruzamento 2, ou x 1 + x 2 1.
Problemas de Cobertura Problema de otimização: minimizar x 1 + x 2 + x 3 + x 4 + x 5 + x 6 + x 7 + x 8 sujeito a x 1 + x 2 1, (A) x 2 + x 3 1, (B) x 4 + x 5 1, (C) x 7 + x 8 1, (D) x 6 + x 7 1, (E) x 2 + x 6 1, (F) x 1 + x 6 1, (G) x 4 + x 7 1, (H) x 2 + x 4 1, (I) x 5 + x 8 1, (J) x 3 + x 5 1, (K) x i, i = 1, 2,...,8, variáveis binárias.
Problemas de Produção Nível Estratégico (Meses a Anos) Decisões de longo prazo, grandes investimentos. Escolha e projeto do processo. Determinação do arranjo e capacidade de equipamentos face a demanda futura. Nível Tático (Semanas a Meses) Planejamento das atividades. Demanda agregada. Níveis de mão de obra. Quando e quanto produzir. Necessidades de componentes e matérias-primas. Ordens de produção. Nível Operacional (Diário) Controla ordens de produção. Designação de tarefas (jobs) a máquinas. Programação (scheduling) das tarefas em cada máquina (início e término do processamento de cada tarefa).
Planejamento Dimensionamento de Lotes Horizonte de planejamento finito, dividido em períodos. A demanda de cada produto pode variar a cada período; Supõe-se que a demanda e todos os demais parâmetros do modelo são conhecidos; Modelos mais sofisticados podem apresentar horizonte infinito, tempo contínuo e demanda estocástica; O modelo a seguir envolve dimensionamento de lotes (lot sizing) de um único produto, capacidade irrestrita.
Planejamento Dimensionamento de Lotes Parâmetros: d t demanda no período t; s custo fixo de produção; h custo unitário de estoque; I 0 estoque inicial; T número de períodos (horizonte); Variáveis: x t quantidade produzida no período t (tamanho do lote); I t estoque no final do período t; y t y t = 1, se ocorre produção no perído t; y t = 0, caso contrário.
Planejamento Dimensionamento de Lotes Problema de otimização (I 0 = I T = 0): T minimizar (sy t + hi t ) i=1 sujeito a I t = I t 1 + x t d t, t = 1, 2,...,T, ( (PDL) T ) x t d τ y t, t = 1, 2,...,T, τ=t x t R +, I t R +, t = 1, 2,...,T, y t, t = 1, 2,...,T, variáveis binárias. O tamanho do lote (x t ) é limitado à demanda total restante e é positivo se existe produção no período (y t = 1).