Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas

Detalhes bibliográficos
Autor(a) principal: Demarco, Henrique
Data de Publicação: 2023
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFRGS
Texto Completo: http://hdl.handle.net/10183/259215
Resumo: A programação da produção é atividade primordial dentro das indústrias e passa a ser mais importante quanto mais complexa é a operação de cada empresa. À medida que o ambiente produtivo aumenta em recursos, produtos e restrições, torna-se mais difícil alcançar a programação ótima dada a quantidade de possibilidades e combinações distintas. A execução desta atividade com o devido cuidado pode gerar economia de recursos, maximização das horas de maquinário convertidas em produção, entre outros benefícios. O uso de modelos matemáticos e computadores para esta atividade possibilita testar uma grande quantidade de combinações das mais diferentes variáveis e, no limite, encontrar a proposta de solução ótima e que faz a melhor alocação dos recursos escassos. Dentro deste escopo, o presente trabalho apresenta um modelo matemático, acompanhado do código computacional em Python. Este é aplicável em indústrias que utilizam máquinas paralelas heterogêneas de capacidade finita, com setups dependentes (tanto em custo quanto em tempo) da sequência de programação, com produtos em estágio único de processamento, observando restrições de estoque de componentes, horas-homem disponíveis e capacidade de armazenagem de produtos acabados. Complementando as restrições mencionadas, o modelo tem por objetivo reduzir o custo de execução da programação. Para isto, considera os custos de setup, os custos de manutenção de estoque, a penalidade financeira por não atender o pedido no prazo especificado pelo cliente e o custo de produção do item vendido considerando que as máquinas são heterogêneas e, por consequência, apresentam custos diferentes para produzir o mesmo item. O modelo executado resolveu o problema para uma indústria com 18 máquinas, 350 produtos acabados, 4576 componentes, 2 macro períodos de programação, cada um contendo 5 micro períodos variáveis. A solução ótima foi encontrada em 10h de processamento utilizando um computador com processador Intel i5-2410M 2.30GHz quad-core com 6GB de memória RAM, solver Gurobi, tendo sido programado em linguagem Python com a biblioteca PuLP. Muito embora este tempo total de processamento possa ser considerado alto para uma aplicação prática, o modelo atingiu o gap de 1% do melhor resultado em aproximadamente 2h.
id URGS_4217164142c8531de510390c2e3b92e5
oai_identifier_str oai:www.lume.ufrgs.br:10183/259215
network_acronym_str URGS
network_name_str Biblioteca Digital de Teses e Dissertações da UFRGS
repository_id_str 1853
spelling Demarco, HenriqueCassel, Ricardo Augusto2023-06-20T03:30:21Z2023http://hdl.handle.net/10183/259215001169638A programação da produção é atividade primordial dentro das indústrias e passa a ser mais importante quanto mais complexa é a operação de cada empresa. À medida que o ambiente produtivo aumenta em recursos, produtos e restrições, torna-se mais difícil alcançar a programação ótima dada a quantidade de possibilidades e combinações distintas. A execução desta atividade com o devido cuidado pode gerar economia de recursos, maximização das horas de maquinário convertidas em produção, entre outros benefícios. O uso de modelos matemáticos e computadores para esta atividade possibilita testar uma grande quantidade de combinações das mais diferentes variáveis e, no limite, encontrar a proposta de solução ótima e que faz a melhor alocação dos recursos escassos. Dentro deste escopo, o presente trabalho apresenta um modelo matemático, acompanhado do código computacional em Python. Este é aplicável em indústrias que utilizam máquinas paralelas heterogêneas de capacidade finita, com setups dependentes (tanto em custo quanto em tempo) da sequência de programação, com produtos em estágio único de processamento, observando restrições de estoque de componentes, horas-homem disponíveis e capacidade de armazenagem de produtos acabados. Complementando as restrições mencionadas, o modelo tem por objetivo reduzir o custo de execução da programação. Para isto, considera os custos de setup, os custos de manutenção de estoque, a penalidade financeira por não atender o pedido no prazo especificado pelo cliente e o custo de produção do item vendido considerando que as máquinas são heterogêneas e, por consequência, apresentam custos diferentes para produzir o mesmo item. O modelo executado resolveu o problema para uma indústria com 18 máquinas, 350 produtos acabados, 4576 componentes, 2 macro períodos de programação, cada um contendo 5 micro períodos variáveis. A solução ótima foi encontrada em 10h de processamento utilizando um computador com processador Intel i5-2410M 2.30GHz quad-core com 6GB de memória RAM, solver Gurobi, tendo sido programado em linguagem Python com a biblioteca PuLP. Muito embora este tempo total de processamento possa ser considerado alto para uma aplicação prática, o modelo atingiu o gap de 1% do melhor resultado em aproximadamente 2h.Production scheduling is a primary activity within industries and becomes more important the more complex each company's operation is. As the productive environment increases in resources, products and constraints, it becomes harder to achieve the optimal lot-sizing and scheduling given the number of possibilities and different combinations. Carrying out this activity can save resources, maximize machine hours converted into production, among other benefits. The use of mathematical models and computers for this activity makes it possible to test a large number of combinations of different variables and, in the limit, to find the optimal solution that makes the best allocation of scarce resources. Within this scope, this dissertation presents a mathematical model, accompanied by computational code in Python, applicable in industries that use capacitated heterogeneous parallel machines, with dependent setups (both in cost and time) of the scheduling sequence, single-stage processing, observing component availability constraints, available man-power, and finished goods storage capacity. Complementing the mentioned restrictions, the model aims to reduce the cost of production plan execution. For this, it considers setup costs, inventory maintenance costs, back-ordering penalty and finished good production cost considering that the machines are heterogeneous and, consequently, have different costs to produce the same item. The model solved the problem for an industry with 19 machines, 480 products, 4576 components, 2 macro periods, each one containing 5 variable micro periods. The optimal solution was found in 10h of processing using a computer with an Intel i5-2410M 2.30GHz quad-core processor with 6GB of RAM, solved by Gurobi package, programmed using Python language and PuLP library. Although total processing time can be considered high for a practical application, the model reached the gap of 1% of the best result in approximately 2h.application/pdfporLinha de produçãoOtimização de processosModelagem matemáticaPlanejamento da produçãoSchedulingLot-sizingMathematical modelPythonGurobiModelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelasinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisUniversidade Federal do Rio Grande do SulEscola de EngenhariaPrograma de Pós-Graduação em Engenharia de Produção e TransportesPorto Alegre, BR-RS2023mestrado profissionalinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001169638.pdf.txt001169638.pdf.txtExtracted Texttext/plain201845http://www.lume.ufrgs.br/bitstream/10183/259215/2/001169638.pdf.txta0c6fbe44e473c266ea4a5a17173ef98MD52ORIGINAL001169638.pdfTexto completoapplication/pdf825911http://www.lume.ufrgs.br/bitstream/10183/259215/1/001169638.pdfccb0c5d56e7b0d6b913899dac82c740eMD5110183/2592152023-06-21 03:33:49.50271oai:www.lume.ufrgs.br:10183/259215Biblioteca Digital de Teses e Dissertaçõeshttps://lume.ufrgs.br/handle/10183/2PUBhttps://lume.ufrgs.br/oai/requestlume@ufrgs.br||lume@ufrgs.bropendoar:18532023-06-21T06:33:49Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false
dc.title.pt_BR.fl_str_mv Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
title Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
spellingShingle Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
Demarco, Henrique
Linha de produção
Otimização de processos
Modelagem matemática
Planejamento da produção
Scheduling
Lot-sizing
Mathematical model
Python
Gurobi
title_short Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
title_full Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
title_fullStr Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
title_full_unstemmed Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
title_sort Modelo matemático para dimensionamento de lote e sequenciamento de produção com máquinas paralelas
author Demarco, Henrique
author_facet Demarco, Henrique
author_role author
dc.contributor.author.fl_str_mv Demarco, Henrique
dc.contributor.advisor1.fl_str_mv Cassel, Ricardo Augusto
contributor_str_mv Cassel, Ricardo Augusto
dc.subject.por.fl_str_mv Linha de produção
Otimização de processos
Modelagem matemática
Planejamento da produção
topic Linha de produção
Otimização de processos
Modelagem matemática
Planejamento da produção
Scheduling
Lot-sizing
Mathematical model
Python
Gurobi
dc.subject.eng.fl_str_mv Scheduling
Lot-sizing
Mathematical model
Python
Gurobi
description A programação da produção é atividade primordial dentro das indústrias e passa a ser mais importante quanto mais complexa é a operação de cada empresa. À medida que o ambiente produtivo aumenta em recursos, produtos e restrições, torna-se mais difícil alcançar a programação ótima dada a quantidade de possibilidades e combinações distintas. A execução desta atividade com o devido cuidado pode gerar economia de recursos, maximização das horas de maquinário convertidas em produção, entre outros benefícios. O uso de modelos matemáticos e computadores para esta atividade possibilita testar uma grande quantidade de combinações das mais diferentes variáveis e, no limite, encontrar a proposta de solução ótima e que faz a melhor alocação dos recursos escassos. Dentro deste escopo, o presente trabalho apresenta um modelo matemático, acompanhado do código computacional em Python. Este é aplicável em indústrias que utilizam máquinas paralelas heterogêneas de capacidade finita, com setups dependentes (tanto em custo quanto em tempo) da sequência de programação, com produtos em estágio único de processamento, observando restrições de estoque de componentes, horas-homem disponíveis e capacidade de armazenagem de produtos acabados. Complementando as restrições mencionadas, o modelo tem por objetivo reduzir o custo de execução da programação. Para isto, considera os custos de setup, os custos de manutenção de estoque, a penalidade financeira por não atender o pedido no prazo especificado pelo cliente e o custo de produção do item vendido considerando que as máquinas são heterogêneas e, por consequência, apresentam custos diferentes para produzir o mesmo item. O modelo executado resolveu o problema para uma indústria com 18 máquinas, 350 produtos acabados, 4576 componentes, 2 macro períodos de programação, cada um contendo 5 micro períodos variáveis. A solução ótima foi encontrada em 10h de processamento utilizando um computador com processador Intel i5-2410M 2.30GHz quad-core com 6GB de memória RAM, solver Gurobi, tendo sido programado em linguagem Python com a biblioteca PuLP. Muito embora este tempo total de processamento possa ser considerado alto para uma aplicação prática, o modelo atingiu o gap de 1% do melhor resultado em aproximadamente 2h.
publishDate 2023
dc.date.accessioned.fl_str_mv 2023-06-20T03:30:21Z
dc.date.issued.fl_str_mv 2023
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10183/259215
dc.identifier.nrb.pt_BR.fl_str_mv 001169638
url http://hdl.handle.net/10183/259215
identifier_str_mv 001169638
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFRGS
instname:Universidade Federal do Rio Grande do Sul (UFRGS)
instacron:UFRGS
instname_str Universidade Federal do Rio Grande do Sul (UFRGS)
instacron_str UFRGS
institution UFRGS
reponame_str Biblioteca Digital de Teses e Dissertações da UFRGS
collection Biblioteca Digital de Teses e Dissertações da UFRGS
bitstream.url.fl_str_mv http://www.lume.ufrgs.br/bitstream/10183/259215/2/001169638.pdf.txt
http://www.lume.ufrgs.br/bitstream/10183/259215/1/001169638.pdf
bitstream.checksum.fl_str_mv a0c6fbe44e473c266ea4a5a17173ef98
ccb0c5d56e7b0d6b913899dac82c740e
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)
repository.mail.fl_str_mv lume@ufrgs.br||lume@ufrgs.br
_version_ 1800309217819623424