IX Congresso Brasileiro de Engenharia Química - Iniciação Científica 03 a 06 de julho de 2011 Maringá, Paraná, Brasil PROGRAMAÇÃO DA PRODUÇÃO EM PROCESSOS BATELADAS UTILIZANDO PLANILHAS ELETRÔNICAS MIRANDA 1, C. M. M.; ROCHA 2, R. P da.; RAVAGNANI 3, M. A. S. S ANDRADE 4, C. M. G.; PARAÍSO 5, P. R 1 2 Aluno do DEQ/UEM Mestrando do DEQ/UEM 3 4 Professor do PEQ/UEM Professor do 5 PEQ/UEM Professor do PEQ/UEM Departamento de Engenharia Química - Universidade Estadual de Maringá Avenida Colombo, 5790 87020-900 Maringá PR e-mail: paulo@deq.uem.br RESUMO - A concorrência entre as empresas está cada vez mais acirrada. Para obterem sucesso, as empresas devem planejar adequadamente as suas atividades operacionais. O planejamento implica em tomadas de decisão no curto, no médio e no longo prazos. Uma aplicação importante do planejamento no curto prazo é com a Programação da Produção que visa aumento de produtividade e redução de custos operacionais. Neste trabalho, foi desenvolvido um sistema para a redução do Tempo Total de Conclusão das Tarefas de Produção (Makespan) utilizando a Planilha Eletrônica Excel com interface amigável. A elaboração do sistema foi feito em cinco partes: Desenvolvimento do modelo; equacionamento do modelo; resolução do modelo em planilha Excel; criação de interface entre o usuário e a Planilha em linguagem Visual Basic (VB) e a avaliação da coerência da interface criada. Os resultados mostraram-se efetivos na aplicação do sistema nos cenários de programação adotados no estudo. Palavras chave: excel, visual basic, programação linear inteira mista. INTRODUÇÃO Atualmente planejar as atividades industriais é uma necessidade de sobrevivência. A concorrência intensa exige produtos diversificados e prazos de entrega de acordo com as exigências dos consumidores. Estas atividades exigem tomadas de decisão rápidas e com o menor custo possível. Na indústria química, as necessidades de planejamento são cada vez mais acentuadas principalmente no modo de produção em batelada. Segundo Raklaitis (1995), produção em bateladas pode ser descrita como a produção orientada à receita, com conectividade entre equipamentos e unidades de processamento e recursos disponíveis limitados. Mendez et al. (2006) classifica esse tipo de operação em: Estágio único, que subdivide-se em unidades únicas ou paralelas; múltiplo estágios, que subdivide-se em multipropósito (Job-Shop) e multiprodutos (Flow-Shop). A diversidade e complexidade de uma indústria de produção em batelada recomenda a aplicação de técnicas de planejamento da produção a fim de cumprir as exigências dos consumidores. Assim, há um crescente desenvolvimento científico na área de Programação da Produção (scheduling), sobretudo, referentes aos processos em bateladas (SEVERO, 2007).
A Programação da Produção, conforme Baker (1974), é definida como uma alocação de recursos em determinados tempos. O problema de programação tratado neste trabalho é do tipo Batelada - Multiprodutos - Flow Shop Permutacional. Flow-Shop, segundo MacCarthy e Liu (1993); Baker (1974) é um tipo de processo onde as tarefas possuem o mesmo roteiro de processamento em todas as máquinas e o número de máquinas em cada estágio de produção é igual a um. O ambiente de Programação da Produção Flow-Shop Permutacional é descrito por MacCarthy e Liu (1993); Baker (1974); Taillard (1993) e Moccellin (1995) como um tipo de Flow-Shop em que a ordem de processamento das tarefas em todas as máquinas é a mesma. Segundo Polon (2010), as plantas por Batelada-Multiprodutos, em geral, são empregadas para um conjunto de produtos cuja a estrutura de receita é a mesma e as linhas de produção são denominadas também de Flow Shop. Segundo Severo (2007) muitas indústrias de processo químico, tais como óleo e tintas, indústrias farmacêuticas e o setor de química fina se encaixam nesta categoria. Assim, este trabalho visa apresentar o desenvolvimento de uma Planilha Eletrônica com interface entre o usuário e a planilha, cujo o objetivo é minimizar o Tempo de Conclusão das Tarefas (Makespan) de um ambiente de Programação Flow Shop Permutacional. A presente pesquisa está inserida na área de Síntese e Otimização de Processos do Programa de Pós Graduação em Engenharia Química da UEM Universidade Estadual de Maringá em parceria com o GEPPGO - Grupo de Estudos e Pesquisas em Processos e Gestão de Operações do Departamento de Engenharia de Produção da Universidade Estadual do Paraná Campus de Campo Mourão. Metodologia Para o desenvolvimento do estudo dividiu-se em cinco partes: Desenvolvimento do Modelo; Equacionamento do Modelo; Resolução do Modelo em Planilhas do Excel; Criação de Interface entre o Usuário e a Planilha em Linguagem Visual Basic (VB) e por fim, a Avaliação da Coerência da Interface. No Desenvolvimento do Modelo analisou-se o problema proposto por Edgar et al. (2002, Apud Polon, Paraíso e Andrade, 2006) de uma planta Batelada Multiproduto, caracterizada como um ambiente de programação Flow Shop Permutacional. Nesta fase, definiu-se a função objetivo, tomando o caso de Programação da Produção como um problema de Programação Linear Inteiro Misto (MILP). Neste ambiente de Programação modelou-se três cenários de pesquisa, todos com o objetivo de minimizar o Makespan. As restrições do modelo são as seguintes: a) a armazenagem de produtos intermediários não deve estar disponível entre as unidades de processamento, isto é, caso um determinado produto esteja processado na unidade j e a unidade j+1 não esteja disponível no momento desta conclusão, o produto pronto deve ser mantido na unidade j, até a unidade j+1 estar desocupada; b) ao finalizar o processamento de um produto na última unidade (equipamento), esse é imediatamente enviado ao estoque de produtos acabados; c) todas as unidades estão inicialmente vazios no tempo zero e a manufatura de qualquer produto pode ser atrasada numa quantidade de tempo arbitraria para mantê-lo na unidade anterior e d) o ordenamento das tarefas em cada processador é o mesmo. Finalizada a modelagem, todas as equações matemáticas dos três cenários foram transcritas para planilhas do Excel, lançadas de forma manual e resolvidas pelo aplicativo Solver. A Linguagem VB foi utilizada para criar uma interface entre o usuário e a planilha do Excel, desta forma, as equações matemáticas dos três cenários, juntamente com o aplicativo Solver, foram desenvolvidas de maneira a criar um modelo generalizado de programação, para este ambiente e com as restrições impostas pelo modelo aqui proposto. A Avaliação da Coerência da Interface da planilha com o usuário foi realizada por meio da comparação dos resultados encontrados com as planilhas do Excel e da desenvolvida pela Linguagem VB.
Desenvolvimento do Modelo Foram analisados três cenários de produção, ambos, com as mesmas restrições e objetivo de desempenho, conforme já apresentados no item metodologia. Assim, no cenário 1, quatro produtos (p1, p2, p3, p4) são produzidos em três processadores em série. Veja os dados apresentados na Tabela 1. Tabela 1 Tempo de processamento (h) Unidades Produtos p1 p2 p3 p4 1 3,5 4,0 3,5 12 2 4,3 5,5 7,5 3,5 3 8,7 3,5 6,0 8,0 O cenário 2, corresponde a uma situação de programação de 5 produtos (p1, p2, p3, p4, p5) e 3 processadores, conforme apresentado na Tabela 2. Tabela 2 Tempo de Processamento (h) Unidades Produtos p1 p2 p3 p4 P5 1 1,5 10,0 43,5 12 24,0 2 10,3 35,5 7,5 1,5 5,5 3 15,7 3,5 86,0 79,0 93,5 O cenário 3, corresponde a uma situação de programação de 3 tarefas (p1, p2, p3) e 5 processadores, todos com tempos de processamentos conforme apresentado na Tabela 3. Tabela 3 Tempo de Processamento (h) Unidades Tarefas p1 p2 p3 1 13,5 15 4,0 2 37,5 21,5 5,5 3 6,0 79,0 73,5 4 3,5 12 54,0 5 77,5 7,5 5,5 Equacionamento do Modelo Foram modelados os três cenários de programação, no entanto, como ambos fazem parte do mesmo ambiente de programação (Flow Shop Permutacional) e atende as mesmas restrições, apresentar-se-á a modelagem do cenário 1. Na modelagem matemática do cenário 1, a equação (1) representa o objetivo central do problema a ser resolvido. ( 1 ) Na Equação 1 a variável C representa o Makespan, As variáveis representam o Número de Produtos e o Número de Processadores, respectivamente. Desta maneira, a função objetivo expressa pela Equação 1, diz respeito a encontrar, dentre as diversas opções combinatórias de produtos e processadores, a seqüência que apresente o menor Makespan. Para o cenário 1, a função objetivo apresenta um com valor 4, que corresponde ao número de produtos (tarefas) presentes na Programação da Produção e um com valor 3, correspondente ao número de processadores presentes no processo. A Equação 2 representa essa função objetivo. ( 2 ) Esse objetivo está sujeito a uma série de restrições, descritas a seguir. As primeiras restrições, mostradas nas Equações 3 e 4, são de ordens binárias. ( 3 ) ( 4 ) A variável i representa a tarefa a ser processada no recurso e k representa a posição dessa mesma na ordem de seqüenciamento, então as Equações 3 e 4 representam um problema de otimização discreta envolvendo a decisão de duas alternativas, ou seja, caso uma tarefa seja processada em determinado recurso, as demais não podem ser processadas concomitantemente nesse mesmo recurso. Logo, é uma variável binária definida como: = 1 se a tarefa i está na posição k e = 0, caso contrário. Cada um dos produtos é processado nos processadores (1), (2) e (3), em ordem seqüencial, respeitando o ambiente de programação Flow Shop Permutacional.
Compreendido as Equações genéricas 3 e 4, apresentam-se a resolução dessas, por meio das Equações 5, 6, 7, 8, 9, 10, 11 e 12. ( 5 ) ( 6 ) ( 7 ) ( 8 ) ( 9 ) (10) (11) (12) A Equação 13 representa outra restrição do problema, nesta, a questão também diz respeito ao Makespan. Veja a seguir: (13) Onde: = tempo de fim de processamento no processador j da tarefa ocupando a posição k na seqüência; j = processadores ou estágios; k = posição na seqüência; N = número de tarefas; = variável binária e é o tempo de processamento da tarefa i no processador j. Genericamente, a resolução das várias alternativas da Equação 13, mostra que uma tarefa programada para ser processada no processador j, a partir da segunda ordem de seqüenciamento, deve apresentar um Makespan maior ou igual ao Makespan de uma ordem posicionada anteriormente no mesmo processador j, somado ao Tempo de Processamento da mesma tarefa no processador j. A resolução da Equação 13 é demonstrada nas Equações 14, 15, 16, 17, 18, 19, 20, 21 e 22. (14) (15) (16) (17) (18) (19) (20) (21) (22) Outra restrição importante é a Equação 23. Essa restrição também diz respeito ao Makespan das Tarefas nos processadores. (23) A Equação 23 mostra que o Makespan da Tarefa de ordem no processador j é maior ou igual ao Makespan da Tarefa de ordem no processador j-1 mais o somatório do produto entre a variável binária e o tempo de processamento, tomando o início no processador (2) e o término no processador (3). Veja as Equações 24, 25, 26, 27, 28, 29, 30 e 31. (24) (25) (26) (27) (28) (29) (30) (31) Para o Makespan da tarefa posicionada na seqüência 1 da Programação da Produção é expressa a Equação 32. (32)
A Equação 32 apresenta a restrição que o Makespan da tarefa posicionada na seqüência 1 da Programação da Produção no processador j é maior ou igual ao Makespan da tarefa posicionada na seqüência 1 da Programação da Produção no processador j-1 mais o somatório do produto da variável binária e o tempo de processamento. Nesta Equação, o processador j deve iniciar no processador 2 e terminar no processador 3, conforme o modelo proposto no início. Resolvendo a Equação genérica 32, apresentam-se as Equações 33 e 34. (33) (34) Outra restrição importante é a do Makespan da tarefa seqüenciada na ordem 1 no processador 1. Essa é representada pela Equação 35. (35) A Equação 35 mostra que o Makespan da tarefa seqüenciada na ordem 1 no processador 1 deve ser maior ou igual ao produto da variável binária e os tempos de processamentos (. Isto é descrito pela Equação 36. (36) A restrição apresentada na Equação 37 mostra que o Makespan seqüenciado na ordem k no processador j deve ser maior ou igual ao Makespan seqüenciado na ordem k-1 no processador j+1, partindo da ordem de seqüência 1 no processador 1. (37) A Equação 38 é o desenvolvimento da Equação genérica 37, essa mostra que o Makespan seqüenciado na ordem 2 no processador 1 deve ser maior ou igual ao Makespan seqüenciado na ordem 1 no processador 2. As Equações 39, 40 e 41 também demonstram a resolução da Equação 37. (39) (40) (41) Por fim, a última restrição do problema diz respeito a questão de não negatividade do modelo, isto é visualizado pela Equação genérica 44. (44) As Equações 45, 46, 47, 48 são os exemplos resolvidos da Equação 44. (45) (46) (47) (48) Resolução do Modelo em Planilhas do Excel Cada um dos cenários foram inseridos em planilhas eletrônicas, de modo bastante manual, uma vez que houve a necessidade de inserir todas as equações em cada uma das células da planilha. Em geral, primeiramente foram organizados todos os dados na planilha do Excel, separando as células que representavam as variáveis de decisão e a função objetivo. Para cada restrição do problema foi criado uma fórmula numa célula separada na planilha que correspondia ao lado direito (left-hand side LHS) e ao lado esquerdo (right-handside RHS) da restrição. Após inserir todas as equações do modelo na planilha, função objetivo, variáveis de decisão e restrições, pode-se utilizar o recurso Solver, disponível na barra de ferramentas da planilha do Excel para encontrar a solução ótima de cada cenário. Criação de Interface entre o Usuário e a Planilha em Linguagem Visual Basic (VB) Desenvolvidas as equações, criou-se uma planilha eletrônica automatizada, por meio da linguagem (VB). Isto é visualizada na figura 1.
Referências Bibliográficas Figura 1 Planilha Automatizada Nesta planilha, para obter a seqüência de produção que minimiza o Makespan, o usuário deverá entrar com os dados do número de produtos e número de processadores, acionar o botão Gerar Tempo de Processamento e digitar todos os respectivos tempos de processamento, e por fim, acionar o botão Otimizar. Avaliação da Coerência da Interface Para avaliar a coerência dos resultados encontrados com a criação de Interface entre o Usuário e a Planilha em Linguagem Visual Basic (VB), foram comparados os valores obtidos dos três cenários em planilhas manuais com os valores encontrados na planilha de Interface entre o Usuário e a Planilha em Linguagem Visual Basic (VB). Logo, os resultados mostraram-se positivos, uma vez que nos três cenários de programação, os valores foram os mesmos. Considerações finais Com o presente estudo pode-se concluir que a criação de Interface entre o usuário e a planilha em Linguagem Visual Basic (VB) é uma importante ferramenta de apoio a tomada de decisões na área de Programação da Produção, uma vez que essa apresenta uma simplicidade de programação, bem como, está disponível na grande maioria de usuários de computador. Logo, essa ferramenta é útil na atividade profissional e na atividade de aprendizado de conceitos da área de Programação da Produção, na academia. BAKER, K.R. (1974). Introduction to Sequencing and Scheduling. NEW York: John Wiley & Sons, Inc. MACCARTHY, B. L.; LIU, J.Y. (1993). Adressing the Gap in Scheduling Research: A Review of Optimization and Heuristic Methods in Production Scheduling. International journal of Production Research, London, 31, 59-79. MENDÉZ, C.A. et all. (2006). State-of-the-art Review of Optimization Methods for Short-term Scheduling of Batch Processes. Computers and Chemical. Engineering, 30, 913-946. MOCCELLIN, J. V. (1995). A New Heurist Method for the Permutation Flow Shop Scheduling Problem. Journal of the Operational research Society. Oxford, 46, 883-886. POLON, P. E.; ANDRADE, C.M.G.; PARAÍSO, P.R.; JORGE, L.M. de M. (2006) Utilização de Planilha Eletrônica na Resolução de Problemas de Planejamento e Programação da Produção. IX Congresso Brasileiro de Engenharia Química Iniciação Científica POLON, P.E. (2010), Otimização da Produção da Indústria de Embutidos, PEQ/UEM, Maringá- PR (Tese de doutorado), 115p REKLAITIS, G.V. (1995), Scheduling Approaches for the Batch Process Industries. ISA Transactions, 34, 349 358. SEVERO, L.S. (2007), Aplicação de Modelo de Programação da Produção na Indústria de Couros, PEQ/UFRGS, Porto Alegre- RS (Dissertação de mestrado), 96p TAILLARD, E. (1993). Benchmarks for Basic Scheduling Problems. European Journal of Operational Research, Amsterdam, 64, 278-285. AGRADECIMENTOS Nós, Calilo e Rony, agradecemos ao PIBIC/CNPQ, PEQ/UEM e ao GEPPGO.