Pesquisa Operacional Aplicada à Mineração Módulo de Otimização Parte II Prof. Marcone J. F. Souza Prof. Túlio A. M. Toffolo marcone.freitas@yahoo.com.br tulio@toffolo.com.br Departamento de Computação Universidade Federal de Ouro Preto 1
Prof. Marcone Jamilson Freitas Souza Departamento de Computação Universidade Federal de Ouro Preto www.decom.ufop.br/prof/marcone marcone.freitas@yahoo.com.br Prof. Túlio Ângelo Machado Toffolo Departamento de Computação Universidade Federal de Ouro Preto www.decom.ufop.br/toffolo tulio@toffolo.com.br 2
Roteiro Problema de Transporte Problema de Alocação de Ordens de Serviço Problema de Dimensionamento de Lotes Problema das Usinas com Metas Problema das p-medianas não Capacitado Problema das p-medianas Capacitado Problema dos p-centros Problema de Alocação Dinâmica de Caminhões 3
PROBLEMA DE TRANSPORTE 4
Problema de Transporte Há um conjunto de minas produtoras de minério Há um conjunto de usinas que processam os minérios provenientes das minas Há um custo de transporte de minério de uma mina para uma usina Cada mina tem uma capacidade de produção mensal Cada usina tem uma demanda mensal Cada mina tem um custo fio se for usada Determinar a estratégia ótima de transporte 5
Problema de Transporte Usinas Mina 1 2 3 Cap (t/mês) Custo ($) 1 10 8 13 11500 50000 2 7 9 14 14500 40000 3 6,5 10,8 12,4 13000 30000 4 8,5 12,7 9,8 12300 25500 Demanda (t/mês) 10000 15400 13300 - - 6
Problema de Transporte cap 1 f 1 c 11 dem 1 cap 2 f 2 c 12 c 13 dem 2 cap 3 f 3 cap 4 dem 3 f 4 Minas Usinas 7
Problema de Transporte Dados de entrada: Minas = Conjunto de minas Usinas = Conjunto de usinas cap i = capacidade de produção, em toneladas/mês, da mina i dem j = quantidade de minério demandado pela usina j, em ton/mês f i = custo fio de uso da mina i, em $ c ij = custo de transporte de minério proveniente da mina i para abastecer a usina j, em $/tonelada/mês 8
Problema de Transporte Variáveis de decisão: ij = Quantidade de minério, em toneladas/mês, a ser transportado da mina i para abastecer a usina j y i = 1 se a mina i for usada e 0, caso contrário 9
Problema de Transporte Como oferta (minas) > demanda (usinas): Toda a demanda será atendida Função objetivo: minimizar o custo de transporte mais o custo fio pelo uso das minas usadas min + ij ij i Minas j Usinas i Minas c f i y i 10
Problema de Transporte A capacidade de produção das minas deve ser respeitada ij j Usinas cap i i Minas Toda a demanda é atendida (oferta > demanda) ij i Minas = dem j j Usinas 11
Problema de Transporte Uma mina só pode ser usada se houver produção y i cap ij j Usinas i i Minas Não negatividade e integralidade y i {0,1 } i Minas ij 0 i Minas, j Usinas 12
Problema de Transporte Relativamente ao problema anterior, supor que se houver transporte de minério de uma mina i para uma usina j, então a quantidade ij transportada não pode ser inferior a transpmin. ij z ij ij i Minas, j Usinas cap i transpmin z i Minas, j Usinas ij z ij {0,1} i Minas, j Usinas 13
Problema de Transporte Se oferta (minas) < demanda (usinas): i Minas j Usinas i Minas min c ij ij + f i Todas as minas serão utilizadas ij j Usinas = cap i i Minas Toda a produção é consumida ij i Minas dem j j Usinas Nem toda a demanda é atendida ij 0 i Minas, j Usinas 14
ALOCAÇÃO DE ORDENS DE SERVIÇO 15
Alocação de Ordens de Serviço Deseja-se eecutar um conjunto de ordens de serviço (Servicos) em um conjunto de dias (Dias). Cada ordem de serviço i Servicos demanda d i horas de serviço e a ela está associada uma prioridade p i [1, 5], sendo que quanto maior o valor de p i, maior a prioridade. Conhecendo-se a quantidade cap j disponível de horas de serviço por dia, determinar a alocação diária de ordens de serviço cujo somatório das prioridades seja máima. 16
Alocação de Ordens de Serviço Serviços Duração Prioridade Dias s1 2 4 Seg Ter Qua s2 3 3 16 15 16 s3 5 1 s4 4 4 s5 6 1 s6 3 2 s7 10 4 s8 8 3 s9 7 4 s10 4 1 17
Alocação de Ordens de Serviço Dados de entrada: d i = duração do serviço i p i = prioridade do serviço i cap j = número de horas de serviço disponíveis no dia j Variáveis: ij = 1 se o serviço i for eecutado no dia j ou zero caso contrário 18
Alocação de Ordens de Serviço ma i Servicos j Dias p i ij j Dias ij 1 i Servicos Um serviço i, se eecutado, deve ser realizado em um único dia; d i i Serviços ij cap j j Dias Em um dado dia j os servicos eecutados têm que respeitar a disponibilidade de horas ij {0,1} i Servicos, j Dias As variáveis envolvidas são binárias (0 ou 1) 19
Alocação de Ordens de Serviço Reescreva a função objetivo para que as ordens de serviço de maior prioridade sejam realizadas nos dias iniciais do horizonte de planejamento e que toda a disponibilidade de mão-de-obra seja sempre que possível atendida.
PROBLEMA DAS USINAS COM METAS 21
Usinas com metas Usinas: conjunto de usinas (índice l) Minas: conjunto de minas (índice k) Parametros: conjunto de parâmetros de controle (índice j) Frentes: conjunto de frentes de lavra (índice i) t kij = teor do parâmetro de controle j da frente i da mina k tr lj = teor recomendado (meta) para o parâmetro j na usina l tu lj = teor máimo permitido para o parâmetro j na usina l tl lj = teor mínimo permitido para o parâmetro j na usina l wm lj = peso por desvio de meta do parâmetro j da usina l Qu ik = massa contida na frente i da mina k req l = demanda da usina l cap k = capacidade da mina k 22
Usinas com metas Determinar a produção de cada frente equilibrando a produção das minas, assim como minimizar o desvio de qualidade dos parâmetros de controle de cada usinas, bem como o número de minas usadas Variáveis de decisão: lik = quantidade de minério a ser retirada da frente i da mina k para abastecer a usina l z k = 1 se a mina k for usada e 0, caso contrário dnp k1,k2 = desvio negativo de produção entre as minas k1 e k2 dpp k1,k2 = desvio positivo de produção entre as minas k1 e k2 dnm lj = desvio negativo de meta do parâmetro j da usina l dpm lj = desvio positivo de meta do parâmetro j da usina l 23
Usinas com metas: Restrições O limite superior de especificação de cada parâmetro de controle j deve ser atendido para cada usina: ( t ) kij tulj lik 0 j Parametros, l Usinas k Minas i Frentes O limite inferior de especificação de cada parâmetro de controle j deve ser atendido para cada usina: ( t ) kij tllj lik 0 j Parametros, l Usinas k Minas i Frentes 24
Usinas com metas: Restrições Deve-se tentar atender a meta de qualidade para cada parâmetro de controle j : ( t tr ) kij lj k Minas i Frentes lik dpm lj + dnm lj = 0 j Parametros l Usinas Os desvios dpm ij e dnm ij devem ser penalizados (minimizados) na função objetivo. 25
Usinas com metas: Restrições As demandas (requisições) de minério de cada usina l devem ser atendidas: k Minas i Frentes lik = req l l Usinas 26
Usinas com metas: Restrições A quantidade de minério retirada das frentes de cada mina não pode superar a quantidade máima disponível: lik l Usinas Qu ik k Minas, i Frentes As capacidades das minas devem ser respeitadas: lik i Frentes l Usinas cap k k Minas 27
Usinas com metas: Restrições Rítimos mínimo e máimo devem ser respeitados: lik l Usinas ritmin 0 ik ritmin ik k Minas, i Frentes lik l Usinas ritma 0 ik ritma ik k Minas, i Frentes 28
Usinas com metas: Função objetivo Função objetivo: minimizar os desvios de meta de cada parâmetro de controle: min ( wm + ) ljdpm lj wm ljdnm lj l Usinas j Parametros 29
Usinas com metas: Restrições Para qualquer par de minas k 1 e k 2, a quantidade de minério que sai de suas frentes para atender as usinas deve ser a mais equilibrada possível: lik i Frentes l Usinas 1 + dnpk k dppk k = 1 2 1 2 lik i Frentes l Usinas 2 k k 2 Minas 1, Minas Melhoria: gerar as restrições apenas se k 2 > k 1. Reduz em mais de 50% o número de restrições geradas!!! 30
Usinas com metas: Função Objetivo Função objetivo: minimizar os desvios de meta de cada parâmetro de controle e equilibrar as produções das diferentes minas: min l Usinas j Parametros ( wm dpm + wm dnm )+ lj lj lj lj k ( dpp + ) k k dnp k k Minas k 1 2 Minas 1 2 1 2 31
Usinas com metas: Restrições Para minimizar o número de minas utilizadas, podemos criar a restrição a seguir: Se z k = 1 então a mina k é usada: z k lik i Frentes l Usinas cap k k Minas cap k 0 z k { 0, } k Minas 1 O número de minas utilizadas será o somatório de z k 32
Usinas com metas: Função Objetivo Função objetivo: minimizar os desvios de meta de cada parâmetro de controle, equilibrar as produções das minas bem como minimizar o número de minas utilizadas: min k l Usinas j Parametros Minas k 1 2 Minas ( wm dpm + wm dnm )+ lj ( dpp k + dnp )+ 1 k 2 lj k 1 k 2 lj lj 1000000 z k k Minas 33
PROBLEMA DE DIMENSIONAMENTO DE LOTES 34
Dimensionamento de Lotes Empresas precisam produzir diversos tipos de produtos solicitados por diferentes clientes Produtos devem estar prontos em datas previamente agendadas A capacidade de produção é limitada (máquinas, mãode-obra, etc) Necessário se faz planejar a produção Decidir o quê produzir, quanto produzir, isto é, dimensionar os lotes de produção, e quando produzir (em cada período do horizonte de planejamento) 35
Dimensionamento de Lotes A necessidade de antecipação da fabricação de produtos (estocados de um período para outro) acarreta custos de estocagem e algumas dificuldades operacionais No planejamento da produção deseja-se determinar o tamanho dos lotes de produção para atender a demanda na data solicitada, de modo que a soma dos custos de produção e estocagem seja mínima. 36
Dimensionamento de Lotes Imagine o atendimento a uma encomenda para entregar um produto ao longo de um período de tempo. São dados, para cada mês: Demanda Custo de produção Custo de estocagem Considere que o estoque inicial seja de 3 unidades Elabore um modelo de PLI que minimize o custo total de produção e estocagem. 37
Dimensionamento de Lotes Mês Cap. Produção (unid) Demanda (unid.) Custo de estocagem (R$) Custo de prod. (R$) 1 7 10 3 5 2 7 2 2 3 3 7 9 3 7 4 7 6 2 4 5 7 8 3 5 6 7 7 2 9 38
Dimensionamento de Lotes Dados de entrada: meses = conjunto dos meses de produção cprod t = custo de produção no mês t cest t = custo de estoque no mês t demanda t = demanda no mês t cap t = capacidade de produção no mês t estinicial = estoque inicial 39
Dimensionamento de Lotes Variáveis de decisão: t = quantidade do produto a ser produzida no mês t e t = quantidade do produto a ser estocada no mês t 40
Dimensionamento de Lotes Função objetivo: minimizar os custos de produção e de estocagem min ( cprod + ) t t cesttet t Meses 41
Dimensionamento de Lotes Conservação de fluo no final do mês 1: e 1 = estinicial + 1 demanda1 Conservação de fluo ao final de cada mês t> 1: e t = et 1 + t demanda t t Meses t > 1 42
Dimensionamento de Lotes Respeito à capacidade de produção em cada mês: t cap t t Meses 43
Dimensionamento de Lotes min ( cprod + ) t t cesttet t Meses e 1 = estinicial + 1 demanda1 Conservação de fluo no final do mês 1: e t = et 1 + t demanda t t Meses t > 1 Conservação de fluo ao final de cada mês t > 1: t cap t Meses t Capacidade de produção e t, 0 t Meses 0 Não-negatividade t 44
DIMENSIONAMENTO DE LOTES COM VÁRIOS PRODUTOS 45
Dimensionamento de Lotes (n produtos) Considere uma empresa que fabrica n produtos e deseja programar sua produção nos próimos T períodos de tempo. É conhecida a demanda de cada produto em cada período do horizonte de planejamento. Em cada período, os recursos necessários para a produção são limitados e renováveis, isto é, uma quantidade de recursos está sempre disponível (mão-de-obra, horas-de-máquina, etc.). Há a possibilidade de estocagem de produtos de um período para outro 46
Dimensionamento de Lotes (n produtos) Dados de entrada: demanda it : demanda do produto i no período t cap t : disponibilidade de recursos no período t consumo i : quantidade de recursos necessários para a produção de uma unidade do produto i cprod it : custo de produzir uma unidade de i no período t cest it : custo de estocar uma unidade de i no período t Estoques iniciais estinicial i são dados 47
Dimensionamento de Lotes (n produtos) Variáveis de decisão: it : número de produtos i produzidos no período t e it : número de produtos i em estoque no final do período t 48
Dimensionamento de Lotes e min e it ( cprod + ) it it cestiteit i Produtos t Meses i1 = estiniciali + i 1 demanda Conservação de fluo ao i1 final do mês 1 = ei, t 1 + it demanda it Conservação de fluo ao final de cada mês t > 1: i Produtos, t Meses t > 1 i Produtos consumo i it cap t t Meses Restrições de capacidade e it Ζ +, i Produtos, t it Ζ + Meses Integralidade das variáveis 49
PROBLEMA DAS P-MEDIANAS 50
Problema das p-medianas Problema de localização de facilidades: dado um número n de clientes (pontos de demanda), encontrar os p pontos de suprimento que minimizem o custo de cada ponto de demanda a seu respectivo ponto de suprimento. Aplicações na localização de fábricas, usinas, centros de distribuição, centros de saúde, etc. 51
Problema das p-medianas Dados de entrada: Locais: Conjunto de locais Facilidades: Conjunto de possíveis locais para instalação de facilidades p = número de facilidades a serem instaladas c ij = custo de atendimento de um local j por uma facilidade instalada em i demanda j = demanda do local j f i = custo de instalação da facilidade no local i 52
Problema das p-medianas capacitado Variáveis de decisão: ij = 1 se o local j for atendido pela facilidade instalada em i e zero caso contrário. y i = 1 se a facilidade for instalada em i e zero caso contrário. 53
Problema das p-medianas capacitado Função objetivo: min i Facilidades c ij j Locais ij + f i i Facilidades y i 54
Problema das p-medianas Cada local é atendido por uma única facilidade: ij i Facilidades = 1 j Locais Devem ser instaladas p facilidades: yi = i Facilidades p 55
Problema das p-medianas Um local só pode ser atendido por uma facilidade i se ela tiver sido instalada: ij y i Facilidades, j i Locais As variáveis de decisão ( ij e y i ) devem ser binárias: ij {0,1} i Facilidades, j Locais y i {0,1} i Facilidades 56
Problema das p-medianas min i Facilidades c ij ij + j Locais i Facilidades f i y i ij i Facilidades = 1 j Locais y i = p i Facilidades ij y i Facilidades, j i Locais ij {0,1} i Facilidades, j Locais y i {0,1} i Facilidades 57
PROBLEMA DAS P-MEDIANAS CAPACITADO 58
Problema das p-medianas capacitado Dados de Entrada Adicionais: cap i = capacidade (recursos) da facilidade i demanda j = demanda de recursos do local j Função objetivo: (idêntica ao problema não capacitado) min i Facilidades c ij ij + j Locais i Facilidades f i y i 59
Problema das p-medianas capacitado A demanda de um local j só pode ser atendida por uma facilidade i que comporte este atendimento: j Locais demanda j ij cap i y i i Facilidades 60
Problema dos p-centros min i Facilidades c ij ij + j Locais i Facilidades f i y i j Locais demanda j ij cap i y i i Facilidades ij i Facilidades ij = 1 j Locais y p y i Facilidades, j Locais i i = i Facilidades ij {0,1} i Facilidades, j Locais y i {0,1} i Facilidades 61
PROBLEMA DOS P-CENTROS 62
Problema dos p-centros Objetivo é o de minimizar a distância máima entre um local j e a facilidade i a ele designada. Minimizar r, onde r é a maior distância entre uma facilidade e seu local de atendimento: d ij ij r i Facilidades, j Locais 63
Problema dos p-centros min r d ij ij r i Facilidades, j Locais ij i Facilidades ij = 1 j Locais y p y i Facilidades, j Locais i i = i Facilidades ij {0,1} i Facilidades, j Locais y i {0,1} i Facilidades 64
Problema dos p-centros min r d ij i Facilidades ij r j Locais ij i Facilidades ij = 1 j Locais y p y i Facilidades, j Locais i i = i Facilidades ij {0,1} i Facilidades, j Locais y i {0,1} i Facilidades 65
PROBLEMA DA ALOCAÇÃO DINÂMICA DE CAMINHÕES 66
Alocação Dinâmica de Caminhões carregadeiras Caminhão 1 Frente 1 Carregadeira 1 Caminhão 2 Frente 2 Mistura Desejada Carregadeira 2 Caminhão 3 Frente 3 frentes = minerio esteril Caminhão 4 ca minhoes 67
Alocação Dinâmica de Caminhões Dados de entrada (1): t ij : Teor do parâmetro j na frente i (%); tl j : Teor mínimo admissível para o parâmetro j (%); tu j : Teor máimo admissível para o parâmetro j (%); tr j : Teor recomendado para o parâmetro j (%); wnm j : Peso por desvio negativo para o parâmetro j; wpm j : Peso por desvio positivo para o parâmetro j; wpp: Peso por desvio positivo de produção; wnp: Peso por desvio negativo de produção; 68
Alocação Dinâmica de Caminhões Dados de entrada (2): Qu i : Massa disponível na frente i (t); tempciclo i : Tempo de ciclo de caminhões para a frente i; estmin i : Se a frente i é de minério (1) ou estéril (0); Cu k : Produção máima da carregadeira k (t/h); Cl k : Produção mínima da carregadeira k (t/h); capcam l : Capacidade do caminhão l (t); comp lk : Se o caminhão l é compatível (1) ou não (0) com a carregadeira k; rem: Relação estéril/minério. 69
Alocação Dinâmica de Caminhões Variáveis de decisão: i : Ritmo de lavra para a frente i (t/h); y ik : 1 se a carregadeira k opera na frente i e 0 c.c.; usou l = 1 se o caminhão l for usado e 0 caso contrário; n li : Viagens que o caminhão l realiza à frente i; dnm j e dpm j : Desvios negativo e positivo da meta do parâmetro j (t/h); dnu l edpu l : Desvios negativo e positivo de utilização do caminhão l; dnp e dpp: Desvios negativo e positivo de produção; 70
Alocação Dinâmica de Caminhões Função objetivo min ( wnm + ) jdnm j wpm jdpm j j Parametros wnp dnp + wnp dpp + l Caminhoes + CapCam usou l l 71
Problema da Mistura epandido Admite-se que haja falta (dnm j ) ou ecesso (dpm j ) do parâmetro j na mistura em relação à meta de qualidade ( t ) ij trj i + dnm j dpm j = 0 j Parametros i Frentes estmin i = 1 Os desvios dnm j e dpm j devem ser penalizados na função objetivo. 72
Alocação Dinâmica de Caminhões Atendimento aos limites de especificação (obrigatório): ( t ) ij tu j i 0 j Parametros i Frentes estmin i = 1 ( t ) ij tl j i 0 j Parametros i Frentes estmin i = 1 73
Alocação Dinâmica de Caminhões A produção deve respeitar o máimo admitido: i i Frentes estmin i = 1 pu j Parametros A produção deve respeitar o mínimo admitido: i i Frentes estmin i = 1 pl j Parametros 74
Alocação Dinâmica de Caminhões A meta de produção deve ser buscada sempre que possível. i i Frentes estmin i = 1 + dnp dpp = pr j Parametros A relação estéril/minério deve ser atendida: rem i i i Frentes i Frentes estmini = 0 estmin i = 1 0 j Parametros 75
Alocação Dinâmica de Caminhões No máimo uma carregadeira operando em cada frente y ik k Carregadeiras 1 i Frentes y = y F1 i1 = 1 y = 1 i 2 11 1 Cg1 y 22 =1 Cg2 F2 76
Alocação Dinâmica de Caminhões Cada carregadeira deve operar em no máimo uma frente. y ik i Frentes 1 k Carregadeiras y 11 = 1 Cg1 y 21 = 0 1 = 1 y k F1 y 12 = 0 Cg2 y 22 = 1 y 2 k = 1 F2 y 13 = 0 Cg3 y 23 = 0 77
Alocação Dinâmica de Caminhões O ritmo de lavra da frente i deve ser maior do que a produtividade mínima da carregadeira k alocada à frente i Cl k k Carregadeiras y ik i Frentes O ritmo de lavra da frente i deve ser menor do que a produtividade máima da carregadeira k alocada à frente i Cu k k Carregadeiras y ik i Frentes 78
Alocação Dinâmica de Caminhões Cada caminhão l deve realizar viagens apenas à uma frente i que esteja alocada uma carregadeira compatível n il tempciclo i 60y ik k Carregadeiras comp lk = 1 i Frentes, l Caminhoes n il Ζ + i Frentes, l Caminhoes 79
Alocação Dinâmica de Caminhões Cada caminhão l deve operar no máimo 60 minutos n il i Frentes tempciclo i 60 l Caminhoes n = 3 e T = 10 min 11 11 F1 n = 2 e T = 10 min 12 12 n T i1 i1 = 50 min Ca1 n = 1 e T = 15 min 21 21 F2 n = 3 e T = 5 min 22 22 n T Ca2 i2 i2 = 55 min n = 1 e T = 5 min 31 31 F3 n = 1 e T = 20 min 32 32 80
Alocação Dinâmica de Caminhões O ritmo de lavra da frente i deve ser igual à produção realizada pelos caminhões alocados à frente i = n il l Caminhoes capcam l i Frentes n11 = 3 e cap1 = 50 t 1 = n1 lcapl = 330 t/h n21 = 2 e cap2 = 50 t F1 Ca1 Ca2 n = 2 e cap = 50 t 11 1 2 = n2 lcapl = 260 t/h F2 n = 1 e t = 80 t 31 31 Ca3 n = 2 e cap = 80 t 11 1 81
Alocação Dinâmica de Caminhões Um caminhão é usado se ele faz alguma viagem a alguma frente usou usou l l i Frentes tempciclo n 60 { 0, } l Caminhoes 1 i il l Caminhoes 82