UNIVERSIDADE NOVE DE JULHO PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO VALDECIR DE OLIVEIRA PEREIRA

Tamanho: px
Começar a partir da página:

Download "UNIVERSIDADE NOVE DE JULHO PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO VALDECIR DE OLIVEIRA PEREIRA"

Transcrição

1 UNIVERSIDADE NOVE DE JULHO PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO VALDECIR DE OLIVEIRA PEREIRA FRAMEWORK COMPUTACIONAL PARA PROGRAMAÇÃO DE PRODUÇÃO DE CAPACIDADE FINITA São Paulo 2013

2 VALDECIR DE OLIVEIRA PEREIRA FRAMEWORK COMPUTACIONAL PARA PROGRAMAÇÃO DE PRODUÇÃO DE CAPACIDADE FINITA Dissertação apresentada ao programa de pós-graduação da Universidade Nove de Julho, como requisito parcial para obtenção do título de Mestre em Engenharia da Produção. Orientador: Prof. Dr. André F. H. Librantz São Paulo 2013

3

4

5 Agradecimentos Agradeço primeiramente à Deus por me dar saúde, força e dedicação. Aos meus pais pelo exemplo de garra, carácter e ética. À Rafaela minha esposa, pelo carinho, dedicação e compreensão. Ao meu orientador Dr. André Felipe Librantz pelo apoio, orientação e amizade, além de nossas conversas regadas a muito café. Ao Professor Dr. Rafael Agnelli Mesquita, por ter me convidado e apresentado a este programa de mestrado. Aos demais professores do programa de mestrado, pela dedicação e desejo de contribuir com o desenvolvimento dos mestrandos. Aos meus sócios e amigos Rodrigo e Gabriel, pelo apoio e compreensão. À UNINOVE pela concessão da bolsa de estudos. E finalmente a todos os colegas de turma e a todas as demais pessoas que contribuíram para a realização deste trabalho.

6 vi RESUMO O ambiente competitivo atual leva as empresas a produzir melhor, mais rápido e com menor custo. Para se manter à frente de seus concorrentes, é necessário o uso de ferramentas que podem ajudar na tomada de decisão. Neste contexto, um software de programação de produção, pode contribuir para o sucesso. Neste cenário, o framework proposto pode fornecer uma infraestrutura básica para o desenvolvimento de software que pode atender às demandas dos sistemas de produção atuais e pode ser estendido para satisfazer outros requisitos. Um software protótipo foi desenvolvido para ser utilizado como referência para a estrutura proposta. Nesta aplicação foram desenvolvidas algumas regras de despacho e algoritmos genéticos visando melhores resultados. O sistema foi implantado em uma indústria de moldes e os resultados indicam que é uma boa alternativa para melhorar o desempenho da produção. Palavras-chave: Programação da Produção, Planejamento Avançado e Programação, Programação por Capacidade Finita, Regras de Despacho, Algoritmos Genéticos.

7 vii ABSTRACT The current competitive environment leads companies to produce better, faster and at lower cost. To keep ahead of your competition, it is necessary to use tools that can help in decision making. In this context, a production planning software can contribute to success. In this scenario, the proposed framework can provide a basic infrastructure for software development that can meet the demands of the current production systems and it can be extended to satisfy other requirements. A prototype software was developed as reference to the proposed framework. In this application, some dispatching rules and genetic algorithms were developed aiming better results. The system was deployed in a mold industry and the results indicate that it could be a good alternative to improve production performance. Keywords: Production Scheduling, Advanced Planning and Scheduling, Finite Capacity Dispatching Rules, Genetic Algorithms.

8 viii Constraint programming represents one of the closest approaches computer science has yet made to the Holy Grail of programming: the user states the problem, the computer solves it. (FREUDER, Eugene C., 1997). Programação por restrições representa uma das abordagens mais próximas do Santo Graal da programação oferecidas pela ciência da computação até hoje: o usuário declara o problema, o computador o soluciona (FREUDER, Eugene C., 1997).

9 ix LISTA DE FIGURAS Figura 1 Metodologia de pesquisa... 4 Figura 2 - Sistema Produtivo Figura 3 - Os três níveis hierárquicos do sistema produtivo Figura 4 - Representação gráfica de uma classe Figura 5 - Agregação e composição de classes Figura 6 - Herança de Classes Figura 7 - Exemplo das 4 rainhas com propagação das restrições Figura 8 - Exemplo da segunda tentativa do algoritmo Figura 9 - Exemplo de programação para frente Figura 10 - Exemplo do ajuste com programação para trás Figura 11 - Sequenciamento por ordem Figura 12 - Sequenciamento por Operação Figura 13 - Representação de um indivíduo Figura 14 - Esquema de funcionamento do Algoritmo Genético Figura 15 - Esquema de cruzamento com um corte aleatório Figura 16 - Funcionamento da mutação de um gene em um indivíduo Figura 17 - Exemplo de variação de eficiência em recursos discretos Figura 18 - Exemplo da variação de máximos e mínimos em recursos contínuos Figura 19- Horizonte de programação Figura 20 - Esquema de representação gráfica de uma operação Figura 21 - Representação gráfica da alocação de um recurso discreto Figura 22 - Representação gráfica do uso de um recurso contínuo Figura 23- Exemplo de Alocação -Estágio atual da programação Figura 24 - Fluxo de validação das restrições Figura 25 - Exemplo da alocação de uma operação Figura 26 - Diagrama de Classes do Framework proposto Figura 27 - Fluxo da regra de liberação MDT Figura 28 - Fluxo da regra de carregamento paralelo Figura 29 - Representação de indivíduo Figura 30 - Exemplo de cruzamento Figura 31 - Exemplo de mutação

10 x Figura 32 - Cadastro de recursos Figura 33 - Cadastro de grupo de recursos Figura 34 - Turnos para dias da semana e dias específicos Figura 35 - Cadastro de turnos Figura 36 - Cadastro de roteiros Figura 37 - Detalhe de configuração de uma operação Figura 38 - Cadastro de ordens de produção Figura 39 - Cadastro de estados de calendário Figura 40 - Tela de programação do software protótipo Figura 41 - Gráfico de representação do recurso contínuo Figura 42 - Utilização dos recursos discretos Figura 43 - Gráfico de tempo de espera acumulado Figura 44 - Tempo acumulado de operações em espera Figura 45 - Gráfico de normalização por data de entrega Figura 46 - Informações sobre a programação Figura 47 - Tela do software com diversos cenários gerados Figura 48 - Gráfico de Gantt com todas as ordens programadas Figura 49 - Quadro de parâmetros do Algoritmo Genético do software protótipo Figura 50 - Gráfico de variação de Leadtime total nas soluções geradas pelo AG Figura 51 - Gráfico de variação de espera total nas soluções geradas pelo AG Figura 52 - Tela para o desenvolvimento de regras de liberação Figura 53 - Exemplo da regra de liberação WIP para frente em linguagem Pascal Figura 54 - Janela de manutenção no banco de dados do software Figura 55 - Ambiente de desenvolvimento do software protótipo Figura 56 - Exemplo de código fonte no software protótipo Figura 57 - Integração do software protótipo ao sistema de gestão

11 xi LISTA DE TABELAS Tabela 1 - Diferenças básicas entre os termos planejamento e programação Tabela 2 - Diferença entre os períodos de planejamento e programação Tabela 3 - Regras de liberação Tabela 4 - Formas de utilização dos recursos contínuos Tabela 5 - Resultados comparativos entre regras de liberação Tabela 6 - Soluções geradas pelo Algoritmo Genético Tabela 7 - Indicadores da empresa A antes e após a implantação do software protótipo

12 xii LISTA DE QUADROS Quadro 1 - Comparativo entre os diversos sistemas produtivos Quadro 2 - Comparativo entre sistemas produtivos contínuos e de massa Quadro 3 - Diferenças básicas entre os sistemas jobshop e flowshop Quadro 4 - Etapas para normalização e obtenção do índice ponderado Quadro 5 - Lista de recursos da ferramentaria exemplo Quadro 6 - Disponibilidade dos recursos Quadro 7 - Roteiro de fabricação da peça A Quadro 8 - Roteiro de fabricação da peça B Quadro 9 - Ordens de produção do exemplo Quadro 10 - Recursos e pessoal ocupado na ferramentaria

13 xiii LISTA DE SIGLAS APS - Advanced Planning and Scheduling ATO - Assemble to Order BoM - Bill of Material COM - Critical Path Method CR - Critical Ratio CRP - Capacity Requirements Planning CSP - Constraint Satisfaction Problem EDD - Earliest Due Date ERP - Enterprise Resource Planning ETO - Engineer to Order FCFS - First Come, First Served FCS - Fine Capacity Scheduling FIFO - Fist in fist out ICR - Índice Crítico (Razão Crítica) IFA - Índice de Falta IFO - Índice de Folga IPI - Índice de Prioridade MDE - Menor Data de Entrega MRP I - Material Requirements Planning MRP II - Manufacturing Resource Planning MTO - Make to Order MTP - Menor Tempo de Processamento MTS - Make to Stock OC - Ordem de Compra OP - Ordem de Produção PA - Produto Acabados PERT - Program Evaluation and Review Technique PCP - Planejamento e Controle da Produção PESP - Primeira que Entra Primeira que Sai PMP - Plano Mestre de Produção PPCP - Planejamento, Programação e Controle da Produção

14 xiv RDP - Restrição Dependência entre Operações RF - Razão do Faturamento RFMT - Restrição Fim Mais Tarde RIMC - Restrição Início Mais Cedo RMC - Razão da Margem de Contribuição ROA - Restrição Operação Alocada RPC - Restrição Propriedade de Conferência RRC - Restrição Recurso Contínuo RRD - Restrição Recurso Discreto SPT - Shortest Processing Time UML - Unified Modeling Language WIP - Work in Process

15 15 Sumário RESUMO... vi ABSTRACT... vii LISTA DE FIGURAS... ix LISTA DE TABELAS... xi LISTA DE QUADROS... xii LISTA DE SIGLAS... xiii 1. CONSIDERAÇÕES INICIAIS Objetivo geral Objetivos específicos Justificativa Metodologia de pesquisa Revisão da literatura Organização do trabalho FUNDAMENTAÇÃO TEÓRICA Introdução aos sistemas produtivos Classificação dos sistemas produtivos Fluxo de operações Estratégia de atendimento da demanda Atividades do PCP Sistema coordenador de ordens Material Requirements Planning (MRP) Criticas à adoção do MRP Diferença entre os termos planejamento e programação Programação da produção... 23

16 Fundamentação teórica das técnicas utilizadas Conceitos utilizados para construção do framework Orientação a objetos UML (Unified Modeling Language) Framework Algoritmos de busca e otimização CSP (Constraint Satisfaction Problem) Regras de liberação Algoritmo Genético MATERIAIS E MÉTODOS Horizonte de programação Entidades Restrições Métodos de escolha do recurso Resolução das restrições Exemplo de funcionamento Diagrama de classes Sequenciamento das ordens e operações Exemplo de modelagem de um sistema produtivo RESULTADOS E DISCUSSÃO Software protótipo Estudo de caso CONCLUSÃO Sugestões de trabalhos futuros REFERÊNCIAS BIBLIOGRÁFICAS ANEXO Publicação XXXI Encontro Nacional de Engenharia de Produção (2011). 100

17 1 1. CONSIDERAÇÕES INICIAIS A concorrência mundial tem pressionado as empresas a cada dia produzirem mais, em menor tempo, com menor custo, com melhor qualidade, respeitando o meio ambiente e com grande variedade de produtos, tendendo a produtos personalizados. A cada dia a pressão por sistemas produtivos que sejam mais eficientes e controláveis estimula a pesquisa por alternativas inteligentes e viáveis. Dentro deste cenário, a programação da produção de capacidade finita é objeto de pesquisa no mundo nas últimas décadas, sempre buscando soluções ótimas, ou boas, do ponto de vista de redução de tempo e custo de setup, makespan, tempo de fluxo, atraso das tarefas e no atendimento das ordens de produção dentro de prazos de entrega e com a melhor utilização dos recursos da fábrica (MORAIS, 2009). Dentre os diversos tipos de indústria existem sempre novos desafios que partem das características do processo de fabricação, da forma de atendimento das ordens às restrições técnicas e tecnológicas. Gerar uma programação das ordens de produção considerando todas estas características e garantir bons resultados em tempo computacional aceitável é um grande desafio e gera espaço para novas pesquisas. Turatti (2009) sugere que o sistema de programação de produção deve reproduzir as decisões estratégicas da empresa, com regras de programação que respeitem estas decisões, tornando-o assim um sistema que busca os melhores resultados em uso da capacidade fabril, direcionando os esforços da fábrica em busca dos objetivos estratégicos da empresa. Framinan e Ruiz (2010) realizaram um levantamento em 184 artigos sobre programação de produção. Dentre todos artigos, menos de 3% consideravam condições realistas de produção. Outro fato que reforça a pesquisa em soluções de programação da produção, foi a pesquisa realizada por (GIACON,2011), apoiada pela FIESP (Federação das Indústrias do Estado de São Paulo), que destacou que apenas 11% dos respondentes utilizam sistemas de programação da produção e 40% dos respondentes MTO (Make to order) disseram que pretendem investir neste tipo de solução. Esta mesma pesquisa demonstra que a adoção de soluções ERP (Enterprise Resource Planning) já é bastante difundida no mercado brasileiro e com instalações sendo utilizadas há mais de 10 anos. A adoção de soluções de ERP, que normalmente utilizam algoritmos MRP I (Material Requirements Planning) ou MRP II (Manufacturing Resource Planning), não são capazes de gerar uma programação detalhada para a fábrica com eficiência. A deficiência na geração de uma programação detalhada ocorre em função de diversas características como: lead times superestimados, programação infinita, mesmo com a adoção do módulo CRP(Capacity

18 2 Requirements Planning) que faz uma verificação aproximada da capacidade e não detalhada como nas soluções de programação da produção (GIROTTI,2011). Outros trabalhos descrevem as vantagens das soluções de programação da produção também conhecidas pelo nome comercial APS (Advanced Planning and Scheduling) em relação às técnicas MRP I e II, como a flexibilidade para a geração de cenários sendo uma ferramenta de apoio à tomada de decisão, que não é possível em soluções ERP (GIROTTI,2011). Dentre as diversas técnicas possíveis para o desenvolvimento de soluções APS, este trabalho apresenta um framework ou arcabouço, utilizando um diagrama de classes em UML(Unified Modeling Language) e a aplicação do método de busca CSP (Constraint Satisfaction Problem), como método de busca local, associado a regras de liberação e Algoritmos Genéticos, concluindo com o desenvolvimento de software protótipo, seguido de um exemplo de modelagem e um estudo de caso Objetivo geral Desenvolver um framework conceitual que possa ser utilizado para o desenvolvimento de software de programação de produção que respeite as reais características dos diversos sistemas produtivos Objetivos específicos - Desenvolver um diagrama de classes para servir de modelo para o desenvolvimento de software de programação de produção que possa ser extensível às necessidades de cada indústria, além de permitir a adoção de regras de liberação e algoritmos metaheurísticos. - Desenvolver um software protótipo para validação do framework, com exemplos da adoção de regras de liberação e Algoritmos Genéticos. - Fazer a implantação do software protótipo em uma empresa e verificar os resultados de sua adoção.

19 Justificativa A crescente pressão por melhores produtos, com menor custo e sendo produzidos com mais eficiência, tem exposto as falhas das soluções de ERP (Enterprise Resource Planning) atualmente utilizadas pelas empresas. Esta pressão pode ser atenuada com adoção das ferramentas computacionais adequadas, no caso da programação de produção, o uso de soluções APS (Advanced Planning and Scheduling) (LIDDELL, 2009). Essas soluções devem considerar o posicionamento estratégico da empresa e aderir as características reais dos sistemas produtivos, fazendo-se necessário muitas vezes o desenvolvimento de regras ou algoritmos específicos para atender as reais necessidades das empresas (TURATTI;MARCANTONIO, 2009). O mercado de soluções APS comerciais no Brasil é dominado por soluções desenvolvidas em outros países, o que reforça a importância da pesquisa e desenvolvimento no país fazendo com que se desenvolva este tipo de tecnologia (PACHECO;SANTORO, 2001), desta forma, esse trabalho pode servir de contribuição para as empresas brasileiras desenvolverem sistemas produtivos mais eficientes Metodologia de pesquisa Este trabalho caracteriza-se como uma pesquisa de natureza aplicada para gerar conhecimento, a partir da aplicação da solução em problemas específicos. De acordo com Gil (2002), este trabalho pode ser classificado como exploratório-descritivo. Classifica-se como exploratório, pois visa proporcionar maior familiaridade com o objeto em estudo, tornando-o explícito através da apresentação do framework e algoritmos correlatos, descritiva, pois detalha as atividades de modelagem de sistemas produtivos através de um exemplo de modelagem e um estudo de caso. O projeto teve início com uma pesquisa bibliográfica realizada principalmente por meio de sistemas de busca no portal de periódicos da CAPES, Science Direct, Scielo, EBSCOhost além de livros de administração de produção (Figura 1). As buscas se concentraram nos temas production scheduling, APS (Advanced Planning and Scheduling), framework, constraint satisfaction problem e suas combinações. O diagrama de classes foi desenvolvido utilizando a notação UML (Unified Modeling Language) e as premissas de abstração em modelagem de sistemas foram baseados em orientação a objetos

20 4 Figura 1 Metodologia de pesquisa Fonte: o autor. A empresa selecionada para servir o de caso foi uma empresa de fabricação sob encomenda, com grande variedade de roteiros de fabricação e disposta a disponibilizar as informações necessárias bem como utilizar-o software protótipo Revisão da literatura Nesta seção estão organizados em ordem cronológica crescente os trabalhos que mais influenciaram o desenvolvimento do framework de programação de produção. Reis (1996) fez um resumo das ferramentas de sequenciamento de produção desenvolvidas até 1996 e as tecnologias empregadas em cada solução com os benefícios e problemas de cada ferramenta. Brailsford, Potts e Smith (1999) fizeram uma revisão das principais técnicas utilizadas para resolução de restrições como arco consistência e propagação de restrições, concluindo que não é o método mais eficiente em grandes espaços de busca em comparação com métodos como Algoritmos Genéticos ou Simulated Anneling, mas que pode ser bastante eficiente principalmente em problemas de busca local. Pacheco e Santoro (2001) realizaram um estudo de caso em seis empresas brasileiras consideradas líderes em seus setores, identificando a falta de conhecimento sobre a tecnologia APS(Advanced Planning and Scheduling) empregada bem como definição clara dos objetivos e critérios formais de escolha.

21 5 Brucker (2002) demonstrou uma generalização do problema RCPSP(Resource- Constrained project scheduling problem), com o uso de propagação de restrições. Ichihara (2002) tratou o problema da alocação de recursos em projetos, com objetivo de minimizar o tempo de execução do projeto bem como o custo e valor presente do projeto, utilizando de métodos heurísticos. Branco Coelho e Mayerle (2007) utilizaram Algoritmos Genéticos para realizar programação em job shop. Os autores utilizaram como população inicial o resultado de duas regras de liberação SPT(Shortest Processing Time) e aleatória, reduzindo o tempo computacional para o Algoritmo Genético alcançar os melhores resultados. Rodrigues e Gômez (2008) realizaram um trabalho com o uso de Busca Tabu para o problema job shop em um sistema de manufatura flexível, levando em consideração datas de entrega, turnos de produção e trocas de ferramentas. Com o uso do método de Busca Tabu, o número de iterações necessárias para encontrar a solução foi reduzido. Fernandes, Azeka e Godinho-filho (2008) desenvolveram um trabalho de identificação da lacuna entre as tecnologias de programação e controle e suas aplicações na indústria. O trabalho atuou em três áreas distintas: revisão da literatura, pesquisas com gerentes de grandes empresas e com reconhecidos acadêmicos da região de São Carlos. Os autores concluíram que existe a necessidade de uma aproximação entre as empresas e a universidade para a troca de tecnologias e capacitação dos colaboradores das empresas. Turatti e Marcantonio (2009) descreveram os benefícios da adoção de scheduling e a relação com os três níveis decisórios da empresa. Os autores sugerem novas regras de priorização que contemplem a direção estratégica da empresa. Discorreram sobre a vantagem de gerar cenários que possam ser analisados antes da tomada de decisão e ressaltaram a importância do controle para garantir a aplicação da programação na fábrica. Xing, Chen e Yang (2009) estudaram o problema de programação job shop flexível, com a adoção de objetivos multicritério. Eles consideraram conjuntamente a minimização de makespan, tempo total de carregamento por máquina e pela máquina gargalo, utilizando Algoritmos Genéticos e Busca Tabu para a solução do problema estudado. Morais, Menegarde e Cantiere (2009) fizeram um estudo das principais regras de despacho e o impacto no resultado da programação. Analisaram também os diversos critérios de desempenho. Concluíram que cada regra tem objetivo específico e seu trabalho pode ser utilizado como um guia para orientar a aplicação mais adequada das regras de despacho aos objetivos específicos.

22 6 Vianna, Franco e Vianna (2010) compararam o uso de Algoritmos Genéticos com cruzamento com um corte aleatório em relação a duas estratégias distintas utilizando a reconexão por caminhos em problemas job shop. Os autores observaram que as duas abordagens de reconexão por caminhos alcançaram os melhores resultados em menos tempo computacional. Browning e Yassine (2010) fizeram um estudo no qual analisaram o desempenho de vinte regras de despacho com testes para validar o desempenho de cada regra em diversos ambientes. Os autores sugerem o uso deste trabalho como guia para a aplicação das regras mais adequadas aos objetivos desejados, com destaque para as regras conhecidas como MINSLK(Minimum Slack) e SASP(Shortest Activity from Shortest Project). Cantiere, Morais e Boiko (2010) realizaram um levantamento bibliográfico sobre o problema de programação de produção em sistemas flow shop com tempos de setup dependentes de sequência. Poucos trabalhos que consideram esta característica foram encontrados. Os autores propuseram uma nova regra de despacho tendo como base a regra MM- FlowTime 1 que foi nomeada de MMC-FlowTime. Com esta nova regra obteve-se um bom desempenho de minimização makespan quando comparado a outras regras de despacho. Novas e Henning (2010) apresentaram um framework com técnicas para realização da realocação das operações, identificando somente as alterações necessárias, diminuindo o custo computacional ante o sequenciamento de todas as operações, reagindo instantaneamente ou não com informações em tempo real da fábrica, alterando somente as operações afetadas por mudanças e as que sofrerão impacto destas mudanças. Diversas estratégias foram abordadas e analisadas. A proposta de um framework para corrigir a programação utilizou orientação a objetos e CP(Constraint Programming). Framinan e Ruiz (2010) propuseram uma arquitetura básica para o desenvolvimento de soluções APS (Advanced Planning and Scheduling). A arquitetura por eles proposta apresenta os principais módulos e as diversas técnicas que podem ser empregadas para solução do sequenciamento de operações. Os autores ressaltam a grande quantidade de artigos que não consideram as características reais da fábrica. Zeballos (2010) apresentou uma metodologia que utiliza conceitos de programação de restrição aplicada em sistemas de manufatura flexível. Para a resolução das restrições o autor 1 As siglas MM são utilizadas para representar a minimização de média do tempo de fluxo.

23 7 utilizou o solver comercial da IBM, ILOG e conseguiu bons resultados em menos de 2000 segundos de processamento. Hvolby e Steger-Jensen (2010) fizeram um levantamento dos principais trabalhos sobre sequenciamento de produção baseado em restrições, demostrando através do uso da solução Oracle APS os benefícios em relação aos algoritmos MRP. Mainieri e Ronconi (2010) propuseram uma nova regra de despacho denominada PRTTa 2 para o problema flowshop flexível. Os autores encontraram resultados satisfatórios com a redução de makespan. Weglaz et al.(2010) fizeram uma vasta pesquisa bibliográfica sobre as mais importantes publicações dos últimos anos, sobre sequenciamento de atividades de projetos, analisando as diversas técnicas empregadas até hoje. Os autores analisaram diferentes pontos de vista sobre sequenciamento com as diferentes estratégias. Com o objetivo de facilitar o desenvolvimento de novos trabalhos sobre o tema padronizaram a nomenclatura sobre recursos, tipos de recursos, restrições de precedência, de tempo de duração, entre outros. Bicalho, Santos e Arroyo (2011) propuseram uma metaheurística híbrida GRASP e Busca TABU para o problema clássico job shop. Obtiveram resultados melhores do que os já publicados para o problema. Girotti, Nishimura e Mesquita (2011) desenvolveram um sistema de programação da produção para job shop implementando três regras de despacho FIFO (First In First Out), SPT (Shortest Processing Time) e EDD (Earliest Due Date) utilizando o software VBA/Excel. Apesar das limitações impostas pelo Excel, obtiveram bons resultados. A solução proposta permite oferecer uma visão geral do problema de programação de produção. Silva, Leite e Junior (2011) utilizaram a Lógica Fuzzy com a data de entrega, tempo de ciclo do processo de produção e margem de contribuição para gerar um índice que foi utilizado como ordem no sequenciamento das operações. Balin (2011) estudou o problema de máquinas paralelas com duas abordagens distintas. Algoritmo Genético e Fuzzy e comparou os resultados com base na regra LPT(longest processing time). Xu, Xu e Xie (2011) fizeram um levantamento das últimas pesquisas relacionadas ao problema de dupla restrição entre máquinas e operadores, conhecido na literatura como DRC (Dual Resource Constrained). Os autores fazem uma crítica à adoção de regras de liberação 2 A sigla PRTTa é uma variação da sigla PRTT (Priority Rule for Total Tardiness) é uma regra para redução do atraso total.

24 8 estáticas e sugerem uso de outras técnicas como Rede Neural Artificial e Algoritmos Genéticos defendendo o uso de regras dinâmicas de programação. Silva, Morabito e Yanasse (2011) propuseram uma solução utilizando programação inteira mista, para indústria aeronáutica com uso de gabaritos de montagem que sofrem restrição adicional com a limitação de uso de recursos adjacentes. Esta revisão da literatura destaca diversos esforços da comunidade cientifica em buscar melhores soluções para programação de produção. No entanto não foi encontrada durante as buscas uma proposta de framework que pudesse ser usada como base para o projeto de um software de programação avançada de produção. Entretanto, serviram como contribuição as diversas estratégias utilizadas pelos seus respectivos autores ao propósito de desenvolver um framework computacional, tendo como principal referência o trabalho de Weglaz et al.(2010) Organização do trabalho Este trabalho está dividido em cinco capítulos, como segue: Capítulo 1: traz a definição objetivos, justificativa, metodologia de pesquisa e a revisão da literatura. Capítulo 2: inclui a fundamentação teórica dos sistemas produtivos com as principais formas de classificação e características além das atividades exercidas pelo PCP, destacando a atividade de programação da produção e também faz uma introdução ao desenvolvimento orientado a objetos, seguido das técnicas de busca e otimização utilizadas neste trabalho: CSP(Constraint Satisfaction Problem), regras de liberação e Algoritmos Genéticos. Capítulo 3: apresenta os componentes do framework, diagrama de classes, restrições, formas de aplicação concluindo com um exemplo de uso através de uma modelagem. Capítulo 4: demonstra o software protótipo desenvolvido utilizando o modelo proposto pelo framework e relata também a implantação do software em uma indústria de moldes para injeção plástica. Capítulo 5: traz a conclusão do trabalho e sugestões de trabalhos futuros. Além dos capítulos citados, também faz parte do trabalho as referências bibliográficas e um anexo com o artigo publicado.

25 9 2. FUNDAMENTAÇÃO TEÓRICA trabalho. Neste capítulo será feita a revisão da literatura dos principais temas abortados neste 2.1. Introdução aos sistemas produtivos O sistema de produção é um conjunto de elementos inter-relacionados com o objetivo de produzir bens e serviços. Pode ser descrito como um conjunto de insumos (input) que são processados através de recursos (máquinas, equipamentos, mão de obra, energia, etc.) e serão transformados em produtos ou serviços (output) de maior valor agregado. Transformar input em output, com valor adicionado, é eficaz se os recursos são utilizados da melhor forma possível, sem desperdício agregando maior valor ao final do processo (FERNANDES; GODINHO-FILHO, 2010; TUBINO, 2007). A tarefa de transformar insumos em produtos e serviços, tem a cada dia novos desafios em função da pressão de concorrentes, compradores, produtos substitutos, fornecedores e entrantes potenciais (PORTER, 2004). São considerados como input do sistema, mão-de-obra, capital energia e outros insumos, cujos resultados do processamento são produtos e serviços, conforme observado na Figura 2. Figura 2 - Sistema Produtivo. Fonte (MARTINS e LAUGENI, 2005). Os sistemas produtivos podem ser classificados com o objetivo de facilitar o entendimento das características inerentes a cada sistema e a relação com a complexidade de planejamento e controle desses sistemas. Na literatura estão descritas várias classificações que permitem aplicar técnicas distintas de controle e planejamento a grupos de sistemas produtivos que possuam as mesmas características.

26 10 Diversos autores (BOIKO;TSUJIGUCHI;VAROLO, 2009 ; PERALES, 2001) desenvolveram trabalhos específicos de pesquisa na literatura sobre os diversos tipos de classificação do sistema produtivo com o objetivo de organizá-los e facilitar a compreensão. A classificação do sistema produtivo não está associada ao tipo de produto que está sendo processado, mas ao comportamento da demanda, ao arranjo funcional, ao nível de contato com o cliente, às características do processo de fabricação, à tecnologia aplicada, entre outros (TUBINO, 2007). Em uma empresa podem haver diversos tipos de sistemas produtivos em sua estrutura, atendendo diretamente aos clientes externos ou a outras áreas da empresa (clientes internos) (CHASE;JACOBS;AQUILANO, 2006) Classificação dos sistemas produtivos Uma classificação amplamente utilizada para os sistemas produtivos é a classificação pelo grau de repetitividade dos produtos. Analisando o Quadro 1 pode-se citar dois extremos, estando de um lado os sistemas de produção contínuos ou em massa e outro lado os sistemas de fabricação sob encomenda, dependendo do tamanho do lote os sistemas repetitivos em lotes, podem tender aos sistemas de produção contínuos/massa ou para o sistema produtivo sob encomenda (TUBINO, 2007). Quadro 1 - Comparativo entre os diversos sistemas produtivos. Fonte (TUBINO, 2007).

27 11 Na primeira linha pode-se observar que o volume de produção tende a ser maior nos sistemas contínuos ou de massa se comparados aos sistemas de lote ou sob encomenda. É possível verificar também que quando a flexibilidade e a variedade de itens aumentam quando estamos tratando de sistemas produtivos sob encomenda, aumentando o lead time e os custos envolvidos. O detalhamento da programação e o sequenciamento das operações por recursos tendem a ser mais importantes aos sistemas de fabricação sob encomenda (TUBINO, 2007). Outros autores propuseram outras formas de classificação de sistemas produtivos, sendo uma das mais relevantes foi a classificação proposta por MACCARTHY e FERNANDES (2000) que a classificação é baseada em um modelo multidimensional identificados por quatro grupos principais (caracterização geral, caracterização do produto, caracterização do processo e caracterização do processo de montagem) os quais englobam doze variáveis que segundo o autor tem impacto direto na complexidade do sistema produtivo. Nas próximas seções serão detalhadas as características de cada sistema produtivo: contínuo e de massa, repetitivos em lotes e sob encomenda Sistemas contínuos e de massa Os sistemas contínuos são empregados quando existe alta uniformidade dos produtos e com produção em grande escala, permitindo que os processos produtivos altamente especializados façam uso extensivo de automatização. Já os sistemas em massa, exigem uma adoção maior de mão-de-obra tendo reduzida possibilidade de automatização (TUBINO, 2007). No Quadro 2 foram citados alguns exemplos de empresas de cada sistema e as principais características dos sistemas de massa e contínuos, com destaque principalmente para especialização dos recursos, tempo de setup e layout, nas quais foram encontradas as principais diferenças.

28 12 Quadro 2 - Comparativo entre sistemas produtivos contínuos e de massa Adaptado de (TUBINO, 2007) Característica Contínuo Massa Produtos Energia elétrica Petróleo Produtos químicos Montadora de automóveis Montadora de eletrodomésticos Abate e beneficiamento de aves. Serviços Monitoramento Radar Editoração de Jornais e Revistas Fornecimento de Gás e Água Transporte Aéreo Busca de Páginas internet Comportamento da Demanda Estável Estável Variedade de Produto Baixa Baixa Especialização dos Recursos Muito Alta Alta Nível de Automação Rígido Rígido Tempo de Setup Alto Médio Layout Por produto Por produto ou grupo de produtos Lead time Curto Curto Fernandes e Godinho-filho (2010) classificam o sistema de produção contínuo e de massa em três níveis distintos: contínuo puro, semicontínuo e produção em massa. Desancando como principais pontos de diferenciação o nível customização dos produto e os sistemas de controle e planejamento de produção Sistemas repetitivos em lotes São sistemas orientados a lotes padronizados de produtos, sendo necessária uma série de operações para a fabricação do lote. São utilizados quando não existe volume suficiente para a organização do sistema produtivo em massa ou em processos contínuos e existe uma variabilidade maior de produtos (TUBINO, 2007). Pode-se adotar como medida auxiliar a criação de lotes econômicos como forma de reduzir os custos de preparação (setup) e estoques de segurança para diminuir o tempo de

29 13 resposta ao cliente. Em relação aos sistemas produtivos contínuos ou de massa existe uma dependência maior da variação da demanda (MARTINS;LAUGENI, 2005). A programação da produção dos sistemas repetitivos em lote poderá ser puxada ou empurrada. Na programação empurrada, os lotes de produção são obtidos a partir da demanda de diferentes produtos acabados através do PMP (Plano Mestre de Produção), que gera a necessidade de PA (Produto Acabados). Estas necessidades são transferidas para um sistema coordenador de ordens, geralmente um sistema MRP 3.De acordo com a estrutura de produtos e estoques disponíveis calcula-se as quantidades de matéria-prima ou produtos intermediários que serão compradas via OC (Ordem de compra) ou que serão fabricados via OP(Ordem de Produção) e que posteriormente serão passadas a um sistema de sequenciamento o qual definirá a sequência das operações (CHASE;JACOBS;AQUILANO, 2006). A programação é chamada empurrada, pois o centro de trabalho recebe um conjunto de ordens que uma vez concluída é empurrada para o centro de trabalho seguinte (TUBINO, 2007). Na programação puxada o MRP é utilizado para fazer a previsão de demanda para o dimensionamento de estoques (TUBINO, 2007). Quando os clientes entram em contato solicitando itens, é gerada uma ordem de produção ao posto de trabalho anterior, para início do processo de fabricação. É chamada de programação puxada, pois quem autoriza a produção é o cliente interno que puxa, solicita, e autoriza ao centro de trabalho anterior o início da produção. Fernandes e Godinho-filho (2010) classificam o sistema repetitivo em lotes em dois sistemas distintos: repetitivos e semirepetitivos. A principal diferença destacada pelo autor é o sistema de controle e planejamento de produção Sistemas sob encomenda É um sistema dedicado às necessidades específicas dos clientes, no qual o produto tem uma data específica negociada com o cliente e utiliza equipamentos de uso geral que permitem alta flexibilidade, produzindo pequenos lotes tendendo a unidade. Muitas vezes o cliente participa ativamente no desenvolvimento do produto em diversas etapas com acompanhamento mais próximo de cada operação. A demanda é variável em função dos clientes o que impossibilita a geração de estoques de segurança. Existe uma grande preocupação com a data 3 A sigla MRP pode ser utilizada para Material Requirement Planning ou Manufacturing Resource Planning, que são sistemas coordenadores de ordens tratados em mais detalhe nas próximas seções.

30 14 de entrega e a disponibilidade de recursos capazes de cumprir os prazos. Esta preocupação se inicia a partir da negociação do produto com o cliente, portanto é necessária uma aproximação maior do departamento de PCP(Planejamento e Controle de Produção) com área de vendas para que sejam combinadas datas que possam efetivamente ser cumpridas (MARTINS;LAUGENI, 2005). Pode existir ociosidade de alguns recursos enquanto outros estão com fila, pois a variedade de produtos e as datas de entrega podem fazer com que o gargalo mude de recurso para recurso em função dos estágios de fabricação de cada produto. O atraso na entrega do produto não só compromete a reputação do fornecedor, mas também é comum a adição de multas contratuais (TUBINO, 2007) A organização é por centros de trabalho ou departamento com foco por tipo de trabalho. Quando o projeto pode se estender por semana/meses são aplicadas técnicas de PERT/CPM 4 para acompanhamento em detalhes para evitar atrasos. Pode se citar exemplos de empresas que trabalham com produção sob encomenda como a fabricação de navios, aviões, usinas hidroelétricas, máquinas e ferramentas. Como exemplo de empresas de prestação de serviços pode se citar as agências de propaganda, escritório de advocacia e arquitetura (TUBINO, 2007). Fernandes e Godinho-filho (2010) classifica o sistema de fabricação sob encomenda em sistemas não repetitivos ou grandes projetos, sendo que o principal motivador da diferenciação está no nível de customização dos produtos e no sistema de controle e planejamento de produção Fluxo de operações A classificação dos sistemas produtivos em função do fluxo de operações nos recursos, também é bastante utilizada. Podem ser observadas no Quadro 3 as principais diferenças entre os sistemas job shop e flow shop, ressaltando como principais diferenças além do fluxo de operações e do tempo do setup, temos o tipo de equipamento utilizado e as filas nos centros de trabalhos ou recursos. 4 PERT/CPM são duas ferramentas para o gerenciamento de projetos

31 15 Quadro 3 - Diferenças básicas entre os sistemas jobshop e flowshop. Fonte: (PUTNAM, 1983) JOB SHOP Opera em lotes Varia a produção variando o tamanho dos lotes ou a frequência dos lotes Tende a ter custos maiores de setup Materiais são trazidos para os departamentos ou centros de trabalho onde cada operação é realizada. Filas nos centros de trabalho são maiores Utilização de equipamentos de uso geral FLOW SHOP Opera em fluxo de materiais e peças Varia a produção alterando a taxa de produção Tende a ter custos menores de setup As operações de tipos diferentes são sequenciadas de modo que o fluxo seja mantido. Filas são pequenas e as variações tem que ser acompanhadas Utilização de equipamento de uso especializado (dedicado) Em complementariedade, podem ser encontradas na literatura outras formas de classificação em função do fluxo de trabalho (MACCARTHY;LIU, 1993). Flow shop: todas as tarefas possuem o mesmo fluxo de processamento em todas as máquinas Job Shop: todas as tarefas possuem um roteiro específico de processamento, determinado para cada operação. Flow shop permutacional: as ordens de processamento das tarefas são exatamente as mesmas para todas as máquinas. Máquina única: existe apenas uma única máquina disponível para a execução das tarefas Máquinas paralelas: são disponíveis duas ou mais máquinas, normalmente máquinas idênticas, que podem executar qualquer tarefa, onde a tarefa só é executada em uma máquina. Job Shop com máquinas múltiplas: é um job shop no qual existem k(i) máquinas idênticas em cada estágio i(i=1,2,...m), sendo que em cada estágio cada tarefa é processada por somente uma máquina. Flow shop com máquinas múltiplas: é um flow shop onde as tarefas são processadas em múltiplos estágios seguindo a mesma ordem em cada um deles, sendo possível a variação da quantidade por estágio e as tarefas são processadas apenas por uma máquina em cada estágio.

32 Estratégia de atendimento da demanda Para atendimento da demanda por produtos e serviços pode-se adotar diversas estratégias, iniciando pela produção para estoque MTS (make to stock). O objetivo é manter o estoque em níveis para atender a demanda dos clientes, possibilitando uma resposta rápida, pois os itens já estão fabricados e disponíveis em uma determinada quantidade. A produção é baseada nas previsões de demanda de itens padronizados, mas incorre em custos extras com a geração de estoques de produtos acabados (FERNANDES;GODINHO-FILHO, 2010). Outra forma de atender a demanda é quando a mesma inicia o processo de fabricação, conhecido como MTO (make to order), onde o processo somente se tem início a partir da solicitação do cliente que tem que aguardar o processo de fabricação para receber o produto, o que faz com que seja negociada a data de entrega. Em alguns casos pode-se até mesmo ser projetado em paralelo com a fabricação, o qual poderia ser considerado já uma variação de MTO (make to order) para ETO (engineer to order) que será citada a seguir. Essa estratégia de atendimento de demanda também pode ser adotada quando os produtos são perecíveis ou de alto custo. - ETO (engineer to order)-engenharia sob encomenda, o projeto, a produção de componentes e a montagem final são feitos com base nas decisões do cliente. É uma estratégia utilizada principalmente em grandes projetos, ou projetos de alta complexidade, específico para o cliente e tem que atender a um grande número de requisitos (MARTINS;LAUGENI, 2005). - ATO (assemble to order) A empresa faz estoque de subconjuntos e monta conforme a solicitação dos clientes. Os principais componentes do produto final são produzidos conforme a previsão de demanda. A chegada do pedido do cliente dispara a ordem de montagem final mediante a utilização dos componentes previamente produzidos é particularmente útil quando a variedade de produtos finais é grande, mas são produzidos através de poucos componentes. (TUBINO, 2007) Atividades do PCP As decisões sobre o sistema produtivo normalmente são tomadas pelo departamento de PCP (Planejamento e Controle da Produção), também é possível encontrar na literatura por PPCP (Planejamento, Programação e Controle da Produção). Independente da nomenclatura utilizada seu papel é definir o que, quanto e quando produzir, comprar e entregar, além de quem

33 17 e/ou onde se produzir além do controle e acompanhamento do que está sendo produzido ou não produzido (TUBINO, 2007; CHASE;JACOBS;AQUILANO, 2006). Para facilitar, este conjunto de ações foi dividido em três níveis hierárquicos de longo médio e curto prazo (Figura 3). Figura 3 - Os três níveis hierárquicos do sistema produtivo. Fonte (TUBINO, 2007) Para o horizonte de longo prazo é identificado o planejamento de processo e estratégico de capacidade. São decisões que utilizam previsão de demanda de longo prazo, determinando com que capacidade do sistema produtivo deverá trabalhar para atender aos clientes e deve estar de acordo com o planejamento estratégico da corporação. O horizonte de médio prazo leva em consideração os pedidos firmes, previsões de demanda de médio prazo se adaptando as flutuações do mercado de forma mais rápida. Inclui neste momento o planejamento por um sistema coordenador de ordens, tradicionalmente em sistemas ERP(Enterprise resource planning). O principal objetivo é coordenar a demanda do mercado com os recursos internos da empresa de forma a programar as taxas adequadas de produção de produtos finais gerando como resultado final o PMP (Plano mestre de produção), que desmembra o planejamento estratégico em planos específicos de produtos acabados. O horizonte de curto prazo refere-se a decisões de onde serão executadas as ordens planejadas ou firmadas no médio prazo. Neste instante está procurando determinar uma

34 18 programação para a fábrica, considerando efetivamente data para início e duração de cada ordem ou operação, com quais recursos estarão efetivamente disponíveis. São considerados também, turnos de trabalho, disponibilidade de materiais, quebras e manutenções preventivas (CHASE;JACOBS;AQUILANO, 2006). O controle pode ser definido como atividade gerencial por regular, no curto prazo, o fluxo de materiais em um sistema de produção por meio de informações e decisões para a sua execução. Pode se definir como quatro principais atividades do PCP (Planejamento e controle de produção): - Programar a produção em termos de itens finais PMP (Plano Mestre de Produção); - Controlar por meio de regras a necessidade de componentes e insumos; - Controlar a emissão e liberação de ordens de produção e compras; - Sequenciar as tarefas nas máquinas; Diversos sistemas foram propostos para o controle de necessidade de componentes e insumos, a emissão e liberação de ordens de compra e a programação das tarefas nas máquinas, que foram classificados por Fernandes e Filho (2007) como sistemas coordenadores de ordens e que serão discutidos na próxima seção Sistema coordenador de ordens O sistema coordenador de ordem mais utilizado é o sistema MRP. No entanto, existem outros sistemas que possuem objetivos similares e bons resultados em alguns sistemas produtivos. Como visto na seção 2.3, em uma única fábrica podem existir diversas estratégias de maneira que pode-se adotar sistemas mais específicos a cada necessidade. Seguem abaixo os quatro grupos de sistemas coordenadores de ordens classificados por Fernandes e Filho (2007). 1) Grupo I: Sistema de pedido controlado: é impossível manter estoque de produtos finais, possivelmente sistemas de produção sob encomenda ou repetitivo em lotes tendendo a unidade. a) Sistema de programação por contrato; b) Sistema de alocação de carga por encomenda. 2) Grupo II: Sistemas controlados pelo nível de estoque: as decisões são baseadas pelo nível de estoque e influenciam diretamente a geração e emissão de ordens de produção e compra.

35 19 a) Sistemas de revisão contínua, também encontrado na literatura como sistemas de duas gavetas, sistema de ponto de reposição e sistema de estoque mínimo; b) Kanban CNE (Controlado pelo Nível de Estoque), c) CONWIP (Constant Work in Process) CNE; d) Sistema de revisão periódica. 3) Grupo III: Sistemas de fluxo programado; as decisões são baseadas no estoque somadas as previsões de necessidade. a) Sistema de estoque base; b) MRP (Material Requirements Planning); c) PBC (Period Batch Control); d) OPT (Optimized Production Technology); e) Sistemas de lote padrão, etc.. 4) Grupo IV: Sistemas híbridos possuem características dos sistemas dos grupos I e II a) Maxmin; b) CONWIP H ; c) Kanban H ; d) DBR (Drum, Buffer, Rope) tambor, pulmão e corda ; e) DEWIP (Decentralized Wok in Process) ; f) LOOR (Load Oriented Order in Process) ; g) POLCA (Paired-cell Overlapping Loops of Cards with Authorization) Os diversos sistemas coordenadores de ordem não serão tratados neste trabalho e podem ser encontrados com mais detalhes em Fernandes e Filho (2007). No entanto será realizada uma breve descrição do funcionamento do MRP e as críticas do seu uso na programação de operações Material Requirements Planning (MRP) O MRP (Material Requirements Planning) foi desenvolvido no século passado por volta dos anos 60 e surgiu com a introdução da computação nas empresas com o objetivo de fazer a programação na indústria. O MRP evoluiu e foram adicionadas novas capacidades até que por volta dos anos 80, surgiu o desdobramento do conceito de MRP (Manufacturing Resource Planning), quando foram criadas as siglas MRP I para Material Requirements Planning e MRP II para

36 20 Manufacturing Resource Planning. Foram também adicionados novos recursos para atender novas áreas da empresa sendo denominado como ERP (Enterprise Resource Planning). Atualmente podem ser adotados tanto MRP I quanto MRP II ou outro sistema coordenador de ordens (GIROTTI;MESQUITA, 2011). O MRP necessita para o cálculo das necessidades, inicialmente da divisão do horizonte de planejamento em unidades de tempo, normalmente semanas ou dias que são denominadas como time buckets. O horizonte de planejamento deve contemplar o período de pedidos firmes e não exceder a capacidade de previsão. O MRP tem como entrada para o cálculo o que segue: PMP (Plano mestre de produção): possui a quantidade e data de entrega dos produtos; Lista de materiais (BoM - Bill of Material): Lista de componentes necessários para elaboração dos produtos. A lista é definida em níveis para quando for realizada a explosão a mesma seja realizada nível a nível, até a conclusão. Estoques: quantidade atual de cada item, incluindo reservas para ordens em produção e ordens de compra programadas. A lógica de funcionamento do MRP inicia pelos itens de demanda independente (produtos acabados) seguindo os passos: Netting (Balanço de estoque): determina as necessidades líquidas em cada período, subtraindo das necessidades brutas os estoques projetados e os recebimentos programados; Lot Sizing (Formação de Lote): agrupa as necessidades líquidas em tamanhos apropriados de lotes para ordens de produção ou de compra. Time Phasing (Programação para trás): obtem as datas de início e vencimento das ordens, baseando-se nos lead times padrão. BoM Explosion (Explosão de materiais): utiliza as datas de início e a lista de materiais para gerar as necessidades brutas de cada componente do próximo nível. Iteração: determina que nível da lista de materiais esta sendo explodido. Como resultado o MRP gera uma lista de ordens de compra e produção com as respectivas datas. Com o passar dos anos foram adicionado novas funções ao módulo de MRP, tendo destaque ao RCCP (Rough-cut Capacity Planning), que faz uma verificação preliminar da capacidade de produção de alguns poucos recursos críticos com o objetivo de assegurar a viabilidade dos planos de produção estipulados.

37 21 No sistema MRP II pode se adotar um módulo o CRP (capacity requirements planning) que recebe as informações do MRP e faz uma análise detalhada dos recursos críticos para determinar as datas em função da capacidade de produção. Mesmo utilizando o módulo CRP, o MRP sofre diversas críticas em sua adoção, que são tratadas na próxima seção Criticas à adoção do MRP A adoção do MRP traz inúmeros benefícios, mas sua adoção para a programação da produção traz críticas que serão descritas abaixo: Programação infinita: Não considera a disponibilidade efetiva dos recursos; Lead time superestimado: Leadtime constante que não utiliza informações do chão de fábrica em seu algoritmo. Como utiliza leadtime fixo, o mesmo é superestimado para garantir que possa ser cumprido e são somados aos tempos leadtime os tempo de fila. Além disso, o MRP discretiza o tempo em dias ou semanas (LIDDELL, 2009); Nervosismo do sistema: pequenas mudanças no PMP(Plano Mestre de Produção) geram grandes mudanças no plano gerado pelo MRP; Cultura de formação de lotes: talvez não seja o mais eficiente para alguns sistemas de produção, gerando excesso de WIP (Work in Process); Além das características citadas acima o MRP faz a programação pra trás com capacidade infinita. Mesmo com a adoção do módulo CRP, o MRP não consegue gerar uma programação detalhada, pois utilizam lead time médios que somam ao tempo de processo os tempos de fila, sendo que os tempos de fila deveriam ser resposta do sistema e não parâmetro. Outras críticas podem ser encontradas no trabalho de (GIROTTI;MESQUITA, 2011) Diferença entre os termos planejamento e programação A diferença entre os termos de planejamento e programação pode ser observada na Tabela 1. Pode-se destacar que, diferente do planejamento, na programação existe uma preocupação mais fina com a utilização dos recursos e com os detalhes do processo de fabricação (ZATTAR, 2004).

38 22 Tabela 1 - Diferenças básicas entre os termos planejamento e programação. Fonte: (ZATTAR, 2004) Planejamento O que, quando e onde fazer. Trabalha com família de produtos ou outras formas de agrupamento Capacidades, taxas, restrições de inventário, plantas e mão-de-obra Planejamento sazonal Balanceamento de recursos Planejamento orçamentário Programação Encontrar data de início e fim para cada operação Detalhes de cada produto Sincronizar atividades/operações com recursos Minimizar setup Prioridades, restrições e conflitos. Gerenciar mudanças A diferença entre planejamento e programação também depende do nível de detalhamento em que será realizado, quanto mais detalhes são definidos, utiliza-se o termo programação e quanto menos o termo planejamento (Tabela 2). Tabela 2 - Diferença entre os períodos de planejamento e programação. Fonte: (FERNANDES;GODINHO-FILHO, 2010) Nível Item considerado Período Considerado Horizonte usual Planejamento Agregado de Produção Planejamento Desagregado Programação Mestre de Produção Programação em nível de componentes e materiais Famílias de 12 meses (vários Mês produtos meses) Produto final Mês 12 meses (vários meses) Produto final ou módulo Semana Várias semanas Módulo ou Algumas componente ou Semana ou dia semanas ou dias matéria prima Programação de Alguns dias ou Operações Dia, turno ou hora. operações várias horas

39 23 Dependendo do produto a ser fabricado os termos curto prazo e longo prazo podem expressar períodos diferentes, como por exemplo, na montagem de uma usina hidroelétrica e na montagem de computadores (FERNANDES;GODINHO-FILHO, 2010) Programação da produção Dentro da programação da produção pode-se destacar três atividades básicas que são a administração de estoques, a emissão e liberação de ordens, além do sequenciamento para o qual este trabalho está dedicado. A atividade de programação da produção inicia quando se tem as ordens de produção geradas através do MRP, ou de outro sistema coordenador de ordens. O sistema coordenador de ordens tem como objetivo determinar uma sequência para execução das operações e definir quais recursos cada operação irá utilizar. Talvez pareça simples considerando um conjunto pequeno de recursos e operações, não considerando a variação de oferta dos recursos em função do tempo ou as datas de entrega prometida como também a dependência entre operações. Quando são adicionadas tais características ou mesmo as combinações possíveis geradas por um conjunto razoável de recursos e operações torna-se um problema cuja exploração por algoritmos completos de busca exaustiva é praticamente impraticável, tratando-se de um problema da classe NP-Difícil, o que significa que o tempo para encontrar a melhor solução aumenta exponencialmente em função do tamanho do problema (ROSA, 2011). Além das características do processo de fabricação e suas possibilidades combinatórias, devem ser consideradas características da política de atendimento das ordens de produção da empresa. Uma vez que os critérios que determinarão a sequência das operações podem variar em função do posicionamento estratégico da empresa e da característica da demanda no instante da programação. O sequenciamento de produção também é encontrado na literatura como scheduling, o qual pode ser definido como procedimentos para dinamicamente tomar decisões relacionando as atividades com os recursos, de modo que as atividades sejam executadas pontualmente e com alta qualidade bem como simultaneamente o volume de produção seja maximizado e os custos operacionais minimizados (FERNANDES;GODINHO-FILHO, 2010). O sequenciamento das operações trata de simular, dentro de um horizonte de tempo, o início e término das tarefas para gerar um programa detalhado para cada ordem de produção respectivamente para cada centro de trabalho, respeitando a disponibilidade de recurso. (CHASE;JACOBS; AQUILANO, 2006).

40 24 Com base em uma programação detalhada, o gerente pode determinar o efeito de mudanças de última hora gerenciar, eventos não planejados tais como a chegada de novas ordens, quebras, manutenções e executar análise de alternativas de programação. Chase, Jacobs e Aquilano (2006), citam importantes conceitos em relação à programação da produção como segue: Carregamento Infinito: a operação é passada ao recurso, verificando apenas o que é necessário com o passar do tempo, sem uma verificação de se há realmente capacidade suficiente para concluir os trabalhos; Carregamento Finito: verifica exatamente o que será feito em cada recurso a cada momento durante o dia de trabalho. Faz-se uma verificação detalhada da capacidade e das restrições de disponibilidade do recurso; Programação para frente (forward): a programação para frente o objetivo é programar todas as operações de uma a ordem o mais breve possível para que a ordem seja concluída o quanto antes; Programação para trás(backward): programa a partir de uma data futura (por exemplo, a data de entrega) todas as operações pela ordem inversa, indicando o início mais tarde possível com os recursos disponíveis. O scheduling de capacidade finita ou a programação de capacidade finita, pode ser definido como a capacidade de gerir recursos escassos combinada com a demanda ou gerenciar os processos produtivos sujeitos às restrições tecnológicas do ambiente para suprir a demanda ajustando a produção aos volumes e tempo de execução das atividades (GIROTTI;MESQUITA, 2011). Outro conceito importante é o carregamento que consiste na atividade de selecionar com quais recursos uma operação será executada. Visto desta forma teremos o carregamento em cada recurso de quais operações deverão ser executadas e em que sequência, com início e fim determinados. O carregamento de ordens com suas respectivas operações em um sistema computacional necessita de uma representação do conceito de operações e recursos como segue: Weglaz et al. (2010) classificaram os recursos em duas categorias: recursos discretos e contínuos. Recursos discretos possuem domínio discreto quando são conhecidos todos os possíveis valores, enquanto no contínuo podem existir infinitos valores em um intervalo. Cada tipo representa melhor um conjunto de recursos. Exemplos de recursos discretos são: máquinas, ferramentas, enquanto recursos contínuos são energia, dinheiro, volume, etc.

41 25 Os mesmos autores definiram atividades/operações como caracterizadas pela necessidade de recursos, dependência com outras operações, além de outros parâmetros específicos do problema em estudo. A necessidade de recurso pode ser de recursos discretos, contínuos ou ambos e os mesmos podem ser grupos de recursos onde cada grupo possui um conjunto de tempos da necessidade do recurso. Recurso: pode ser usado para definir máquinas ou mão-de-obra. Os processos podem ser limitados pelas máquinas, pela mão-de-obra ou por ambos (CHASE;JACOBS;AQUILANO, 2006) Centro de trabalho: é uma área da empresa na qual recursos produtivos estão organizados e o trabalho é completado. O centro de trabalho pode ser composto por uma única máquina, um grupo de máquinas ou uma área onde se realiza um tipo de trabalho. (CHASE;JACOBS;AQUILANO, 2006) A maneira como os recursos podem ser utilizados também foram citados em Weglaz, et al.(2010) e Ichihara (2002), uma vez que os recursos podem ser renováveis, ou seja, novamente disponíveis após o uso ou não renováveis. Os mesmos autores também citam a dependência ente operações, quando podem existir diversas formas como: fim da primeira com início da segunda, fim da primeira com o fim da segunda, início da primeira com início da segunda e fim da segunda com início da primeira. As operações dependem de duas datas, de início possível e a data de entrega. Podem ser adicionados a uma operação/atividade parâmetros como prioridade, custo, tempo de preparação (setup) etc. O sequenciamento das operações tem como principais objetivos a redução no tempo de processamento, entrega no prazo, redução de makespan, redução de tempo e custo bem como a utilização de recursos mais econômicos com menor tempo de preparação (setup). Soluções específicas de software foram desenvolvidas para atender necessidades de programação de produção. Estas soluções são encontradas no mercado com o nome de soluções APS (Advanced Planning and Scheduling) ou FCS (Fine Capacity Scheduling) e serão tratadas na próxima seção Programação avançada de produção Programação avançada de produção ou APS (Advanced Planning and Scheduling) surgiu no final dos anos 90 com um conjunto de ferramentas para permitir gerar cenários

42 26 diferentes com informações detalhadas dos recursos produtivos, gerando planos de execução viáveis. Define-se como sistemas avançados de planejamento e programação todos aqueles que: a) Consideram simultaneamente os recursos, materiais e a planta; b) Utilizam algoritmos de otimização que incorporam as restrições e as metas do negócio; c) São capazes de prover uma programação em tempo real com rápida geração de novas mudanças; d) Apresentam capacidade de simular cenários; e) Auxiliam na tomada de decisão; f) Realizam simulações do tipo disponível para promessa (avaliable-to-promise). Para que as soluções APS possam fazer a programação da produção, são necessárias algumas informações, como segue: Centro de trabalho(recursos): com informações sobre turnos, manutenções, horas extras, rendimento, etc. Roteiros: operações com os tempos para produção com a sequência que devem ser executadas. Deve fazer parte do roteiro restrições como limitação de quais recursos são capazes de executar a operação, tempos de setup fixo, dependente de sequência, etc. Ordens: são dados dinâmicos, ou seja, as ordens podem ser abertas e fechadas. As ordens podem ser geradas pelos sistemas coordenadores de ordens, mas devem ao menos possuir informações como: identificação da ordem, produto, quantidade, data de liberação, data de entrega quantidade, prioridade e cliente. Devem ser adicionados também limites como início e fim. O resultado final será toda a definição de data de início e fim para todas as operações, respeitando precedência no roteiro de produção e a disponibilidade dos recursos Técnicas de Sequenciamento O sequenciamento de operações em recursos possui dois momentos distintos. No primeiro momento define-se qual ordem deverá entrar primeiro no sistema e no segundo momento define-se qual recurso será utilizado por cada operação. Estes dois momentos estão ligados às políticas de atendimento e a melhor utilização dos recursos pela fábrica, ou como citado por Tubino (2007), as decisões estão ligadas ao tempo de processamento (custo) e data de entrega (atendimento ao cliente).

43 27 Diversas técnicas distintas podem ser utilizadas para o sequenciamento das operações, iniciando pelos algoritmos completos, que gerariam todas as combinações possíveis. No entanto, como comentado anteriormente, não gerariam solução em tempo computacional viável, sendo aplicados apenas a problemas com pouca quantidade de recursos e operações. Outra técnica utilizada é a pesquisa operacional (programação linear, inteira, grafos, etc) que é viável matematicamente e podem ser desenvolvidas para soluções particulares. Contudo, com a dinâmica da variabilidade dos sistemas produtivos, roteiros, recursos disponíveis, a manutenção dos modelos torna-se difícil. As regras de despacho pela sua simplicidade e bom desempenho em termos de tempo computacional são as técnicas mais utilizadas mesmo não tendo a garantia de encontrar a solução ótima. Outro grupo de algoritmos que também é utilizado com frequência são os algoritmos metaheurísticos. Estudos práticos demonstram boa chance de se obter soluções ótimas ou sub ótimas em diversas classes de problemas (BRANCO;COELHO;MAYERLE, 2007) Variáveis do sistema produtivo Dentro da programação de produção existem diversas variáveis que são utilizadas pelas soluções APS (Advanced Planning and Scheduling) como parâmetros para a programação (FERNANDES e GODINHO-FILHO, 2010). Seguem abaixo as principais variáveis utilizadas pelas soluções APS: a) Data de entrega: corresponde a data de entrega do produto ou conclusão da operação; b) Data de início mais cedo: corresponde a data mais cedo em que a ordem ou operação poderá iniciar o processo de fabricação; c) Quantidade total: quantidade total a ser produzida; d) Tempo de setup: tempo de preparação; e) Tempo de processamento/operação: tempo gasto para ser executada uma operação; f) Tempo de transporte: tempo gasto entre dois pontos, entre duas máquinas por exemplo.

44 Medidas de Desempenho As medidas de desempenho também conhecidas como critérios de desempenho, são destacadas abaixo (MORAIS;MENEGARDE;CANTIERE, 2009 ; FERNANDES;GODINHO- FILHO, 2010): a) Makespan: tempo gasto para conclusão das operações programadas, ou seja, do início da primeira operação ao fim da última operação. Também pode ser definido como o tempo necessário para executar um conjunto de tarefas (MORAIS;MENEGARDE;CANTIERE, 2009); b) Número médio de operações/tarefas no sistema: quantidade de material em produção, quantidade de operações dentro do sistema produtivo, o qual possui influência direta no WIP (working in proocess); c) Tempo de fluxo / Lead time de produção: tempo gasto da entrada em produção ao término de todas as operações de uma ordem. É o somatório dos tempos de processamento, de setup e de espera além do tempo de transporte; d) Tempo de fluxo total: Soma do tempo de fluxo de todas as operações no sistema e) Tempo médio de fluxo: média dos tempos de fluxo de conjunto de tarefas; f) Tempo de atraso (tadiness): é o tempo entre o término de uma ordem de produção e a data de entrega. Pode ser positivo ou negativo, se estiver em atraso será positivo, se antecipado será negativo; g) Utilização: porcentagem do uso de um recurso em um determinado período de tempo; h) Tempo de espera / tempo de fila: Tempo entre o término de uma operação e início de outra, provocado por ocupação do segundo recurso, também encontrado na literatura como tempo de fila no recurso; i) Porcentagem de ordem entregue no prazo/antes e depois: Do total de ordens atrasadas, qual o percentual será entrega no prazo, atrasado ou antecipado; j) Tempo de setup: Tempo necessário para preparação dos recursos antes da execução propriamente dita; k) Custo de Preparação: custo gasto na preparação das tarefas; l) Quantidade de clientes perdidos: Quantidade de clientes que deixaram de comprar por motivos de atraso na entrega.

45 Fundamentação teórica das técnicas utilizadas Nesta seção são abordados os tópicos relevantes das técnicas computacionais utilizadas para a especificação do framework e as técnicas de busca e otimização utilizadas no sequenciamento das operações Conceitos utilizados para construção do framework Nesta seção são apresentadas as tecnologias de desenvolvimento de software e orientação a objetos, modelagem através da linguagem UML concluindo com a definição e características de um framework Orientação a objetos O termo orientação a objetos refere-se à organização de programas de computador em objetos discretos. O objetivo é aproximar a representação computacional o mais próximo da realidade. O conceito de objeto é uma abstração ou simplificação do objeto real. Um objeto é uma entidade que pode representar objetos concretos como carro, bola, cadeira, etc. Também pode representar entidades conceituais como estratégia de jogo, política de escalonamento de recursos, etc. (FERREIRA, 2005). Um objeto possui uma identificação única e sua estrutura é representada por atributos que representam as características daquele objeto como cor, tamanho, etc. O comportamento é representado por um conjunto de operações que podem ser executadas sobre os atributos do objeto. Os objetos que possuem a mesma estrutura e comportamento são agrupados em uma mesma classe. Um objeto é um instância de uma classe e cada objeto possui seu conjunto de valores de seus atributos (BOOCH;JACOBSON;RUMBAUGH, 1999). A separação dos aspectos internos do objeto com os externos, os quais podem ser acessados por outros objetos, foi definida como encapsulamento. O encapsulamento é uma forma que evita que o programa torne-se tão interdependente que uma pequena mudança tenha grandes efeitos na aplicação. O encapsulamento permite que o objeto seja modificado internamente sem afetar outros objetos que o utilizam. Outro conceito fundamental do desenvolvimento de software orientado a objetos está no conceito de herança, que permite que as classes sejam desenvolvidas em níveis de

46 30 especialização. A classe que herda de outra classe aproveita as definições de atributos e operações. Como exemplo, pode-se citar uma classe com veículo de transporte, sendo especializado em transporte terrestre, náutico ou aeronáutico, podendo ainda possuir mais níveis de especialização como por exemplo, em veículos terrestres sendo especializados em veículos de carga e passageiros e assim sucessivamente em função da necessidade e do objetivo do software que está sendo desenvolvido (SILVA, 2000). O último conceito fundamental do desenvolvimento de software orientado a objetos é o conceito de polimorfismo, cuja palavra de origem grega significa: muitas formas. É principalmente útil quando não se sabe que objeto será necessário, mas se conhece apenas a família. Considerando o conceito de herança, portanto poderia se definir que será necessário um veículo de transporte o que possibilita que seja instanciado qualquer objeto descendente desta classe, flexibilizando o processo de desenvolvimento do software. Outras características como a possibilidade de criação de classes abstratas, a implementação de interfaces para classes e a herança de múltiplas classes podem ser encontradas em (BOOCH;JACOBSON;RUMBAUGH, 1999) ou no site da OMG (Object Management Group) UML (Unified Modeling Language) A linguagem UML nasceu da necessidade de uma notação padronizada para o desenvolvimento de software orientado a objetos principalmente nas fases de levantamento de requisitos, análise e design. Foi a junção de diversas técnicas de modelagem OMT(Object Modeling Technique), Booch, entre outras, desenvolvida por Grady Booch, James Rumbaugh, e Ivar Jacobson. Em 1997 foi submetida ao OMG (Object Management Group) a qual aprovou e ficou responsável pelo desenvolvimento e padronização da linguagem. A UML é um conjunto de notações gráficas que auxiliam a visualização, especificação, construção e documentação de sistemas de software. Para novos sistemas a UML fornece diversos diagramas para projetar software, permitindo verificar se o projeto está completo e correto (BOOCH;JACOBSON;RUMBAUGH, 1999). No total a UML possui treze diagramas que são classificados em estrutural e comportamental. Dentre os treze diagramas será apresentado a seguir apenas parte do diagrama de classe utilizado neste trabalho.

47 31 O diagrama de classes ilustra as especificações para as classes de software e de interface de uma aplicação e contém as seguintes informações: classes (associações e atributos), interfaces (com suas operações e constantes), métodos, informações do tipo do atributo. Uma classe é a descrição de um tipo de objeto. Todos os objetos são instâncias de classes, onde a classe descreve as propriedades e comportamentos daquele objeto. Usam-se classes para classificar os objetos que são identificados no mundo real. A representação gráfica em UML para uma classe possui três seções, sendo a primeira com o nome da classe, a segunda com os atributos e a terceira com as operações relativas a classe (Figura 4). Figura 4 - Representação gráfica de uma classe. Adaptado de: (BOOCH;JACOBSON;RUMBAUGH, 1999) As classes possuem relações que podem ser de: associação, especializadas, dependência, realização ou uso (BOOCH;JACOBSON;RUMBAUGH, 1999). Apenas os tipos de relação utilizados no framework serão citados a seguir: A diferença entre as relações de agregação e composição determinam no caso da composição que não existe o todo sem a parte, ou seja no exemplo da Figura 5 os objetos instanciados da classe Pedido não podem existir sem os objetos das classes Cliente e Itens do Pedido. Diferente da relação existente entre as classes Assinatura e Desempenho onde os objetos da classe Assinatura existem mesmo sem a existência de um objeto da classe Desempenho.

48 32 Figura 5 - Agregação e composição de classes. Adaptado de: (BOOCH;JACOBSON;RUMBAUGH, 1999) A relação de herança exemplificada entre as classes da Figura 6, apresentam as classes especializdas Texto Criptografado e Texto Sem Criptografia, ou seja, todas são classes derivadas da classe Texto, portanto herdam os atributos Corpo e Posição como suas operações, sendo que as classes derivadas tem sua implementação especializada para cada objetivo. Figura 6 - Herança de Classes Adaptado de: (BOOCH;JACOBSON;RUMBAUGH, 1999) Framework O framework conceitual é o resultado do processo qualitativo de teorização e pode ser compreendido como uma rede de conceitos que juntos oferecem a compreensão abrangente de um fenômeno. Em outras palavras pode ser entendido como uma rede de conceitos organizados

49 33 para representar entidades do mundo real. A seguir são apresentadas algumas características de um framework (YOSEF, 2009): Um framework conceitual não é apenas um conjunto de conceitos, mas uma construção em que cada conceito tem seu papel integral; Apresenta uma intepretação da realidade; É indeterminista por natureza e, portanto, não permite prever um resultado; Frameworks conceituais são criados sobre um determinado domínio e fornecem uma compreensão da arquitetura de forma diferente de modelos quantitativos. Para exemplificar o uso de frameworks conceituais, Yosef (2009) apresenta em seu trabalho um framework para o desenvolvimento sustentável. Outros frameworks conceituais são bastante utilizados na gestão empresarial. Como exemplo pode-se citar os frameworks de arquitetura corporativa TOGAF e Zachman, framework para análise de forças SWOT, frameworks de gestão e qualidade de dados DMBok, para gerenciamento de projetos ágeis como Scrum, entre outros (IIBA, 2011; CARVALHO;ABRANTES;CAMEIRA, 2011; DAMA, 2010). O frequente uso do termo framework no Desenvolvimento de software segue os princípios de orientação a objetos. Abaixo são citados algumas referências sobre framework. Hautamäki (2005) propôs como definição para framework um esqueleto de implementação de uma aplicação ou de um subsistema em um domínio de problema em particular. É composto por classes concretas ou abstratas e define um modelo de interação ou colaboração entre as instâncias de classes definidas pelo framework, citando a seguir as principais vantagens do uso de framework. Reusabilididade de código comum; Armazenamento da experiência do desenvolvimento; Distribuição de trabalho entre equipes; Melhoria do ciclo de desenvolvimento de software; Redução do trabalho de manutenção do software. Hautamäki (2005) também cita os principais problemas com o uso de framework. Dificuldade em criar framework reutilizável para domínios complexos; Pode aumentar a curva de aprendizado; Trabalho com múltiplos framework integrados podem ser muito difícil; Aplicações com grande quantidade de manutenções podem ser complexos;

50 34 Validação e depuração de código é mais difícil; Eficiência pode ser prejudicada; Não existem padrões para a definição e documentação específicas para framework. Diferente de uma biblioteca de classes onde a relação entre as classes fica a cargo da aplicação, em um framework já está definido o papel de relações entre as classes. Por outro lado os framework são mais dependentes do domínio do problema (TALIGENT, 1994). Framework oferece infraestrutura de projeto permitindo ao desenvolvedor reduzir o esforço. As interconexões estabelecidas definem a arquitetura da aplicação. O desenvolvedor faz uso do framework estendendo e moldando as suas necessidades específicas (DIAS, 2004). Pode-se concluir que o objetivo do framework é desenvolver diferentes aplicações de software para um domínio específico. Classes abstratas no framework é um repositório de conceitos gerais para o domínio da aplicação. Em contexto do desenvolvimento de framework pode se deixar propositalmente incompleto para que sua definição seja acabada no desenvolvimento da aplicação (SILVA, 2000) Algoritmos de busca e otimização trabalho. Nesta seção será apresentado os algoritmos de busca e otimização utilizados neste CSP (Constraint Satisfaction Problem) O CSP (Constraint Satisfaction Problem) é um sistema de busca onde se conhece os estados possíveis com um conjunto de variáveis sob um determinado domínio (RUSSELL; NORVIG, 2010). O CSP (Constraint Satisfaction Problem) pode ser considerado como o estudo de sistemas computacionais baseados em restrições, tendo por fundamento resolver problemas apenas especificando os requisitos (restrições) sobre a área problema ou, em outras palavras, sobre os valores possíveis (domínio) das variáveis. A solução para o problema, portanto, um conjunto de valores que atendam todos os requisitos (PEREIRA, 2011). Um problema formulado como satisfação de restrições possui três componentes principais: variáveis, domínios e restrições.

51 35 O domínio das variáveis pode ser classificado em discretos ou contínuos, ou seja, em um domínio discreto são conhecidos todos os possíveis valores das variáveis, enquanto no contínuo podem existir infinitos valores em um intervalo. As restrições podem ser classificadas pela natureza e pelo número de argumentos. Quanto à natureza as restrições podem ser absolutas, quando não podem ser violadas, ou preferenciais que devem ser satisfeitas quando possível. Em função do número de argumentos ou aridade, as restrições podem ser: unárias quando possuírem apenas uma variável; binária quando possuírem duas variáveis ou n-árias, sendo que as restrições com mais de uma variável são produtos cartesianos dos domínios. Para Tsang (1993) e Russell e Norvig (2010) um problema com n variáveis, e restrições d com a cardinalidade máxima de todos os conjuntos de domínio das variáveis apresenta complexidade O(d n ), ou seja o problema é de ordem exponencial para todas as soluções possíveis. À medida que se introduz novas restrições ao problema, aumenta-se o espaço de busca por uma solução, o que faz com que este problema aumente sua complexidade e o tempo para encontrar a solução. Porém, o espaço de busca pode ser diminuído em função das restrições impostas ao problema, ou seja, utiliza-se das próprias restrições para diminuir o espaço de busca. Para exemplificar um problema de satisfação de restrições será utilizado como exemplo o problema de n rainhas, no qual serão posicionadas n rainhas em um tabuleiro de xadrez com dimensões n x n de tal forma que as rainhas não se ataquem. As rainhas se atacam se estiverem na mesma linha, na mesma coluna, ou na mesma diagonal principal ou diagonal secundária. Cada rainha deve ser colocada em uma linha do tabuleiro. O problema consiste em selecionar uma coluna para cada rainha, de forma que elas não se ataquem. Uma forma de representação deste problema é associar para cada rainha dois valores, sendo um para a linha e outro para a coluna, sendo ambas dentro do domínio válido de inteiros positivos até n. As restrições são as condições para que o problema seja considerado válido, ou seja, que as rainhas não se ataquem. Para ilustrar (Figura 7) considera-se um tabuleiro 4 x 4 e os passos para encontrar a primeira solução. A cada passo ou iteração, em função das restrições, somente serão testadas as opções válidas. As demais foram marcadas para demonstrar que a cada passo diminuem o espaço de possibilidades de busca. Portanto, a cada atribuição de uma variável a restrição imposta ao problema reduz o domínio das variáveis. Este é um exemplo da técnica de propagação de

52 36 restrições, também encontrada na literatura como técnica de consistência e filtro de domínio (PEREIRA, 2011). Para ilustrar o funcionamento da técnica de propagação de restrições, será exemplificado em um algoritmo de busca que considera somente as alternativas válidas a cada passo como pode ser observado na Figura 7. Figura 7 - Exemplo das 4 rainhas com propagação das restrições. Fonte: O autor A cada novo passo do algoritmo ilustrado na Figura 8, resta apenas uma posição por linha até todas as quatro rainhas estejam posicionadas, sendo então encontrada a primeira solução válida.

53 37 Figura 8 - Exemplo da segunda tentativa do algoritmo. Fonte: O autor Para melhorar o desempenho da busca em problemas CSP (Constraint Satisfaction Problem) podem ser utilizadas duas estratégias: ordenação das variáveis ou dos valores a serem associados às variáveis, sendo que as mais comuns estão citadas na sequência: a) Variável mais restritiva: variável envolvida no maior número de restrições é preferida; b) Variável mais restringida: variável que pode assumir menos valores é preferida; c) Valor menos restritivo: valor que deixa mais liberdade para futuras escolhas. Também é possível em função da estrutura do problema, utilizar uma heurística específica. Como exemplo, a heurística dos conflitos mínimos para o problema de n Rainhas

54 38 onde a sugestão da próxima tentativa é na linha e coluna que possua menor número de conflitos (TSANG, 1993 ; RUSSELL e NORVIG, 2010). CSP (Constraint Satisfaction Problem) também pode ser modelado por meio de grafo de restrições, formando uma rede onde as variáveis de decisão são representadas pelos vértices e as restrições pelas arestas, que permite a utilização das ferramentas para manipulação de grafos. Dentre as principais formas de busca em restrições modeladas através de grafos podemos citar: consistência de nó, consistência de arco e consistência de caminho. Todos com o mesmo objetivo de minimizar o retrocesso do algoritmo por não ter encontrado a solução pelo caminho selecionado inicialmente (BRUCKER, 2002) Também pode ser encontrada na literatura alternativa para resolução de problemas de satisfação de restrições como o particionamento do problema, denominado DCSP (Distributed Constraint Satisfaction Problem), cujo principal objetivo é permitir o processamento em paralelo e distribuído das restrições e com a possibilidade do uso de agentes inteligentes (PEREIRA, 2006 ; GIACOMET, 2010). Outra característica importante é a facilidade em modelar o problema, uma vez que se podem adicionar restrições independentemente de como será a solução do problema. Também difere de outros tipos de busca, por que não interessa qual o caminho para encontrar a solução, mas se encontrou uma solução que satisfaça as restrições (RUSSELL;NORVIG, 2010). Problemas reais também foram observados no trabalho de (FRAMINAN;RUIZ, 2010) com o uso de CSP (Constraint Satisfaction Problem). Zeballon (2010) descreveu em seu trabalho a aplicação do uso de restrições para a programação de produção. Além do detalhamento dos tipos de restrições o autor argumenta sobre a facilidade de modelar problemas reais, pois durante o desenvolvimento do modelo não é necessário ter a preocupação com qual tipo de solução Regras de liberação A decisão de qual operação será processada em que recurso, bem como a sequência em que estas operações serão processadas, gerou espaço para a criação de regras de liberação, também encontrada na literatura como regras de despacho. Diversos autores estudaram e publicaram dezenas de regras com objetivos e resultados diferentes, ou seja, cada regra de

55 39 liberação tem um objetivo específico (BROWNING;YASSINE, 2010; TURATTI;MARCANTONIO, 2009). As regras de liberação podem ser classificadas em regras estáticas ou dinâmicas. Nas regras estáticas a ordem das operações não é alterada durante a programação, enquanto as regras dinâmicas acompanham as alterações mudando dinamicamente sua posição. Outra forma de classificação das regras de liberação são regras locais ou globais. As regras globais consideram informações de toda a programação e as locais apenas a fila de trabalho do recurso. As regras de liberação também podem ser classificadas em função da complexidade em três grupos: regras simples, com índices ponderados e regras de heurísticas sofisticadas. As regras simples utilizam apenas informações do trabalho a ser executado como data de entrega, tempo de folga restante, tempo de processamento restante, etc. As regras de índice ponderado utilizam pesos para diferentes regras simples, formando um índice composto que define a prioridade. Por fim, as regras heurísticas sofisticadas não utilizam somente informações do trabalho a ser executando, mas também pode utilizar informações de gargalos, rotas alternativas, etc. Turatti e Marcantonio (2009) propuseram a criação de regras que utilizam em seus índices ponderados informações econômicas e financeiras, como algumas citadas a seguir: a) Data de entrega e cliente ou mercado consumidor; b) Data de entrega e valor da ordem de produção. c) Data de entrega e margem de contribuição da ordem; d) Data de entrega e potencial de geração de caixa em curto prazo; e) Data de entrega e produtos que estejam disponíveis em estoque As principais regras simples utilizadas podem ser observadas na Tabela 3.

56 40 Tabela 3 - Regras de liberação. Fonte: (TUBINO, 2007) Sigla Especificação Definição PEPS Primeira que entra Os lotes são processados de acordo com sua chegada / primeira que sai / First ao recurso FCFS Come, First Served Menor tempo de MTP / Os lotes são processados de acordo com os menores processamento / Shortest STP tempos de processamento no recurso. Processing Time MDE / EDD Menor data de entrega / Earliest Due Date Os lotes serão processados de acordo com as menores datas de entrega IPI Índice de Prioridade Os lotes são processados de acordo com a prioridade atribuída ao cliente ou ao produto Os lotes serão processados de acordo com o menor ICR / Índice Crítico (Razão valor de:(data de entrega - data atual) /tempo de CR Critica) / Critical Ratio processamento Razão do Faturamento e Os lotes serão processados de acordo com o menor RF e Razão da Margem de valor de:(valor Faturamento ou Valor Margem de RMC Contribuição Contribuição) /tempo de processamento Os lotes serão processados de acordo com o menor IFO Índice de folga valor de: (data de entrega - tempo restante de processamento) /Número de operações restante IFA Índice de falta Os lotes serão processados de acordo com o menor valor de: quantidade de estoque / taxa de demanda As regras de heurísticas sofisticadas podem ser encontradas com diversos objetivos, como segue: Regra de minimização de WIP (Work in Process) : Tem como objetivo a redução do intervalo de tempo entre as operações, reduzindo o tempo de espera e consequentemente a quantidade de material em processo. A Figura 9 mostra o sequenciamento da ordem A e posteriormente a ordem B. Observase que existe uma espera entre as operações B-20 e B-30, aguardando a disponibilidade do recurso R3.

57 41 Figura 9 - Exemplo de programação para frente. Fonte: O autor Após a programação para frente, a ordem B encontra a data mais cedo em que pode ser concluída. A partir desta data faz a programação para trás, sendo que no pior caso vai encontrar o mesmo início para cada operação ou conseguir uma redução do tempo de espera (Figura 10). Figura 10 - Exemplo do ajuste com programação para trás. Fonte: O autor

58 42 Esta mesma regra pode ser adotada ao inverso, quando se programa para trás e após encontrar o início mais cedo, faz-se a programação para frente. Regra de carregamento paralelo: Tem como objetivo a melhor utilização dos recursos e minimização de makespan. Diferente da maioria das regras, quando se cria um índice e faz o sequenciamento de todas as operações de uma ordem de uma só vez. A regra de carregamento paralelo realiza o sequenciamento de todas as operações respeitando o índice, mas alocando as operações que podem ocupar o recurso o quanto antes, ou seja, a ocupação do recurso é preferida em relação à prioridade da ordem. Pode-se observar na Figura 11 que as ordens A, B e C foram sequenciadas ordem após ordem e o recurso R2 somente iniciou a primeira operação após as 8 horas. Figura 11 - Sequenciamento por ordem. Fonte: O autor O objetivo do carregamento paralelo é manter os recursos ocupados, portanto, permite o sequenciamento da operação B-10 mesmo possuindo uma prioridade menor que a operação A-20, como pode ser observada na Figura 12.

59 43 Figura 12 - Sequenciamento por Operação. Fonte: O autor Outros trabalhos como o proposto por Xu & Xu & Xie (2011) sugere o uso de Algoritmos Genéticos ou rede neural artificial para predefinir a melhor sequência. A regra será definida pelo resultado do Algoritmo Genético ou da rede neural artificial. Outra proposta encontrada é o uso de regras combinadas dinamicamente que conforme variam os indicadores de performance global do sistema, as regras irão variar de um critério para outro, por exemplo de setup para prazo de entrega, em função da melhora ou piora destes indicadores Algoritmo Genético O Algoritmo Genético consiste em um método de busca e otimização, baseado no princípio da seleção e evolução das espécies proposto por Charles Darwin. O algoritmo proposto por Holland na década de 70 utilizou de forma análoga os conceitos da biologia, como a sobrevivência dos mais aptos e a troca de informações de forma estruturada. Holland definiu como representação do indivíduo um conjunto de alelos representados por uma sequência de números zeros e uns, conforme pode ser observado na Figura 13 (ROSA, 2011).

60 44 Figura 13 - Representação de um indivíduo. Fonte: (ROSA, 2011) Para melhor elucidar seguem abaixo os principais termos utilizados em Algoritmos Genéticos: a) Cromossomo ou Indivíduo: formado por uma cadeia de caracteres representa alguma informação. Cada indivíduo representa um modo de solução do problema; b) Genes ou variáveis: é a unidade básica do indivíduo, representa o valor da variável; c) População: Conjunto de indivíduos ou soluções; d) Operações genéticas ou operadores genéticos: Operações que o Algoritmo Genético realiza sobre os indivíduos; e) Região Factível: É o conjunto, espaço ou região que compreende as soluções possíveis do problema. É expresso por restrições que definem as soluções factíveis; f) Função Objetivo: É a função que contém informações sobre o desempenho de cada indivíduo na população. Nesta função são expressas as características do problema que o Algoritmo Genético necessita para realizar seu objetivo. A população inicial de indivíduos é na maioria das vezes gerada de forma aleatória. No entanto, existem situações que pode ser mais vantajoso utilizar como população inicial outros métodos, como por exemplo, o resultado de uma busca heurística. Os indivíduos são avaliados por uma função chamada fitness na qual o indivíduo mais apto tem os melhores valores (função objetivo), seja de maximização ou minimização. Sobre a população são aplicados dois operadores, cruzamento (Crossover) e mutação (Mutation). Após a aplicação dos operadores é realizada novamente a função fitness, onde será selecionada apenas uma parte de toda a população restante para a nova geração. Desta forma a cada geração deve

61 45 haver uma população (soluções) mais próxima do objetivo ou das melhores soluções. O algoritmo pode parar quando atingir um número de gerações, duração de tempo em processamento ou ter atingido um determinado objetivo conforme ilustrado na Figura 14 (ARAUJO, LIBRANTZ e ALVES, 2007). Figura 14 - Esquema de funcionamento do Algoritmo Genético. Fonte (ARAUJO, LIBRANTZ e ALVES, 2007) Dependendo do problema podem existir diversas formas de se fazer o cruzamento e a mutação (VIANNA;FRANCO;VIANNA, 2010). A Figura 15 ilustra a forma de corte único, onde é gerada uma posição de corte aleatória sendo que a parte inicial dos cromossomos do primeiro indivíduo será somado às partes finais do segundo indivíduo formando um novo indivíduo filho. A operação oposta, ou seja, parte inicial do segundo indivíduo somada à segunda parte do primeiro indivíduo irá formar outro indivíduo filho. Após este processo de cruzamento e aplicação do operador de mutação, serão adicionados à população e avaliados pela função fitness. Também são encontradas diversas estratégias para determinar qual indivíduo será cruzado com qual, podendo-se optar por utilizar estratégia aleatória ou, por exemplo, o cruzamento dos melhores indivíduos (CASTRO, 2001).

62 46 Figura 15 - Esquema de cruzamento com um corte aleatório. Fonte: (ARAUJO;LIBRANTZ;ALVES, 2007) Outro operador importante é o de mutação que consiste na troca aleatória de alelos de um percentual dos indivíduos também chamado de taxa de mutação. Este mecanismo tem com objetivo diminuir a chance de parar em mínimos locais, garantindo a diversidade dos indivíduos (CASTRO, 2001). A Figura 16 apresenta um exemplo de mutação de apenas um gene, sendo que a quantidade de genes a serem trocados será em função da taxa de mutação. Figura 16 - Funcionamento da mutação de um gene em um indivíduo. Fonte: (ARAUJO, LIBRANTZ e ALVES, 2007)

63 47 3. MATERIAIS E MÉTODOS Nas próximas seções serão apresentadas as entidades do framework, os métodos de sequenciamento o relacionamento entre entidades, concluindo com as regras de programação Horizonte de programação Deve-se considerar que o período de programação de curto prazo está associado ao leadtime de fabricação e ao período de ordens de produção liberadas. Pode se usar o maior leadtime de produção somado alguns dias de folga, por exemplo, 30 dias. Este período tem que ser suficientemente grande para atender a programação de curto prazo, mas não pode exceder muito por ter impacto direto no tempo computacional para a programação das operações. O desenvolvimento do framework utilizará o horizonte de programação total como limite máximo, sendo que a partir deste, não se considera mais como factível a solução Entidades A capacidade produtiva da empresa pode ser representada pela disponibilidade de recursos produtivos (máquinas, operadores, ferramentas, materiais, energia, etc.). Para o framework proposto os recursos foram divididos em recursos discretos e recursos contínuos, utilizando cada qual para representar melhor algum tipo de recurso (WEGLAZ et al., 2010). O recurso discreto possui sua disponibilidade com a variação da eficiência em função do tempo, ou seja, conforme muda o período, poderá ou não estar disponível com eficiência diferente. Por exemplo: suponha uma empresa que possui seus recursos disponíveis a uma eficiência produtiva de 100% durante o horário das 8h00 às 12h00, indisponível das 12h00 às 13h00, em função do horário de almoço, ou seja eficiência de 0%, retomando das 13h00 às 17h00 a eficiência de 100%. Mas somente de segunda a sexta feira, exceto feriados. Pode-se concluir que os recursos discretos têm sua disponibilidade somente das 8h00 às 12h00 e das 13h00 às 17h00, ou seja, 8 horas por dia, conforme pode ser observado na Figura 17. Outra informação é que poderia executar múltiplas operações simultaneamente. Para restringir apenas uma operação durante determinado período, deverá ser adicionada nova restrição ROA (Restrição de Operação Alocada), que será tratada no decorrer deste trabalho.

64 48 Figura 17 - Exemplo de variação de eficiência em recursos discretos. Fonte: O autor Nos recursos contínuos a disponibilidade varia em função dos limites inferior e superior e em função do tempo. Na Figura 18 pode ser observado que foram considerados como exemplo, três funcionários disponíveis das 08h00 às 12h00 e das 13h00 às 17h00. Quando uma operação ou um recurso adicionar (soma), por exemplo, dois funcionários, caso uma segunda operação necessite também de dois funcionários deverá esperar o término da operação e a respectiva devolução (subtração) dos funcionários. O modo como serão utilizados os recursos discretos pode ser observado na Tabela 4. Figura 18 - Exemplo da variação de máximos e mínimos em recursos contínuos. Fonte: O autor

65 49 Tabela 4 - Formas de utilização dos recursos contínuos. Fonte: O autor Tipo de uso Adicionar ao início setup Reduzir ao início de setup Adicionar somente durante setup Reduzir somente durante setup Incrementar durante setup Decrementar durante setup Adicionar ao início da operação Reduzir ao início da operação Adicionar ao término da operação Reduzir ao término da operação Adicionar somente durante operação Reduzir somente durante operação Incrementar durante operação Decrementar durante operação Descrição Incrementa o valor imediatamente ao início do setup Decrementa o valor imediatamente ao início do setup Incrementa o valor ao início do setup e decrementa ao término do setup Decrementa o valor no início do setup e decrementa ao término do setup Faz o ajuste incremental do início do setup, concluindo ao final do setup com a adição do valor. Faz o ajuste no início do setup, concluindo ao final com a redução do valor. Incrementa o valor imediatamente ao início da operação e fim do setup Decrementa o valor imediatamente ao início da operação e fim do setup Incrementa o valor ao término da operação Decrementa o valor ao término da operação Incrementa o valor ao início da operação e decrementa ao término da operação Decrementa o valor ao início da operação e decrementa ao término da operação Faz o ajuste incremental do início da operação, concluindo ao final da operação com a adição do valor. Faz o ajuste no início da operação, concluindo ao final da operação com a redução do valor.

66 Restrições As restrições são entidades que limitam, condicionam ou impedem a execução de uma operação. Devemos estudar todas as restrições para que durante o processo de modelagem possamos utilizar as que melhor representarem as características do processo, ressaltando que as restrições somente podem ser associadas a operações e recursos. Todas as restrições do framework serão absolutas, ou seja, todas devem ser satisfeitas para que seja considerada válida a solução. Segue abaixo a relação de restrições com suas respectivas características: a) RRD (Recurso Discreto): Esta restrição valida um conjunto de recursos discretos utilizando um método de escolha conforme serão citados posteriormente, retornando apenas um recurso válido para a restrição. Caso sejam necessários dois recursos simultâneos para a mesma operação, deve-se adicionar outra restrição deste tipo. b) RRC (Recurso Contínuo):Na restrição de recurso contínuo, deve-se além do método de escolha do recurso, que é o mesmo utilizado em recursos discretos, informar quais recursos irão participar do processo de escolha, pois somente um recurso válido contínuo será definido por restrição. Caso deseje mais de um recurso válido contínuo definido, deverá adicionar uma nova restrição com os respectivos recursos contínuos. Para adicionar um recurso contínuo será necessário informar uma quantidade e o método de uso conforme apresentado na Tabela 4. c) RPC (Propriedade de Conferência): Esta restrição somente aceita operações ao mesmo tempo em um recurso, caso possuam uma propriedade idêntica. Utilizada quando se quer garantir em um recurso de uso compartilhado somente operações que possuam simultaneamente o mesmo tipo de material, cor, ciclo, etc. d) RIMC (Início mais cedo): Esta restrição define uma data mínima para o início da operação. e) RFMT (Fim mais tarde): Esta restrição define uma data máxima para o término da operação. f) RDP (Dependência entre operações): Para que esta operação seja alocada a operação antecessora deverá estar devidamente alocada, respeitando todos os parâmetros da mesma. g) ROA (Operação Alocada): Esta restrição garante que apenas uma operação por vez possa ser alocada em um recurso, ou seja, garante uso exclusivo do recurso durante o processamento da operação, também é possível informar recursos adjacentes que são

67 51 influenciados pelo uso do recurso especificado e não podem estar em operação simultaneamente Métodos de escolha do recurso As restrições que utilizam recursos RRD e RRC, possui um método de escolha para quando possuírem mais de um recurso capaz de executar a operação, a escolha de qual será o recurso eleito depende do método escolhido, os quais seguem. a) Disponível primeiro: Dentre todos os recursos definidos na restrição o que estiver disponível para executar a operação o mais breve possível, será o recurso eleito; b) Terminar primeiro: Dentre todos os recursos definidos na restrição o que terminar a operação o mais breve possível, será o recurso eleito; c) Menor Custo: Dentre todos os recursos definidos na restrição, independente do início ou término da operação, o que consumir menos recursos financeiros será o recurso eleito; d) Menor Tempo de Processamento: Dentre todos os recursos definidos na restrição, o recurso em que a duração total da operação for menor, será o recurso eleito; e) Menor Tempo de Preparação(setup): Dentre todos os recursos definidos na restrição, o recurso em que o tempo de preparação(setup) for menor, será o recurso eleito Resolução das restrições O método para atender as restrições foi baseado em CSP (Constraint Satisfaction Problem) onde conforme já citado são necessários três componentes principais para modelagem de um problema que estão definidas abaixo: a) Variável: Data e hora em que todas as restrições são atendidas; b) Domínio: Início ao fim da programação (horizonte de programação); c) Restrições: Adicionadas a operações e recursos conforme citadas anteriormente. A Figura 19 ilustra o espaço de busca que tem seu início a partir da data e hora atuais, até uma determinada data e hora definida como horizonte de programação. A programação para frente inicia a busca a partir da data e hora atuais até o fim máximo (horizonte de programação). A programação para trás tem seu início a partir de uma data de entrega retroagindo até a data e hora atuais.

68 52 As restrições foram ordenadas pela complexidade, pois cada restrição tem um funcionamento diferente e pode diminuir o espaço de busca mais rapidamente, com economia de tempo computacional. Por exemplo, uma restrição de RIMC (Restrição de início mais cedo) definida, por exemplo, pela data da disponibilidade de insumos é mais simples de ser analisada do que os turnos de trabalho de um determinado recurso. No primeiro grupo estão as restrições de baixa complexidade, RIMC, RFMT, RDD, ROA, RPC. O segundo grupo com recursos discretos (RRD) e o terceiro com recurso contínuo (RRC). São validadas as restrições do primeiro grupo e somente se todas estiverem válidas é que será válida a restrição do segundo grupo e assim até o terceiro grupo de restrições. Figura 19- Horizonte de programação. Fonte: o autor Os métodos de sequenciamento podem ser aplicados em ordens e operações. Dependendo das regras de programação eles utilizam um ou outro, ou até mesmo ambos de forma combinada. No método de sequenciamento para frente verifica-se se todas as restrições podem ser atendidas o mais breve possível. Caso exista alguma que não atenda, utiliza-se o início mais tarde da restrição que violou e que esteja disponível como sugestão para nova tentativa, então verifica-se novamente com todas as restrições, até que todas sejam atendidas ao mesmo tempo ou ultrapasse o horizonte de programação, quando será considerada como uma programação fora da área de busca.

69 53 No método de sequenciamento para trás uma operação valida todas restrições o mais tarde possível (data de entrega). Caso alguma restrição seja violada, utiliza-se o término mais cedo da restrição que violou, então verifica se novamente todas as restrições até que todas sejam atendidas no mesmo término, ou a data e hora atual sejam ultrapassadas, sendo considerada como uma programação fora da área de busca. A Figura 20 apresenta um esquema de uma operação com suas respectivas restrições. A restrição de dependência por exemplo, irá verificar o fim da operação antecessora, a restrição de recurso discreto irá verificar dentro da lista de recursos discretos da restrição. Após o processo de alocação é possível extrair uma série de informações como por exemplo, qual recurso foi escolhido, a duração do setup e da operação com seus respectivos com início e término, além do tempo de espera para conseguir um recurso. Figura 20 - Esquema de representação gráfica de uma operação. Fonte: O autor A alocação de um recurso pode ser representada de forma diferente para recursos discretos e contínuos. Para o recurso discreto a melhor representação é o gráfico de Gantt que pode ser observado na Figura 21 no eixo vertical estão os recursos e no eixo horizontal o tempo.

70 54 As operações são representadas por uma barra que ocupa no eixo vertical um recurso e no horizontal sua duração. Figura 21 - Representação gráfica da alocação de um recurso discreto. Fonte: O autor Para o recurso contínuo a melhor representação gráfica são três gráficos combinados, sendo que dois de linha representam os limites inferiores e superiores em função do tempo e um gráfico de área que representa a área ocupada dentro dos limites inferiores e superiores como pode ser observado na Figura 22. Figura 22 - Representação gráfica do uso de um recurso contínuo. Fonte: O autor

71 55 Quando o método é chamado em uma ordem seja para frente ou para trás, o mesmo aplica o método em todas as operações, relacionadas a respectiva ordem Exemplo de funcionamento Para elucidar o funcionamento será utilizado como exemplo a inserção de uma nova operação utilizando do método de programação para frente sem parâmetros iniciais. A operação a ser alocada possui duas restrições sendo RIMC (Restrição de Início Mais Cedo), que foi informada pelo sistema coordenador de ordens, contendo a data de disponibilidade de matéria-prima, que para este exemplo será as 8 horas. E uma segunda restrição RDD (Restrição de recurso discreto), com necessidade de 1 hora de setup e 2 horas de processamento exclusivamente no recurso R1. O recuso R1 possui uma restrição ROA (Restrição de Operação Alocada), fazendo com que não aceite operações simultâneas no mesmo recurso. A Figura 23 apresenta o estágio atual da programação, contendo apenas uma operação já alocada no sistema. Figura 23- Exemplo de Alocação -Estágio atual da programação. Fonte: O autor A Figura 24 apresenta os passos de validação das restrições de operações e recursos.

72 56 Figura 24 - Fluxo de validação das restrições. Fonte: O autor A Figura 25 apresenta o resultado do sequenciamento da operação B-10, após validar todas as restrições da operação e dos recursos relacionados, concluindo com a programação da operação iniciando as 10:00 horas.

73 57 Figura 25 - Exemplo da alocação de uma operação. Fonte: O autor O exemplo citado demonstra que a variável contendo a data e hora válida avança em função das restrições, como existe um limitador de tempo que é o horizonte de programação todo avanço da data e hora é na verdade uma diminuição do espaço de busca. Outra forma seria a passagem de parâmetros iniciais com a interação humana, onde o operador do software especifica a partir de que momento a operação poderia ser programada, utilizando-se, por exemplo, do recurso de arrastar e soltar a operação no gráfico, sendo que a partir daquele ponto seria chamado o método de programação para frente, com parâmetro a data e hora da posição do mouse no gráfico de Gantt. As restrições também foram agrupadas em restrições exclusivas para recursos (ROA), exclusiva para operações (RDO) e disponíveis para recursos e operações (RIMC, RFMT, RPC, RRD e RRC) Diagrama de classes As entidades e métodos de sequenciamento citados neste trabalho são apresentados em um diagrama de classes em UML(Unified Modeling Language) que representa a agregação de restrições em recursos ou operações. As restrições são especializadas em diversos tipos, sendo que cada tipo de restrição tem seu próprio objetivo, e as restrições RRC e RRD são compostas

74 58 por um ou mais recursos dependendo da necessidade. Os recursos são especializados em discretos e contínuos e as ordens compostas por um conjunto de operações. Neste contexto, podem-se criar novos tipos de restrição caso sejam necessários e sua agregação também ocorre de forma dinâmica, o que facilita a modelagem de problemas a partir de componentes razoavelmente simples como pode ser observado na Figura 26. Figura 26 - Diagrama de Classes do Framework proposto. Fonte: O autor Na seção seguinte veremos como manipular estas entidades, criando regras de programação que atenda aos objetivos da empresa Sequenciamento das ordens e operações Para o framework foram utilizadas regras de liberação e a técnica Algoritmos Genéticos como forma de demonstrar sua aplicação.

75 Regras de liberação As regras de liberação determinam qual o critério de escolha das ordens ou operações vão disputar os recursos da fábrica. As regras de liberação seguem normalmente as políticas de atendimento das ordens definidas pela empresa, ressaltando que podem ser utilizadas diversas regras de sequenciamento sobre um mesmo ambiente a fim de se obter a melhor programação para a empresa naquele momento. Como citado anteriormente existe na literatura uma grande quantidade de regras de liberação e que podem ser adotadas pelo framework. Para exemplificar serão apresentadas a seguir algumas regras de liberação e sua utilização com as entidades do framework. De modo geral as regras baseadas em ordens de produção seguem o mesmo funcionamento, ordenando as ordens por um determinado critério e faz sua alocação de todas as operações desta ordem, conforme o método de sequenciamento escolhido (para frente ou para trás). As regras baseadas em operações também ordenam as ordens por um critério, mas a alocação das operações nos recursos pode acontecer mesmo que a ordem anterior não tenha sido totalmente programada. Outra possibilidade é a simulação de algumas ordens de produção ou operações para que se possa criar os indicadores para a programação final, conhecidas como regras dinâmicas. No framework pode ser utilizado qualquer um dos tipos de regras de sequenciamento citados, bastando apenas que a regra chame o método da respectiva classe de ordem ou operação, conforme as regras exemplo abaixo: As regras estáticas que utilizam as informações da ordem seguem de forma geral o mesmo mecanismo da regra MDT (Menor data de Entrega) conforme o exemplo da Figura 27: Figura 27 - Fluxo da regra de liberação MDT. Fonte: O autor

76 60 Também podem ser desenvolvidas regras dinâmicas como as regras de carregamento paralelo apresentado na Figura 28. Figura 28 - Fluxo da regra de carregamento paralelo. Fonte: O autor Algoritmo Genético utilizado A representação do indivíduo bem como os operadores de cruzamento e mutação poder ser adaptados em função do problema abordado para que possa alcançar resultados mais rapidamente (VIANNA;FRANCO;VIANNA, 2010). Nos últimos anos foram propostos diversos métodos, nos quais a representação do indivíduo através de uma sequência de zeros e uns que pode dificultar a implementação em alguns casos específicos. Para este trabalho, foi adotada como representação do indivíduo uma sequência de inteiros. O operador de cruzamento, desenvolvido neste trabalho foi baseado nos métodos OX (Order Crossover) e CX(Cylcle Crossover) citados por Abdoun e Abouchabaka (2011) e por Branco, Coelho e Mayerle (2007). As técnicas de mutação também foram adaptadas e baseadas no RSM (Reverse Sequence Mutation) também citado por Abdoun e Abouchabaka (2011).

77 61 Para exemplificar as técnicas de cruzamento e mutação adotadas neste trabalho, podese observar na Figura 29 uma sequência aleatória gerada contendo valores de 1 a 10, que representam as operações existentes no sistema, sendo que cada operação recebeu um número único. Uma sequência de operações representa uma solução possível que será alocada através do método de sequenciamento para frente operação por operação. Para reduzir a chance de criar-se uma sequência inválida, toda sequência gerada aleatoriamente ou através dos operadores de cruzamento e mutação são previamente validadas pela restrição RDO (dependência entre operações). A população pode ser gerada por sequências aleatórias ou a partir do resultado de regras de liberação. Caso a quantidade de indivíduos gerada pelas regras de liberação não seja suficiente para toda população, a mesma será completada por sequências geradas aleatoriamente. Figura 29 - Representação de indivíduo. Fonte: O autor O operador de cruzamento pode ser observado na Figura 30. Foram selecionados dois indivíduos (A e B). São sorteados aleatoriamente dois pontos de corte. Os filhos gerados (indivíduos C e D) pelo cruzamento recebem os primeiros genes do primeiro indivíduo e são completados com os genes do segundo indivíduo, garantindo que não existam números repetidos ou faltantes e a dependência entre operações definida na restrição RDO seja respeitada.

78 62 Figura 30 - Exemplo de cruzamento. Fonte: O autor O operador de mutação, como pode ser observado na Figura 31, seleciona um ponto aleatório de um indivíduo. A probabilidade de mutação será convertida em quantidade de operações trocadas. A mutação será a troca de posição da operação entre duas listas sendo uma contendo as operações que irão trocar de posição e a segunda contendo o restante de operações que será mantido, alternando se um gene por lista até o término da lista de genes a ser trocado de posição. Cabe ressaltar que durante o processo de mutação, a sequência válida pela restrição RDD deve ser garantida. Figura 31 - Exemplo de mutação. Fonte: O autor Para o processo de seleção dos indivíduos, será feito o sequenciamento utilizando o método de sequenciamento para frente de todas as operações do indivíduo. São coletadas informações da programação de cada indivíduo como makespan, leadtime acumulado, atraso total, tempo de setup total, tempo em operação total, tempo em espera total.

79 63 Estes indicadores têm valores em escalas diferentes e devem ser normalizados Após a normalização o índice de cada indicador será multiplicado pelo peso informado pelo usuário. No exemplo no Quadro 4 utilizou-se 90% para makespan e 10% para atraso total. Quadro 4 - Etapas para normalização e obtenção do índice ponderado. Fonte: O autor A seleção dos indivíduos para a próxima geração será por elitismo, ou seja, somente os indivíduos com os menores índices ponderados serão considerados. A seleção será de 50% de toda a população, mantendo assim o mesmo número de indivíduos da população inicial Exemplo de modelagem de um sistema produtivo Para exemplificar a modelagem de problemas utilizando-se do framework será utilizada como exemplo uma pequena ferramentaria fictícia, onde serão cadastrados os recursos, turnos de trabalho, roteiros e ordens de produção para posteriormente ser demonstrado através da

80 64 utilização do software protótipo desenvolvido a aplicação de diversas regras de liberação além da utilização do Algoritmo Genético. A ferramentaria do exemplo é composta por cinco máquinas com seus respectivos turnos de trabalho e dois recursos contínuos sendo um para o número de funcionários e outro o controle de um dispositivo de fixação, como pode ser observado no Quadro 5. Quadro 5 - Lista de recursos da ferramentaria exemplo. Fonte: O autor Recurso Tipo Restrições Torno 1 Discreto RRC(Funcionário, Adicionar somente durante toda operação 1) Torno 2 Discreto RRC(Funcionário, Adicionar somente durante toda operação 1) Fresa 1 Discreto RRC(Funcionário, Adicionar somente durante toda operação 1) Fresa 2 Discreto RRC(Funcionário, Adicionar somente durante toda operação 1) Centro de Usinagem Discreto RRC(Funcionário, Adicionar somente durante o setup 1) Funcionários Contínuo Dispositivo Contínuo Para os recursos de torno e fresa foram adicionadas restrições RCC, que adiciona durante toda a operação o valor de 1um funcionário (recurso contínuo), ou seja, para que o recurso esteja em operação será necessário 1 funcionário disponível. Para o recurso Centro de Usinagem, também foi adicionada a restrição RCC de 1 funcionário, mas somente durante o tempo de preparação setup. Foram definidos também como turnos de trabalho para todos os recursos discretos como disponível com 100% de eficiência do horário das 8h00 às 17h00 e com parada para refeições das 12h00 às 13h00. Para o recurso funcionários foram criados os turnos de 24 horas por dia, limitados a 3 funcionários, uma vez que os turnos estão sendo controlados pelos recursos discretos e será utilizada somente como restrição do número de funcionários disponíveis. O Quadro 6 apresenta os turnos de disponibilidade dos recursos.

81 65 Quadro 6 - Disponibilidade dos recursos. Fonte: O autor Período Recurso Eficiência Motivo Início Término Segunda a Sexta Tornos e Fresas 100% Turno 08:00 17:00 Segunda a Sexta Tornos e Fresas 0% Refeição 12:00 13:00 Segunda a Sexta Funcionários Mínimo = 0 Máximo = 3 Disponibilidade 00:00 23:59 Segunda a Sexta Dispositivo Mínimo = 0 Máximo = 1 Disponibilidade 00:00 23:59 Foram criados para o exemplo dois roteiros de produtos com cinco operações cada, onde foram adicionadas as restrições RRD, para definir em quais recursos a operação pode ser produzida além da restrição RDP para definir a dependência entre as operações, ou de outra forma a sequência entre as operações e finalmente a restrição RRC nas operações de fresamento que necessitarem de um dispositivo de fixação que pode ser observado nos Quadros 6 e 7, respectivamente. Quadro 7 - Roteiro de fabricação da peça A. Fonte: O autor Número Descrição Restrições 10 Torno RRD(Torno1 ou Torno2, 00:30 setup e 08:00 operação) 20 Fresa RRD(Fresa1 ou Fresa2, 00:30 setup e 04:00 operação) RDP(Operação 10) RRC(Dispositivo, Adicionar durante toda operação, 1 dispositivo) 30 Torno RRD(Torno1 ou Torno2, 00:30 setup e 06:00 operação) RDP(Operação 20) 40 Centro de RRD(Centro de Usinagem, 00:30 setup e 07:00 operação) Usinagem RDP(Operação 30) 50 Fresa RRD(Fresa1 ou Fresa2, 00:30 setup e 14:00 operação) RDP(Operação 40) RRC(Dispositivo, Adicionar durante toda operação, 1 dispositivo)

82 66 Quadro 8 - Roteiro de fabricação da peça B. Fonte: O autor Número Descrição Restrições 10 Fresa RRD(Fresa1 ou Fresa2, 00:30 setup e 10:00 operação) RRC(Dispositivo, Adicionar durante toda operação, 1 dispositivo) 20 Torno RRD(Torno1 ou Torno2, 00:30 setup e 05:00 operação) RDP(Operação 10) 30 Fresa RRD(Fresa1 ou Fresa2, 00:30 setup e 20:00 operação) RDP(Operação 20) RRC(Dispositivo, Adicionar durante toda operação, 1 dispositivo) 40 Centro de RRD(Centro de Usinagem, 00:30 setup e 12:00 operação) Usinagem RDP(Operação 30) 50 Torno RRD(Fresa1 ou Fresa2, 00:30 setup e 5:00 operação) RDP(Operação 40) O Quadro 9 apresenta as ordens de produção exemplo, com suas respectivas datas de entrega e prioridade. Quadro 9 - Ordens de produção do exemplo. Fonte: O autor Número Ordem Prioridade Produto Quantidade Data Entrega 1 1 Peça A 1 05/12/ Peça A 1 13/12/ Peça B 1 10/12/ Peça B 1 20/12/2012 Esta modelagem exemplo apresenta os dados que serão utilizados com o software protótipo nas próximas seções.

83 67 4. RESULTADOS E DISCUSSÃO Nesta seção será apresentado o software protótipo desenvolvido nos moldes do framework, além do estudo de caso da implantação do mesmo em uma empresa fabricante de moldes de injeção Software protótipo O software foi desenvolvido em linguagem Delphi 2010 e é constituído por diversos módulos que serão apresentados de forma resumida a seguir: a) Cadastro de Recursos: Permite o cadastro de todos os recursos discretos e contínuos do sistema além das respectivas restrições de cada recurso como no exemplo da Figura 32. Figura 32 - Cadastro de recursos. Fonte: O autor b) Cadastro de Grupo de Recursos: Este módulo permite o agrupamento de recurso que realizam tarefas similares ou que atendam as mesmas regras de turno (Figura 33).

84 68 Figura 33 - Cadastro de grupo de recursos. Fonte: O autor c) Cadastro de Turnos: Permite a definição dos turnos de trabalho semanal e para dias específicos, que pode ser observado na Figura 34. Figura 34 - Turnos para dias da semana e dias específicos. Fonte: O autor A Figura 35 apresenta a tela com a sequência das regras que determinam o funcionamento correto dos turnos.

85 69 Figura 35 - Cadastro de turnos. Fonte: O autor d) Cadastro de Produtos/Roteiros: Permite a definição da sequência de operações, com as respectivas dependências e restrições associadas a cada operação (Figura 36). Figura 36 - Cadastro de roteiros. Fonte: O autor Em cada operação todas as respectivas restrições deverão ser configuradas para que tenha seu funcionamento correto.

86 70 Figura 37 - Detalhe de configuração de uma operação. Fonte: O autor e) Cadastro de Ordens: Permite o cadastramento das ordens de produção com as respectivas datas de entrega, quantidade a ser produzida e prioridades (Figura 38). Figura 38 - Cadastro de ordens de produção. Fonte: O autor f) Estados de calendário: Define padrões de eficiência para os recursos discretos, além da representação em cores para preenchimento no gráfico de Gantt (Figura 39).

87 71 Figura 39 - Cadastro de estados de calendário. Fonte: O autor g) Tela de Programação: Ambiente onde será realizada a programação e a avaliação das informações da programação, com gráficos para orientar o usuário sobre o resultado de cada simulação. Por ser o principal ambiente de trabalho será um pouco mais detalhada abaixo. A tela de programação é composta por três seções principais, iniciando pela relação de ordens de produção, a seção de gráficos e informações sobre a programação e a terceira com as ações de programação e navegação. A seção com as ordens de produção possui informações se a mesma já foi completamente alocada e com informações de data e hora de início e término programados. O início e términos programados são encontrados a partir do início da primeira operação e o fim programado é encontrado com o término da última operação. Os recursos foram divididos em dois gráficos distintos, sendo um para recursos discretos e outro para recursos contínuos. O gráfico de Gantt com suas características já citadas anteriormente representa os recursos discretos com sua variação de turnos de trabalho sendo desenhadas a partir das cores definidas no cadastro de estados de calendário e com as cores das ordens definidas no respectivo cadastro. Também pode ser observada na Figura 40 que no início da barra que representa a operação, existe uma barra de espessura menor que representa o tempo em setup, ilustrado pela letra A.

88 72 Figura 40 - Tela de programação do software protótipo. Fonte: o autor B B A A Para os recursos contínuos a melhor representação é através de três gráficos, sendo dois de linha e outro de área. O gráfico de linha azul representa o limite inferior e outro gráfico de linha vermelha o limite superior. O gráfico de área representa os valores utilizados do recurso e sua variação em função do tempo como pode ser observado na Figura 41. Figura 41 - Gráfico de representação do recurso contínuo. Fonte: o autor

89 73 A Figura 42 apresenta o gráfico de utilização dos recursos discretos, onde barra azul claro representa o tempo em percentual alocado em cada recurso discreto, destacado no gráfico pela letra A. A parte em branco representa o tempo disponível e ainda não alocado, representado no gráfico pela letra B e a parte hachurada representa o tempo de eficiência igual a zero, ou seja, que são considerados como não disponíveis, destacado no gráfico pela letra C. Figura 42 - Utilização dos recursos discretos. Fonte: o autor A B C A Figura 43 apresenta o gráfico de espera que representa o tempo acumulado de fila no recurso. Também é possível identificar quais operações geraram o tempo de espera.

90 74 Figura 43 - Gráfico de tempo de espera acumulado. Fonte: o autor A Figura 44 apresenta o gráfico de processos em espera que demonstra a quantidade de operações em espera e a duração destas operações o que pode sugerir a quantidade faltante de recurso discreto naquele momento e diferente do gráfico de espera não apresenta quanto tempo se está em espera mas a quantidade em horas das operações em espera. Figura 44 - Tempo acumulado de operações em espera Fonte: o autor O gráfico de normalização mostrado na Figura 45 apresenta as ordens de produção e sua diferença entre a data de conclusão foi programada e a data de entrega. Este gráfico esta em

91 75 escala de dias de antecipação ou quantidade de dias de atraso. Pode sugerir, por exemplo, o aumento da prioridade de ordens com provável atraso e postergação de ordens com maior folga entre a conclusão prevista e a sua data de entrega. Figura 45 - Gráfico de normalização por data de entrega. Fonte: o autor Atraso Antecipação A Figura 46 apresenta a tela que possui informações sobre a programação tais como a quantidade total de ordens no sistema, dentre todas as ordens qual a quantidades que foram alocadas ou seja programadas com sucesso dentro do prazo de entrega, a quantidade de ordens que não foram alocadas ou parcialmente alocadas concluindo com a quantidade de ordens que foram alocadas mas que ultrapassam a data de entrega. Além das informações do número de ordens também são apresentados nesta tela informações em percentuais das respectivas quantidades de ordens e suas respectivas classificações.

92 76 Figura 46 - Informações sobre a programação. Fonte: o autor A quantidade de operações segue as mesmas classificações das ordens apenas não possuindo a quantidade e nem o percentual de operações atrasadas. Outro grupo de informações destaca indicadores da programação e possuem em sua maioria o tempo total acumulado de todas as operações o menor valor encontrado a média e o maior valor encontrado. A informação de makespan é encontrada a partir do início da primeira operação até o término da última, ou seja, o tempo total necessário para todas as operações que foram sequenciadas sejam concluídas em outras palavras o tempo necessário para conclusão de todo trabalho. Leadtime total representa a soma dos tempos calculados pela diferença entre o término da última operação de uma ordem com início da primeira, ou seja, o tempo total somado dos tempos que demorou cada ordem. Os tempos mínimos e máximos representam da ordem que teve a menor diferença de tempo entre o fim e seu início bem como o tempo máximo representa a maior diferença entre o fim e o início. O Atraso total representa a quantidade de horas somadas de cada ordem que está com sua data de conclusão programada após a data de entrega. Os tempos mínimo e máximo

93 77 representam a ordem com menor atraso e o tempo máximo o maior atraso, bem como a média representa a média de atraso da conclusão das ordens. Setup total representa a quantidade total de horas em preparação de todas as operações, bem como o menor setup o maior e o tempo médio de setup. Operação total é o tempo após a realização do setup a conclusão da operação, mesmo havendo variações de eficiência, como paradas para manutenção ou refeições. A Espera total representa o tempo que uma operação disponível para ser produzida demorou em conseguir os recursos necessários para sua operação e também estão somados a este tempo os tempos de espera entre operações. Figura 47 - Tela do software com diversos cenários gerados. Fonte: o autor O software também permite salvar cada programação para posteriormente comparar os indicadores avaliando qual o melhor para aquele momento da empresa. Pode ser observado na

94 78 Figura 47 que existe uma lista de simulações salvas e conforme a navegação do usuário pode ser observada os indicadores de cada uma. Caso seja mais conveniente a programação pode ser exportada para um editor de planilhas eletrônicas para que seja analisada por exemplo em forma de gráficos Sequenciamento das operações Na Figura 48 pode-se observar a tela responsável pelo sequenciamento das operações. Como exemplo já se tem uma ordem alocada com sua respectiva sequência de operações alocadas em função do tempo no gráfico de Gantt. O sequenciamento de uma ordem pode ser realizado manualmente com o uso do mouse. Figura 48 - Gráfico de Gantt com todas as ordens programadas. Fonte: o autor Além da possibilidade do sequenciamento manual com o uso do mouse o software possibilita a utilização de duas técnicas distintas para o sequenciamento das ordens de produção, sendo a primeira baseada em regras de liberação e a segunda com a utilização de algoritmos genéticos, ambas serão detalhadas nas próximas seções.

95 Utilizando regras de liberação para o sequenciamento de ordens ou operações Como já citado no capítulo 3, as regras de liberação são bastante difundidas e utilizadas para o sequenciamento de operações. Esta seção apresentará algumas regras que foram utilizadas com software protótipo e os dados do exemplo de modelagem da seção 4.8. Foi utilizado a regra de sequenciamento por data de entrega com três regras de liberação discutidas na seção 3.2, todas com o método de sequenciamento para frente. O objetivo da Tabela 5 não é comparar as regras, mas sim os resultados obtidos com o pequeno experimento reforçando as diferenças entre os objetivos de cada regra de liberação. Pode se observar na Tabela 5 que, como citado na literatura, a regra de carregamento paralelo obteve o melhor resultado com os dados da modelagem exemplo em makespan o pior indicador em termos de leadtime total e um desempenho intermediário no indicador de espera total. Tabela 5 - Resultados comparativos entre regras de liberação. Fonte: o autor Regra de liberação Makespan Leadtime total Espera Total Ordem 627:00:00 893:30:00 660:00:00 Minimização de WIP 627:00:00 799:00:00 134:00:00 Carregamento Paralelo 505:30:00 968:00:00 462:00:00 Em contrapartida a regra de liberação de minimização de WIP, obteve os melhores resultados em leadtime total e espera total. O desenvolvimento de regras de liberação no software protótipo será apresentado na seção

96 Utilização dos Algoritmos Genéticos no software protótipo Outra forma de sequenciamento desenvolvida no software protótipo foi a adoção de Algoritmos Genéticos discutido em detalhes na seção A Figura 49 apresenta a tela de parâmetros para o Algoritmo Genético desenvolvido no software protótipo. Além dos parâmetros tradicionais do Algoritmo Genético como tamanho da população inicial, número de gerações e taxa de mutação foram adicionados dois parâmetros como o tempo máximo de execução. O segundo parâmetro adicionado é o percentual de reaproveitamento de soluções, onde o software ao invés de sempre gerar soluções aleatórias pode fazer uso de soluções salvas anteriormente, como soluções geradas anteriormente por um Algoritmo Genético ou por regras de liberação. Este parâmetro pode ajudar o Algoritmo Genético a partir de soluções boas continuar sua busca, sendo que o restante da população será completado por soluções geradas aleatoriamente. Figura 49 - Quadro de parâmetros do Algoritmo Genético do software protótipo. Fonte: o autor

97 81 Na Tabela 6 são apresentados os resultados da utilização do Algoritmo Genético com os dados da modelagem (exemplo da seção 4.8), utilizando como índice de ponderação 100% para makespan. Os parâmetros utilizados foram: população de oito indivíduos e taxa de mutação de 4%. Estes parâmetros foram colocados experimentalmente e como já se obteve bons resultados em relação a regra de carregamento paralelo e por somente se tratar de um exemplo, não se julgou necessário um estudo mais aprofundado se estes seriam os melhores parâmetros para o problema abordado. Como pode ser observado na Tabela 6, o Algoritmo Genético conseguiu resultados melhores de makespan dos que as regras de liberação utilizadas na seção anterior, cujo o melhor resultado alcançado foi de 505:30:00 contra 435:00:00 do Algoritmo Genético, resultando em uma redução de 13,95% para conclusão de todos os trabalhos, ou seja os trabalhos seriam concluídos com quase três dias de antecipação. Em contrapartida tiveram uma piora nos indicadores de leadtime total e espera total, comparados com a regra de minimização de WIP. Tabela 6 - Soluções geradas pelo Algoritmo Genético. Fonte: o autor Soluções Finais do Algoritmo Genético Makespan Lead Time Espera total Indivíduo 1 435:00: :00:00 596:30:00 Indivíduo 2 435:00: :00:00 596:30:00 Indivíduo 3 435:00: :30:00 596:00:00 Indivíduo 4 435:00: :00:00 542:30:00 Indivíduo 5 435:00: :30:00 596:00:00 Indivíduo 6 435:00: :00:00 611:00:00 Indivíduo 7 435:00: :00:00 611:00:00 Indivíduo 8 435:00: :30:00 596:00:00 Os resultados de makespan foram iguais para todos os oito indivíduos do experimento, o que possibilita uma análise secundária dos outros indicadores da programação. A Figura 50 apresenta um gráfico gerado para demonstrar que os indivíduos 6 e 7 possuem como já citado, além do makespan igual em todas as soluções, um leadtime total menor que o restante da população.

98 82 Figura 50 - Gráfico de variação de Leadtime total nas soluções geradas pelo AG. Fonte: o autor Pode-se analisar também variação de tempo de espera total como apresentado na Figura 51, onde o indivíduo 4 possui o melhor resultado. Figura 51 - Gráfico de variação de espera total nas soluções geradas pelo AG. Fonte: o autor

99 83 Estes gráficos podem ser úteis como um critério secundário para decidir qual solução efetivamente será adotada pela empresa, ressaltando que caso a intenção desde o princípio seja de melhorar outro indicador, bastaria parametrizar o Algoritmo Genético com pesos nos respectivos parâmetros como citado anteriormente Desenvolvimento de regras especiais de sequenciamento Desenvolvimento de regras especiais é útil principalmente em casos particulares onde as regras tradicionais não atendem aos detalhes do sistema produtivo. O desenvolvimento destas regras especiais no software protótipo se dá pela manipulação por objetos que representam os objetos do diagrama de classes e podem ser manipulados por duas linguagens de programação sendo uma baseada em Basic e outra em Pascal. Para a manipulação das classes do framework foram criados objetos que representam e manipulam as respectivas classes, são eles: -xsorder: Representa todas as ordens do sistema, podendo ser utilizado no software para coleta de dados sobre a programação ou acionamento dos métodos de programação; -xsoperation: Representa todas as operações do sistema, possibilitando a manipulação dos métodos de sequenciamento e a coleta de dados sobre as operações como se a operação está ou não sequenciada, em que recurso, os tempos de início e fim, além de informações como o tempo de fila no recurso, etc. -xsresources: Este objeto é uma representação de todos os recursos no sistema e através dele pode se obter informações sobre sua ocupação, tempo de fila, etc. A decisão de não permitir o acesso direto as classes do framework e sim através de uma classe de interface foi uma decisão de implementação do software para garantir somente acesso aos métodos e propriedades desejáveis. Pode ser observada na Figura 52 a tela em que são desenvolvidas regras especiais ou mesmo a inclusão de novas regras de liberação.

100 84 Figura 52 - Tela para o desenvolvimento de regras de liberação. Fonte: o autor A manipulação dos objetos citados anteriormente permite o desenvolvimento de regras avançadas de programação da produção como ilustrado na Figura 53 onde o código apresentado é da regra de minimização de WIP para frente desenvolvido em linguagem Pascal. Figura 53 - Exemplo da regra de liberação WIP para frente em linguagem Pascal. Fonte: o autor

101 Personalização do software protótipo Para permitir que cada empresa possa personalizar o software em função de suas necessidades, o software protótipo foi desenvolvido a partir de uma arquitetura que permite total personalização, como a criação de campos no banco de dados do software, como pode ser observado na Figura 54. Figura 54 - Janela de manutenção no banco de dados do software. Fonte: o autor Todas as interfaces com o usuário foram desenvolvidas com o próprio software protótipo o que permite o desenvolvimento de novas janelas, gráficos, etc. Esse ambiente de desenvolvimento possui as principais características da maioria dos principais ambientes de desenvolvimento de softwares comerciais. A Figura 55 apresenta o ambiente de desenvolvimento onde no lado direito está a paleta de componentes, ao centro o desenho da interface e a esquerda o editor de propriedades e eventos.

102 86 Figura 55 - Ambiente de desenvolvimento do software protótipo. Fonte: o autor A Figura 56 apresenta um exemplo com o editor de código fonte do software protótipo Figura 56 - Exemplo de código fonte no software protótipo. Fonte: o autor

103 Estudo de caso Para validar o framework foi desenvolvido um software protótipo citado na seção anterior. Este software foi implantando em uma empresa que será referenciada neste trabalho apenas como empresa A. Inicialmente é realizada uma apresentação da empresa e do mercado que está inserida, detalhando posteriormente sua estrutura, concluindo a avaliação dos resultados pelos gerentes da empresa Empresa estudada Trata-se de uma empresa localizada no interior do estado de São Paulo, atuante no mercado de embalagens industriais e utensílios domésticos desde Possui atualmente aproximadamente 900 funcionários divididos em duas estruturas organizacionais, sendo uma responsável pela injeção plástica e a outra pelo departamento de ferramentaria, que tem como objetivo desenvolver moldes de injeção plástica que serão utilizados para a fabricação de todas as linhas de produtos da empresa. O objeto de estudo será a área de ferramentaria, uma vez que foi definida como diferencial estratégico da empresa em relação a seus concorrentes. Por se tratar de uma ferramentaria cativa, ou seja, é uma ferramentaria que apenas fabrica moldes para uso interno, seu posicionamento estratégico está pautado em dois focos, sendo o primeiro para a melhoria contínua da qualidade e o segundo para redução nos prazos de entrega dos moldes. A redução nos prazos de entrega do molde está ligada à possibilidade da empresa no lançamento de produtos mais rapidamente pela área de injeção plástica o que se torna muito importante principalmente para a linha de embalagens sendo que a mesma deva garantir as embalagens no prazo, quantidade e qualidade acertada com seus clientes. Caso isso não ocorra pode gerar um grande prejuízo considerando o atraso no lançamento de um produto como a perda de receita e outros prejuízos. A linha de utensílios tem uma pressão um pouco menor pela redução no prazo, pois trata de produtos da própria empresa, mas também tem sua importância no faturamento e não pode desmerecer atenção ao prazo. O quesito qualidade conforme citado pela gerência da ferramentaria está ligada a dois outros pontos. Sendo o primeiro a produtividade do molde com redução dos tempos de injeção

104 88 e o segundo com a redução de operações adicionais, como fechamento de tampas ou retirada de rebarba o que aumenta o custo e diminui a produtividade. Para atingir estes objetivos estratégicos a gerência da ferramentaria tem direcionado seu foco no projeto do ferramental e no planejamento e controle da fabricação, reduzindo etapas e buscando ganhos de escala como a padronização de componentes e de projeto. A estrutura da ferramentaria apresentada no Quadro 10, conta com 22 funcionários trabalhando dois turnos e produzem aproximadamente 4000 horas mensalmente distribuídas entre a construção e manutenção das ferramentas. Quadro 10 - Recursos e pessoal ocupado na ferramentaria. Fonte: Empresa A Equipamento/Tipo de operação Equipamentos Funcionários Projeto 3 3 Detalhamento 2D 1 1 Programador CAM 1 1 Centro de Usinagem 5 3 Eletroerosão Penetração 3 3 Torno CNC 2 2 Tridimensional 1 1 Retificas 3 3 Operações de bancada (Ajuste e polimento) Ambiente de software e integração com o sistema de gestão A implantação do software teve início há dois anos com uma versão preliminar do software protótipo onde o ambiente de integração será citado abaixo: A ferramentaria possui um software de gestão o qual possui um módulo para a criação e manipulação da estrutura dos produtos (molde de injeção) e integração com as outras soluções da empresa como as ferramentas CAD e CAM. Possui também um módulo de apontamento da produção através de coletores de dados espalhados pela fábrica, que permitem acompanhamento on-line da de cada etapa de fabricação. Além da estrutura dos produtos, possui também a lista de operações e os recursos que podem executar cada operação com

105 89 tempos destacados de setup e operação. Possibilita também a dependência entre ordens, ou seja, organização de montagens do molde. A integração com o software de gestão foi realizada com o recebimento das ordens e operações liberadas, ficando a responsabilidade de gerar os cenários e definir a programação da fábrica para o software protótipo que posteriormente devolve ao software de gestão as ordens e operações programadas. A integração foi realizada diretamente através de tabelas compartilhadas no banco de dados Microsoft SQL Server. Algumas tabelas são disponibilizadas com as informações do software de gestão para o software protótipo, que devolve em outra tabela as operações com informações de início e término além dos recursos que foram selecionados para executar a operação (Figura 57). Figura 57 - Integração do software protótipo ao sistema de gestão. Fonte: o autor Benefícios após a implantação do software protótipo Após decorrido dois anos do início dos trabalhos foi realizado um estudo dos benefícios da adoção do software na ferramentaria. Este estudo foi realizado pela gerência da ferramentaria que disponibilizou alguns dados para este trabalho. Seguem abaixo os principais pontos do estudo realizado:

106 90 - Redução do tempo gasto com a programação da fábrica, antes realizada com a Microsoft Excel, além de trabalhoso não tinha informações atualizadas da fábrica ficando constantemente desatualizado. - Priorização real dos trabalhos, pois cada molde dependendo da complexidade e número de cavidades pode ser composto por centenas de componentes o que dificulta ter uma de visão onde cada componente está, o quanto já foi produzido e quanto tempo resta para sua conclusão. Com a adoção do software a mudança de prioridade do projeto é repassada a todos os componentes do molde. -Previsibilidade de real entrega, pois a diretoria ou os clientes do segmento de embalagens exigiam prazos realistas o que era muito difícil com as ferramentas computacionais utilizadas anteriormente. -Análise de diferentes cenários antes da efetivação da programação com visão global da fábrica. -Atendimento da estratégia da empresa, redução do tempo para lançamentos de produtos ou atendimento dos clientes nos prazos que desejavam. Este benefício foi conseguido pois a partir do momento em que era possível ter uma visão geral da ferramentaria, foi possível iniciar um trabalho de melhoria de processos. - Redução de compras antecipadas, pois estão alinhadas à programação da ferramentaria. A empresa estudada forneceu indicadores antes da implantação e após a implantação do software, permitindo uma visão mais detalhada dos ganhos obtidos que podem ser observados na Tabela 7. Tabela 7 - Indicadores da empresa A antes e após a implantação do software protótipo. Fonte: Empresa A Indicador Antes Depois Percentual dos moldes entregue com atraso 40% 8% Percentual do custo que ultrapassa o orçamento 40% -11% Percentual de horas extras sobre o total de horas normais 10% 3% Percentual gasto com horas extras sobre o valor da folha de pagamento 10% 6%

107 91 Analisando os dados da Tabela 7, pode-se observar ganhos significativos na diminuição do atraso na entrega das ferramentas o que além de benefícios financeiros como a redução no pagamento de eventuais multas, permite também um aumento na confiabilidade na empresa em cumprir seus prazos com os clientes e a diretoria. Outro indicador que merece destaque foi a significativa melhora na precisão dos custos dos orçamentos, pois com uso do software de programação de produção associado ao sistema de apontamento permite comparar efetivamente o tempo gasto com o orçado e planejado. Evitando uma subestimação de tempos de fabricação, impactando diretamente em imprecisões de prazo e custo. Os demais indicadores fornecidos pela gerência da empresa estão relacionados à redução no custo e na utilização de horas extras. O principal ganho foi a mudança na forma como eram utilizadas as horas extras que principalmente eram utilizadas para atender os prazos prometidos e pouco cumpridos. Atualmente são utilizadas de forma planejada como aumento de capacidade temporária em recursos gargalos.

108 92 5. CONCLUSÃO Este trabalho apresentou um framework computacional para o desenvolvimento de software de programação de produção, que considerou condições reais de fabricação e permitiu o uso diversas regras de liberação como carregamento paralelo, minimização de WIP além a utilização de Algoritmos Genéticos. Com base nas especificações do framework foi desenvolvido um software protótipo que se demonstrou ser bastante flexível, pois permitiu que a especificação de recursos e operações sem a preocupação de quais alternativas de programação seriam utilizadas. Esta separação permitiu concentrar-se nas características do processo e restrições operacionais, como turnos, manutenções e quebras para posteriormente poder adotar uma ou outra forma de sequenciamento, podendo o usuário analisar diversos indicadores de cada cenário gerado para posteriormente decidir qual é o mais adequado para a empresa naquele momento. O software permite o desenvolvimento de diversas regras de liberação de forma relativamente simples, possibilitando também a criação de regras especiais ou personalizadas para atender a características específicas de um sistema produtivo. Além do desenvolvimento das regras de liberação também foi adicionado no software o algoritmo genético, que permitiu encontrar valores melhores que as regras de liberação. Um teste realizado com algoritmo genético permitiu a redução do makespan em aproximadamente 14%, o que corresponderia a 3 dias de trabalho. O software foi implantado em uma empresa de injeção plástica no setor de fabricação de moldes e após a implantação forneceu resultados que apontaram ganhos significativos na redução de atraso na entrega, na redução de horas extras e na melhor visão dos itens em produção. Também foi possível à empresa desenvolver melhorias em seus processos e concentrar-se no projeto de ferramental, lançando produtos com mais rapidez, podendo dessa maneira focar em seus diferenciais competitivos. O software protótipo desenvolvido utilizando as especificações do framework apresentou de forma mais concreta as possibilidades do framework objetivo deste trabalho Sugestões de trabalhos futuros Como sugestões de trabalhos tem-se: -A implementação de novas regras de liberação com estudo dos resultados; -O desenvolvimento de novas classes de restrições;

109 93 -Adição de outros algoritmos metaheurísticos como por exemplo o Simulated Annealing; -Implantação do software protótipo em outras empresas e segmentos; -Desenvolvimento de outro software em outra linguagem de programação; -Utilização técnicas de processamento em paralelo para solução das restrições.

110 94 6. REFERÊNCIAS BIBLIOGRÁFICAS ARAUJO, S. A. D.; LIBRANTZ, A. F. H.; ALVES, W. A. L. Uso de algoritmos genéticos em problemas de roteamento de redes de computadores. Exacta, São Paulo, v. 5, n. 2, p , julho/dezembro BALIN, S. Parallel machine scheduling with fuzzy processing times using a robust genetic algorithm and simulation. Information Sciences, Istambul, n. 181, p , abril BICALHO, L. H. C.; SANTOS, A. G. D.; ARROYO, J. E. C. GBT: GRASP+ Busca Tabu em problemas de scheduling. XLIII Simpósio Brasileiro de Pesquisa Operacional, Ubatuba, p , agosto BOIKO, T. J. P.; TSUJIGUCHI, L. T. D. A.; VAROLO, F. W. R. Classificação de Sistemas de Produção:Uma Abordagem de Engenharia de Produção. IV EPCT - Encontro de Produção Científica e Tecnológica, Campo Mourão, p. 1-10, 20 a 21 outrubro BOOCH, G.; JACOBSON, I.; RUMBAUGH, J. The Unified Modeling Language Reference Manual. Massachusetts: Addison Wesley Longman, Inc, BRAILSFORD, S. C.; POTTS, C. N.; SMITH, B. M. Constraint satisfaction problems: Algorithms and applications. European Journal of Operational Research, Southampton, p , BRANCO, R. M.; COELHO, A. S.; MAYERLE, S. F. Programação da Produção: Solução de escalonamento em job shop por algoritmo genético híbrido. XXVII Encontro Nacional de Engenharia de Produção, Foz do Iguaçu, p. 1-10, Outrubro BROWNING, T. R.; YASSINE, A. A. Resource-constrained multi-project scheduling: Priority rule performance revisited. International Journal of Production Economics, Beirute, p , 20 março BRUCKER, P. Scheduling and constraint propagation. Discrete Applied Mathematics, Osnabrück, p , CANTIERE, P. C.; MORAIS, M. D. F.; BOIKO, T. J. P. Análise de Desempenho de Regras de Prioridade para Programação em Sistemas Flow Shop Híbridos e Tempos de Setup dependentes da Sequência. V EPCT - Encontro de Produção Científica e Tecnológica, Campo Mourão, p. 1-11, outubro CARVALHO, A. R. N.; COSTA, R. S. Simulação Computacional para a Programação das Atividades de Produção: Aspectos da Modelagem e da Metodologia de Desenvolvimento. XXII Encontro Nacional de Engenharia de Produção, Ouro Preto, p. 1-8, outubro 2003.

111 95 CARVALHO, C. E. C. D.; ABRANTES, C. T. D.; CAMEIRA, R. F. Métodos Ágeis de Desenvolvimento de Software: Um Caso Prático de Aplicação do Scrum. XXXI Encontro Nacional de Engenharia de Produção, Belo Horizonte, CASTRO, R. E. D. Otimização de Estruturas com Multi-objetivos Via Algoritmos Genéticos de Pareto. Universidade Federal do Rio de Janeiro - Tese de Doutorado em Ciências em Engenharia Civil, Rio de Janiero, Maio CHASE, R. B.; JACOBS, F. R.; AQUILANO, N. J. Administração da produção para a vantagem competitiva. 10ª edição. ed. Porto Alegre: Bookman, CORRÊA, H. L.; CORRÊA, C. A. Administração de Produção e de Operações. 1ª. ed. São Paulo: Editora Atlas S.A., v. 1, DAMA, D. M. I. DAMA-DMBOK, The DAMA Guide to the Data Management Body of Knowledge (DAMA-DMBOK) Portuguese Edition. São Paulo: Technics Publications, LLC, DIAS, V. C. Proposta de um Framework conceitual de dados e padrões de análise para a definição de um banco de dados em qualidade de energia elétrica. Dissertação (mestrado) Pontífica Universidade Católica de Minas Gerais, Belo Horizonte, FERNANDES, F. C. F.; AZEKA, F.; GODINHO-FILHO, M. Análise da Lacuna entre teoria e prática no planejamento e controle da produção em um pólo de ensino e tecnologia do estado de São Paulo. XXVIII Encontro Nacional de Engenharia de Produção, Rio de Janeiro, p. 1-14, Outubro FERNANDES, F. C. F.; GODINHO-FILHO, M. Planejamento e Controle da Produção: dos fundamentos ao Essencial. São Paulo: Editora Atlas, FERNANDES, F. C. F.; GOFINHO-FILHO, M. Sistemas de Coodernação de ordens: revisão, classificação, funcionamento e aplicabilidade. Gestão e Produção, São Carlos, v. 14, p , maio/agosto FERREIRA, F. M. G. Desenvolvimento e Aplicacões de um Framework Orientado a Objetos para Análise Dinâmica de Linhas de Ancoragem e de Risers. Dissertação (mestrado) - Universidade Federal de Alagoas, Maceió, Dezembro FILHO, M. G.; FERNANDES, F. C. F. Uma análise dos sistemas de planejamento e controle de produção em uma grande empresa de materiais de escrita. XXII Encontro Nacional de Engenharia de Produção, Curitiba, p. 1-8, FRAMINAN, J. M.; RUIZ, R. Architecture of manufacturing scheduling systems: Literature review and an integrated proposal. European Journal of Operational Research, Sevilha, n. 205, p , 2010.

112 96 GIACOMET, B. Otimização Distribuída de Restrições em Ambientes Dinâmicos. Dissertação (Mestrado) -Pontifícia Universidade Católica do Paraná, Curitiba, GIACON, E.; MESQUITA, M. A. Levantamento das práticas de programação detalhada da produção: um survey na indústria paulista. Gestão e Produção, São Carlos, v. 8, p , GIL, A. C. Como elaborar projetos de pesquisa. 4. ed. São Paulo: Atlas, GIROTTI, J.; NISHIMURA, V. S.; MESQUITA, M. A. D. Simulação em planilhas para programação de ordens de produção em sistemas job shop. XXXI Encontro Nacional de Engenharia de Produção, Belo Horizonte, p. 1-14, outrubro GIROTTI, L. J.; MESQUITA, M. A. D. Uma análise comparativa das abordagens MRP e APS para programação detalhada da produção. XXXI Encontro Nacional de Engenharia de Produção, Belo Horizonte, p. 1-14, outrubro HAUTAMÄKI, J. Pattern-Based Tool Support for Frameworks Towards Architecture-Oriented Software Development Environment. Tese (Doutorado) Tampere University of Technology, Auditorium, fevereiro HVOLBY, H.-H.; STEGER-JENSEN, K. Technical and industrial issues of Advanced Planning and Scheduling (APS) system. Computers in Industry, n. 61, p , ICHIHARA, J. A. O problema de programação de projetos com restrição de recursos (Resource-Constrained Porject Scheduling Problem). XXII Encontro Nacional de Engenharia de Produção, Curitiba, p. 1-8, outubro IIBA, I. I. O. B. A. Babok - Um guia para o corpo de conhecimento de análise de negócios ed. São: International Institute of Business Analysis, LIDDELL,. Pequeno Livro Azul da Programação da Produção. Vitória: [s.n.], MACCARTHY, B. L.; FERNANDES, F. C. A Multidimensional Classification of Production System for the Design and Selection of Production Planning and Control systems. Production Planning & Control, MACCARTHY, B. L.; LIU, J. Addressing the gap in scheduling research: a review of optimization and heuristic methods in production scheduling. International Journal of Production research, n. 31, p , MAINIERI, G. B.; RONCONI, D. P. Regras de despacho para a minimização do atraso total no ambiente flowshop flexível. Gestão e Produção, São Carlos, n. 17, p , MARTINS, P. G.; LAUGENI, F. P. Administração da Produção. 2ª. ed. São Paulo: Editora Saraiva, v. 1, 2005.

113 97 MORAIS, M. F.; MENEGARDE, J. K.; CANTIERE, P. C. Regras de Prioridade e Critérios de Desempenho Adotados em Problemas de Programação da Produção em Ambientes Flow Shop. IV Encontro de Produção Científica e Tecnologia, Campo Mourão, Outubro NIEUWENHUYSE, I. V. et al. Advanced resource planning as a decision support module for ERP. Computer in Industry, v. 62, p. 1-8, NOVAS, J. M.; HENNING, G. P. Reactive scheduling framework based on domain knowledge and constraint programming. Computer and Chemical Engineering, n. 34, p , PACHECO, R. F.; SANTORO, M. C. A adoção de modelos de scheduling no Brasil: deficiências do processo de escolha. Gestão e Produção, n. 8, p , agosto PERALES, W. Classificação dos Sistemas de Produção. XXVII Encontro Nacional de Engenharia de Produção, Salvador, p. 1-6, PEREIRA, F.. Problema de otimização de restroção: um modelo específico de fluxo multiproduto. Dissertação (Mestrado em Ciências) - Pós-Graduação em Engenharia Elétrica e Informática Industrial - Universidade Tecnológica Federal do Paraná, Curitiba, PEREIRA, R. Particionamento Automático de Restrições. Tese Doutorado COPPE Universidade Federal do Rio dejaneiro, Rio de Janeiro, PORTER, M. E. Estratégia competitiva. 2ª. ed. Rio de Janeiro: Elsevier, v. 1, PUTNAM, A. O. MRP for repetitive manufacturing shops: a flexible kanban system for America. Production and Inventory Management, p , REIS, J. O Scheduling em Inteligência Artificial : um resumo. Relatório Interno - Departamento de Ciências e Tecnologias da Informação - Instituto Superior de Ciências do Trabalho e da Empresa, Lisboa, Novembro RODRIGUES, A. G.; GÔMEZ, A. T. Tratamento de um problema de escalonamento considerando data de entrega, turnos de produção e trocas de ferramentas via Busca Tabu. Produção, n. 18, p , jan/abr ROSA, A. D. F. C. Um estudo comparativo das técnicas metaheurísticas Algoritmos Genéticos e Simulated Anneling aplicadas a sistemas de apoio à decisão para otimização de parâmetros em processos de usinagem. Universidade Nove de Julho - Dissertação de Mestrado, São Paulo, Março RUSSELL, S.; NORVIG, P. Artificial Intelligence: A Modern Approach. 3. ed. [S.l.]: Pearson Education, 2010.

114 98 SILVA, B. J. V. D.; MORABITO, R.; YANASSE, H. D. Programação da Produção de gabaritos de montagem com restrições de adjacência na industria aéronáutica. Produção, n. 21, p , outubro SILVA, C. A. D. S.; LEITE, J. C.; JUNIOR, C. T. D. C. Nova proposta de sequênciamento de produção com lógica fuzzy, usando a margem de contribuição do produto como fator preponderante. XXXI Encontro Nacional de Engenharia de Produção, Belo Horizonte, p. 1-14, 04 a 07 outubro SILVA, R. P. E. Suporte ao desenvolvimento e uso de frameworks e componentes. Tese (doutorado) Universidade do Rio Grande do Sul, Porto Alegre, Março SOUZA, M. D. D.; BORGONHONI, P. A consolidação dos três níveis de planejamento e controle de produção. Caderno de Administração, n. 15, p , jul/dez TALIGENT, I. Building Object-Oriented Frameworks. LHCb Computing Home Page, Disponivel em: <http://lhcb-comp.web.cern.ch/lhcbcomp/components/postscript/buildingoo.pdf>. Acesso em: 01 abr TSANG, E. Foundations of Constraint Satisfaction. London: Academic Press, TUBINO, D. F. Planejamento e Controle da Produção: Teoria e Prática. São Paulo: Editora Atlas, TURATTI, R.; MARCANTONIO, R. A Importância da Utilização dos Sistemas APS no Alinhamento de Estratégias Operacionais. XII - Simpósio de Administração da Produção e Operações Internacionais, São Paulo, p. 1-13, agosto VIANNA, D. S.; FRANCO, I. S.; VIANNA, M. D. F. D. Algoritmos genéticos híbridos para o problema de escalonamento de tarefas job shop flexível. XLII Simpósio Brasileiro de Pesquisa Operacional, Bento Gonçalves, p. 1-12, agosto WEGLAZ, J. et al. Project scheduling with finite or infinite number os activity processing modes A survey. European Journal Of Operational Research, p , março XING, L.-N.; CHEN, Y.-W.; YANG, K.-W. Multi-objective flexible job shop schedule: Design and evaluation by simulation modeling. Applied Soft Computing, p , XU, J.; XU, X.; XIE, S. Q. Recent developments in Dual Resource Constrained (DRC) system research. European Journal Of Operational Research, Março YOSEF, J. Building a Conceptual Framework: Philosophy, Definitions, and Procedure. International Journal of Qualitative Methods, Haifa, p , ZATTAR, I. C. Análise da aplicação dos sistemas baseados no conceito de capacidade finita nos diversos níveis da administração da manufatura através de estudos de caso. Dissertação (mestrado) - Universidade Federal de Santa Catarina, Florianópolis, Agosto 2004.

115 99 ZEBALLOS, L. J. A constraint programming approach to tool allocation and production scheduling in flexible manufacturing systems. Robotics and Computer-Integrated Manufacturing, p , abril 2010.

116 7. ANEXO Publicação XXXI Encontro Nacional de Engenharia de Produção (2011) 100

117 101

118 102

119 103

120 104

121 105

122 106

123 107

124 108

125 109

Sumário. 1.3 Identificação dos principais autores em PCR, 15. 1.4 Questões, 15

Sumário. 1.3 Identificação dos principais autores em PCR, 15. 1.4 Questões, 15 Sumário Apresentação, xiii 1 Definições e Conceitos Fundamentais, l 1.1 Sistemas de produção: conceituação, evolução e algumas importantes classificações, l 1.2 O Planejamento e Controle da Produção (PCP),

Leia mais

Planejamento e Controle da Produção I

Planejamento e Controle da Produção I Planejamento e Controle da Produção I Sequenciamento e Emissão de Ordens Prof. M.Sc. Gustavo Meireles 2012 Gustavo S. C. Meireles 1 Introdução Programação da produção: define quanto e quando comprar, fabricar

Leia mais

Advanced Planning and Scheduling

Advanced Planning and Scheduling Advanced Planning and Scheduling Por Soraya Oliveira e Raquel Flexa A importância do planejamento Uma cadeia de suprimentos é composta por diversos elos conectados que realizam diferentes processos e atividades

Leia mais

MRP / MRP II / ERP (capítulos 11 e 12)

MRP / MRP II / ERP (capítulos 11 e 12) MRP / MRP II / ERP (capítulos 11 e 12) As siglas MRP, MRP II e ERP são bastante difundidas e significam: MRP Materials Requirements Planning Planejamento das Necessidades de Materiais; MRP II Resource

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

OTIMIZAÇÃO DA PROGRAMAÇÃO E SEQUENCIAMENTO DA PRODUÇÃO EM UM TRATAMENTO TÉRMICO COM A UTILIZAÇÃO DE SISTEMAS DE CAPACIDADE FINITA

OTIMIZAÇÃO DA PROGRAMAÇÃO E SEQUENCIAMENTO DA PRODUÇÃO EM UM TRATAMENTO TÉRMICO COM A UTILIZAÇÃO DE SISTEMAS DE CAPACIDADE FINITA OTIMIZAÇÃO DA PROGRAMAÇÃO E SEQUENCIAMENTO DA PRODUÇÃO EM UM TRATAMENTO TÉRMICO COM A UTILIZAÇÃO DE SISTEMAS DE CAPACIDADE FINITA Izabel C. Zattar, Carlos M. Sacchelli, M. Eng. Instituto Superior de Tecnologia

Leia mais

2. Planejamento e Controle da Produção

2. Planejamento e Controle da Produção 15 2. Planejamento e Controle da Produção O mercado torna-se a cada dia mais exigente e o dominio de novas tecnologias, de novos processos ou então sistemas e técnicas, é uma grande preocupação para as

Leia mais

Prof. Me. Vítor Hugo Dias da Silva

Prof. Me. Vítor Hugo Dias da Silva Prof. Me. Vítor Hugo Dias da Silva Programação e Controle da Produção é um conjunto de funções inter-relacionadas que objetivam comandar o processo produtivo e coordená-lo com os demais setores administrativos

Leia mais

MRP Materials Requirements Planning (Planejamento de necessidades de materiais)

MRP Materials Requirements Planning (Planejamento de necessidades de materiais) MRP MRP Materials Requirements Planning (Planejamento de necessidades de materiais) Questões-chaves O Que é MRP? MRP quer dizer planejamento das necessidades de materiais, que são sistemas de demanda dependentes,

Leia mais

Planejamento e Controle da Produção

Planejamento e Controle da Produção Planejamento e Controle da Produção Introdução - Sistema de PCP - Previsão da demanda - Planejamento da produção Gerência de Estoques - Lote Econômico - Plano de Produção Gerência de Projetos - CPM - PERT

Leia mais

Seqüenciamento e Controles de Ordens de Produção

Seqüenciamento e Controles de Ordens de Produção Seqüenciamento e Controles de Ordens de Produção Seu computador é rápido o suficiente? Universo Tempo de Itens Máquinas de soluções processamento 4 5 7.962.624 1,3 minutos 5 5 2,49 x 10 10 2,9 dias 6 5

Leia mais

Sistema de Informações da Produção Utilizando o Método Kanban

Sistema de Informações da Produção Utilizando o Método Kanban Ciências da Computação FURB Trabalho de Conclusão de Curso (TCC) Sistema de Informações da Produção Utilizando o Método Kanban Alzir Wagner Orientador: Wilson Pedro Carli Fevereiro de 2008 Roteiro de apresentação

Leia mais

Integração entre Sistemas de Seqüenciamento e ERP para solução de problemas de alteração de ordens de produção devido a eventos inesperados

Integração entre Sistemas de Seqüenciamento e ERP para solução de problemas de alteração de ordens de produção devido a eventos inesperados Integração entre Sistemas de Seqüenciamento e ERP para solução de problemas de alteração de ordens de produção devido a eventos inesperados Helio Galvão Ciffoni, Ramon Hoshino & Walid Nicolas Assad Malisoft

Leia mais

Análise estrutural do problema de programação da produção F3 r j, s ijk C max

Análise estrutural do problema de programação da produção F3 r j, s ijk C max Análise estrutural do problema de programação da produção F3 r j, s ijk C max Sânia da Costa Fernandes (UFG) saninha_fernandes@hotmail.com Tatiane Albuquerque Pires (UFG) tati_albuquerque_3@hotmail.com

Leia mais

XXV Encontro Nac. de Eng. de Produção Porto Alegre, RS, Brasil, 29 out a 01 de nov de 2005

XXV Encontro Nac. de Eng. de Produção Porto Alegre, RS, Brasil, 29 out a 01 de nov de 2005 Modelo de integração de sistemas de gestão erp com a produção lexandre ugusto Massote (FEI) massote@fei.edu.br Guilherme Braga guiar De Maria (FEI) guibraga@terra.com.br Vanessa Takagochi (FEI) vanessa_takagochi@yahoo.com.br

Leia mais

REGRAS DE PRIORIDADE E CRITÉRIOS DE DESEMPENHO ADOTADOS EM PROBLEMAS DE PROGRAMAÇÃO DA PRODUÇÃO EM AMBIENTES FLOW SHOP

REGRAS DE PRIORIDADE E CRITÉRIOS DE DESEMPENHO ADOTADOS EM PROBLEMAS DE PROGRAMAÇÃO DA PRODUÇÃO EM AMBIENTES FLOW SHOP REGRAS DE PRIORIDADE E CRITÉRIOS DE DESEMPENHO ADOTADOS EM PROBLEMAS DE PROGRAMAÇÃO DA PRODUÇÃO EM AMBIENTES FLOW SHOP Me. Márcia de Fátima Morais GEPPGO, DEP-EPA, Fecilcam, marciafmorais@yahoo.com.br

Leia mais

CONCEITOS E FUNÇÕES DO PLANEJAMENTO, DA PROGRAMAÇÃO E DO CONTROLE DA PRODUÇÃO PPCP (Petrônio Garcia Martins / Fernando Piero Martins Capítulo 7)

CONCEITOS E FUNÇÕES DO PLANEJAMENTO, DA PROGRAMAÇÃO E DO CONTROLE DA PRODUÇÃO PPCP (Petrônio Garcia Martins / Fernando Piero Martins Capítulo 7) CONCEITOS E FUNÇÕES DO PLANEJAMENTO, DA PROGRAMAÇÃO E DO CONTROLE DA PRODUÇÃO PPCP (Petrônio Garcia Martins / Fernando Piero Martins Capítulo 7) A ESTRATÉGIA DA MANUFATURA E O SISTEMA PPCP: A estratégia

Leia mais

25/10/2015. Módulo III Programação e Controle da Produção. PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO Implantação de Sistema Produtivo

25/10/2015. Módulo III Programação e Controle da Produção. PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO Implantação de Sistema Produtivo Módulo III Programação e Controle da Produção Danillo Tourinho S. da Silva, M.Sc. PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO Implantação de Sistema Produtivo Fluxo de Informações e PCP Marketing Previsão de Vendas

Leia mais

APS Advanced Plainning and Scheduling Sistema Avançado de Produção

APS Advanced Plainning and Scheduling Sistema Avançado de Produção APS Advanced Plainning and Scheduling Sistema Avançado de Produção O módulo APS é a mais nova ferramenta que irá auxiliar no gerenciamento da produção. O principal objetivo do APS é a determinação exata

Leia mais

MRP, MRPII, ERP... Oracle, SAP, Microsiga... MRP MRP II - ERP. MRP Material Requirement Planning. MRP II Manufacturing Resources Planning

MRP, MRPII, ERP... Oracle, SAP, Microsiga... MRP MRP II - ERP. MRP Material Requirement Planning. MRP II Manufacturing Resources Planning MRP, MRPII, ERP... Oracle, SAP, Microsiga... MRP MRP II - ERP MRP Material Requirement Planning MRP II Manufacturing Resources Planning ERP Enterprise Resource Planning 1 O MRP é um software que auxilia

Leia mais

XLVII SIMPÓSIO BRASILEIRO DE PESQUISA OPERACIONAL

XLVII SIMPÓSIO BRASILEIRO DE PESQUISA OPERACIONAL UM MODELO DE PLANEJAMENTO DA PRODUÇÃO CONSIDERANDO FAMÍLIAS DE ITENS E MÚLTIPLOS RECURSOS UTILIZANDO UMA ADAPTAÇÃO DO MODELO DE TRANSPORTE Debora Jaensch Programa de Pós-Graduação em Engenharia de Produção

Leia mais

KANBAN (capítulo 13)

KANBAN (capítulo 13) KANBAN (capítulo 13) O sistema kanban foi desenvolvido na Toyota Motor Company por Taiichi Ohno e Sakichi Toyoda e ficou conhecido dentro do Sistema Toyota de Produção, como um sistema de combate ao desperdício.

Leia mais

T2Ti Tecnologia da Informação Ltda T2Ti.COM http://www.t2ti.com Projeto T2Ti ERP 2.0 Autor: Marco Polo Viana. Bloco Suprimentos

T2Ti Tecnologia da Informação Ltda T2Ti.COM http://www.t2ti.com Projeto T2Ti ERP 2.0 Autor: Marco Polo Viana. Bloco Suprimentos Bloco Suprimentos Controle de Produção PCP Objetivo O objetivo deste artigo é dar uma visão geral sobre o Módulo Controle de Produção PCP, que se encontra no Bloco Suprimentos. Todas informações aqui disponibilizadas

Leia mais

ANÁLISE DOS SISTEMAS DE PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO

ANÁLISE DOS SISTEMAS DE PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO ANÁLISE DOS SISTEMAS DE PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO Clarissa Fullin Barco (UFSCar)cfbarco@hotmail.comFábio Barbin Villela (UFSCar)fbvillela@yahoo.com.br A inspiração para este estudo vem de uma

Leia mais

12/02/2009. Planejamento e Controle da Produção. MSc. Paulo Cesar C. Rodrigues paulo.rodrigues@usc.br Mestre em Engenharia de Produção

12/02/2009. Planejamento e Controle da Produção. MSc. Paulo Cesar C. Rodrigues paulo.rodrigues@usc.br Mestre em Engenharia de Produção MSc. Paulo Cesar C. Rodrigues paulo.rodrigues@usc.br Mestre em Engenharia de PCP É a função da administração que planeja, dirige e controla o suprimento de material e as atividades de processamento de

Leia mais

ERP Entreprise Resource Planning. Fabiano Armellini

ERP Entreprise Resource Planning. Fabiano Armellini ERP Entreprise Resource Planning Fabiano Armellini Overview 1) Introdução 2) Histórico 2.1) MRP 2.2) MRP II 2.3) Do MRP II ao ERP 3) Módulos do ERP 3.1) Módulos de supply chain management 3.2) Módulos

Leia mais

Lean e a Gestão Integrada da Cadeia de Suprimentos

Lean e a Gestão Integrada da Cadeia de Suprimentos JOGO DA CERVEJA Experimento 3: Abordagem gerencial hierárquica e centralizada Planejamento Integrado e Nivelado de todos os Estágios de Produção e Distribuição JOGO DA CERVEJA Experimento e 3: Integrando

Leia mais

FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO

FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO @ribeirord FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO Rafael D. Ribeiro, M.Sc,PMP. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br Sistemas de Informação Sistemas de Apoio às Operações Sistemas

Leia mais

PROPOSTA PARA DESENVOLVIMENTO DE UM PROTÓTIPO DE UM SISTEMA INTEGRADO DE GESTÃO DE DEMANDA

PROPOSTA PARA DESENVOLVIMENTO DE UM PROTÓTIPO DE UM SISTEMA INTEGRADO DE GESTÃO DE DEMANDA PROPOSTA PARA DESENVOLVIMENTO DE UM PROTÓTIPO DE UM SISTEMA INTEGRADO DE GESTÃO DE DEMANDA Luís Henrique Rodrigues UNISINOS São Leopoldo RS José Antônio Valle Antunes Jr UNISINOS São Leopoldo RS Ivan De

Leia mais

Planejamento Agregado: na ótica do PCP e da Administração da Produção

Planejamento Agregado: na ótica do PCP e da Administração da Produção Planejamento Agregado: na ótica do PCP e da Administração da Produção Henrique Holowka 1 (EPA, DEP/FECILCAM) henrique_engprod@yahoo.com Isabela Korczovei Lemes 2 (EPA, DEP/FECILCAM) kl.isabela@hotmail.com

Leia mais

Marketing. Gestão de Produção. Gestão de Produção. Função Produção. Prof. Angelo Polizzi

Marketing. Gestão de Produção. Gestão de Produção. Função Produção. Prof. Angelo Polizzi Marketing Prof. Angelo Polizzi Gestão de Produção Gestão de Produção Objetivos: Mostrar que produtos (bens e serviços) consumidos, são produzidos em uma ordem lógica, evitando a perda ou falta de insumos

Leia mais

O APS (ADVANCED PLANNING SYSTEMS) APLICADO AO ERP TECNICON: PRINCÍPIOS DE USABILIDADE

O APS (ADVANCED PLANNING SYSTEMS) APLICADO AO ERP TECNICON: PRINCÍPIOS DE USABILIDADE O APS (ADVANCED PLANNING SYSTEMS) APLICADO AO ERP TECNICON: PRINCÍPIOS DE USABILIDADE Robson Pache (FAHOR) rp000705@fahor.com.br Juliano Hammes (FAHOR) jh000697@fahor.com.br Vilmar Boeno Silva (FAHOR)

Leia mais

Sistemas de Administração e Gestão da Produção

Sistemas de Administração e Gestão da Produção Sistemas de Administração e Gestão da Produção Izabel Cristina Zattar izabelzattar@netvision.com.br www.grima.ufsc.br/izabel/index.html Os 3 Grandes Níveis do Planejamento Horizonte de detalhamento Diário/Semanal

Leia mais

5.4 Manufacturing Resources Planning

5.4 Manufacturing Resources Planning 5.4 Manufacturing Resources Planning 5.4 Manufacturing Resources Planning O Planejamento dos Recursos de Manufatura (Manufacturing Resourdes Panning, em inglês, ou MRP II) representa um esforço para expandir

Leia mais

A introdução de ferramentas APS nos sistemas de Planejamento, Programação e Controle da Produção

A introdução de ferramentas APS nos sistemas de Planejamento, Programação e Controle da Produção A introdução de ferramentas APS nos sistemas de Planejamento, Programação e Controle da Produção Cristhiano Stefani Faé (UFRGS) fae@producao.ufrgs.br Alexandre Erhart (UFRGS) erhart@producao.ufrgs.br Resumo

Leia mais

PROGRAMAÇÃO DA PRODUÇÃO - SIMULADOR DE REGRAS DE SEQÜÊNCIAÇÃO

PROGRAMAÇÃO DA PRODUÇÃO - SIMULADOR DE REGRAS DE SEQÜÊNCIAÇÃO PROGRAMAÇÃO DA PRODUÇÃO - SIMULADOR DE REGRAS DE SEQÜÊNCIAÇÃO Renato de Oliveira Moraes UNIP Universidade Paulista Rua Bacelar, 1212 Vila Clementino São Paulo, SP Cep 04026-002 e-mail: renato.moraes@ perceptron.com.br

Leia mais

Planejamento e Controle da Produção Cap. 0

Planejamento e Controle da Produção Cap. 0 Planejamento e Controle da Produção Cap. 0 Prof. Silene Seibel, Dra. silene@joinville.udesc.br sileneudesc@gmail.com Sistemas Produtivos O sistema de produção define de que maneira devemos organizar a

Leia mais

Aplicando lean em indústrias de processo

Aplicando lean em indústrias de processo Aplicando lean em indústrias de processo Alexandre Cardoso* Os setores de alimentos, químico, farmacêutico e de cosméticos, que na sua essência são indústrias de processo, têm obtido sucesso na aplicação

Leia mais

PLANEJAMENTO E CONTROLE DA PRODUÇÃO

PLANEJAMENTO E CONTROLE DA PRODUÇÃO Universidade Federal do Rio Grande FURG Universidade Aberta do Brasil UAB Curso - Administração Administração da Produção I Prof.ª MSc. Luciane Schmitt Semana 7 PLANEJAMENTO E CONTROLE DA PRODUÇÃO 1 PLANEJAMENTO

Leia mais

Ortems. Agile Manufacturing Software ADV ANCE D PLANN ING AND DE TAI LED SCH EDUL ING - AP S

Ortems. Agile Manufacturing Software ADV ANCE D PLANN ING AND DE TAI LED SCH EDUL ING - AP S ADV ANCE D PLANN ING AND DE TAI LED SCH EDUL ING - AP S QUEM SOMOS Empresa criada no Brasil no ano de 1996 como joint-venture da SORMA SpA Itália, proprietária de um software ERP para indústrias. Realizou

Leia mais

3 O sistema APO Advanced Planner and Optimizer

3 O sistema APO Advanced Planner and Optimizer 3 O sistema APO Advanced Planner and Optimizer Esse capítulo tem por objetivo apresentar os conceitos do sistema APO (Advanced Planner and Optimizer), o sistema APS da empresa alemã SAP. O sistema APO

Leia mais

Sistemas de Transformação e Estratégia de produção

Sistemas de Transformação e Estratégia de produção Sistemas de Transformação e de produção A seleção do Processo de produção depende: -Tecnologia dos Processos de Transformaçã ção -Tecnologia dos meios auxiliares (dispositivos, ferramentas) -Tecnologia

Leia mais

DEFINIÇÃO DE LEAN MANUFACTURING

DEFINIÇÃO DE LEAN MANUFACTURING MANUFATURA ENXUTA DEFINIÇÃO DE LEAN MANUFACTURING A ORIGEM DA PALAVRA LEAN O termo LEAN foi cunhado originalmente no livro A Máquina que Mudou o Mundo de Womack, Jones e Roos, publicado nos EUA em 1990.

Leia mais

MRP - MATERIAL REQUERIMENT PLANNING (PLANEJAMENTO DAS NECESSIDADES DE MATERIAS)

MRP - MATERIAL REQUERIMENT PLANNING (PLANEJAMENTO DAS NECESSIDADES DE MATERIAS) MRP - MATERIAL REQUERIMENT PLANNING (PLANEJAMENTO DAS NECESSIDADES DE MATERIAS) SILVA M. C. Melo. UFSe (2001) MRP e MRP II O objetivo do conteúdo dessas aulas é enfocar os sistemas MRP e MRPII no processo

Leia mais

Planejamento da produção. FATEC Prof. Paulo Medeiros

Planejamento da produção. FATEC Prof. Paulo Medeiros Planejamento da produção FATEC Prof. Paulo Medeiros Planejamento da produção O sistema de produção requer a obtenção e utilização dos recursos produtivos que incluem: mão-de-obra, materiais, edifícios,

Leia mais

SISTEMAS INTEGRADOS DE GESTÃO APLICADOS NO PLANEJAMENTO E CONTROLE DA PRODUÇÃO

SISTEMAS INTEGRADOS DE GESTÃO APLICADOS NO PLANEJAMENTO E CONTROLE DA PRODUÇÃO SISTEMAS INTEGRADOS DE GESTÃO APLICADOS NO PLANEJAMENTO E CONTROLE DA PRODUÇÃO ENTERPRISE RESOURCE PLANNING APPLIED IN THE MANUFACTURING PLANNING AND CONTROL José Eduardo Freire 1 Ruchele Marchiori Coan

Leia mais

PLANEJAMENTO E CONTROLE DE PRODUÇÃO

PLANEJAMENTO E CONTROLE DE PRODUÇÃO PLANEJAMENTO E CONTROLE DE PRODUÇÃO 01 Alexandre Crepaldi 02 Celso Tomazini 03 Francine Lemes 04 Márcio Bernardo 05 Tábata Cristina 06 Tiago Tezzotto 07 Tied Humberto 1 O QUE É PCP? Plano de Controle de

Leia mais

Objetivos da Produção

Objetivos da Produção Objetivos da Produção Aula 3 Profª. Ms. Eng. Aline Soares Pereira Sistemas Produtivos I Objetivos da aula 1. Apresentar os objetivos e estratégias da produção 2 Produção: É o processo de obtenção de qualquer

Leia mais

MRP COMO SISTEMA PROPULSOR DE MELHORIAS NA ADMINISTRAÇÃO DE MATERIAIS

MRP COMO SISTEMA PROPULSOR DE MELHORIAS NA ADMINISTRAÇÃO DE MATERIAIS ISSN 1984-9354 MRP COMO SISTEMA PROPULSOR DE MELHORIAS NA ADMINISTRAÇÃO DE MATERIAIS Jamile Pereira Cunha Rodrigues (UESC) Resumo Diante do atual cenário competitivo empresarial, as empresas estão buscando

Leia mais

MS715 Planejamento, Programação e Controle da Produção

MS715 Planejamento, Programação e Controle da Produção DISCIPLINA: (considerando que Gestão de Materiais será tratada em outra disciplina - se não, sugere-se uma seção sobre o tema baseada no Capítulo 2 do livro de Corrêa, Gianesi e Caon, 2.001) PROFESSOR:

Leia mais

Engª de Produção Prof.: Jesiel Brito. Sistemas Integrados de Produção ERP. Enterprise Resources Planning

Engª de Produção Prof.: Jesiel Brito. Sistemas Integrados de Produção ERP. Enterprise Resources Planning ERP Enterprise Resources Planning A Era da Informação - TI GRI Information Resource Management -Informação Modo organizado do conhecimento para ser usado na gestão das empresas. - Sistemas de informação

Leia mais

PROGRAMA DE DESENVOLVIMENTO DE CADEIAS PRODUTIVAS

PROGRAMA DE DESENVOLVIMENTO DE CADEIAS PRODUTIVAS PROGRAMA DE DESENVOLVIMENTO DE CADEIAS PRODUTIVAS 2ª OFICINA MAPEAMENTO DO FLUXO DE VALOR Lean Manufacturing é a busca da perfeição do processo através da eliminação de desperdícios Definir Valor Trabalhar

Leia mais

15/09/2011. Historico / Conceito. Lean Production é um programa corporativo ADMINISTRAÇÃO DA PRODUÇÃO II. Evolucao do Conceito LEAN THINKING

15/09/2011. Historico / Conceito. Lean Production é um programa corporativo ADMINISTRAÇÃO DA PRODUÇÃO II. Evolucao do Conceito LEAN THINKING Historico / Conceito Lean : década de 80 James Womack (MIT) Projeto de pesquisa: fabricantes de motores automotivos; ADMINISTRAÇÃO DA PRODUÇÃO II Lean Production é um programa corporativo composto por

Leia mais

GESTÃO EM PRODUÇÃO E SERVIÇOS

GESTÃO EM PRODUÇÃO E SERVIÇOS UNIVERSIDADE FEDERAL DO RIO DE JANEIRO ESCOLA POLITÉCNICA DEPARTAMENTO DE ENGENHARIA INDUSTRIAL MBA GESTÃO EM PRODUÇÃO E SERVIÇOS DISCIPLINAS E EMENTAS SINTONIZANDO PERCEPÇÕES E UNIFORMIZANDO A LINGUAGEM

Leia mais

O que se espera de um sistema de administração da produção?

O que se espera de um sistema de administração da produção? O que se espera de um sistema de administração da produção? O que se espera de um sistema de administração da produção? Segundo Corrêa (2001), independente da lógica que utilize, os sistemas da administração

Leia mais

'$($')!$!"& (*+!,-$+& +."*/$& !"#$%!$& DEPS Departamento de Engenharia de Produção PCP Planejamento e Controle da Produção Prof. Dra.

'$($')!$!& (*+!,-$+& +.*/$& !#$%!$& DEPS Departamento de Engenharia de Produção PCP Planejamento e Controle da Produção Prof. Dra. DEPS Departamento de Engenharia de Produção PCP Planejamento e Controle da Produção Prof. Dra. Silene Seibel A variável Estoque Texto base da disciplina PCP da Udesc Introdução No planejamento e controle

Leia mais

Gerenciamento simultâneo de produção e processo

Gerenciamento simultâneo de produção e processo Gerenciamento simultâneo de produção e processo Leonardo Werncke Oenning - Departamento de Engenharia de Materiais UNESC, wo.leo@hotmail.com Leopoldo Pedro Guimarães Filho UNESC, lpg@unesc.net; Dino Gorini

Leia mais

JANAINA EMÍLIA PAVANELLO O USO DE SIMULAÇÃO COMPUTACIONAL PARA PROGRAMAÇÃO E ACIONAMENTO DE FÁBRICA EM PROCESSO DE FUNDIÇÃO: UM ESTUDO DE CASO.

JANAINA EMÍLIA PAVANELLO O USO DE SIMULAÇÃO COMPUTACIONAL PARA PROGRAMAÇÃO E ACIONAMENTO DE FÁBRICA EM PROCESSO DE FUNDIÇÃO: UM ESTUDO DE CASO. JANAINA EMÍLIA PAVANELLO O USO DE SIMULAÇÃO COMPUTACIONAL PARA PROGRAMAÇÃO E ACIONAMENTO DE FÁBRICA EM PROCESSO DE FUNDIÇÃO: UM ESTUDO DE CASO. JOINVILLE 2006 1 UNIVERSIDADE DO ESTADO DE SANTA CATARINA

Leia mais

EA 044 Planejamento e Análise de Sistemas de Produção Introdução

EA 044 Planejamento e Análise de Sistemas de Produção Introdução EA 044 Planejamento e Análise de Sistemas de Produção Introdução ProfFernandoGomide Pesquisa Operacional O que é estudo de como formular e construir modelos matemáticos de decisão problemas de engenharia

Leia mais

Sistemas de Administração da Produção. Sistema produtivo. Sistema produtivo. Estimativas de vendas de longo prazo 24/11/2015

Sistemas de Administração da Produção. Sistema produtivo. Sistema produtivo. Estimativas de vendas de longo prazo 24/11/2015 Sistemas de Administração da Produção Segundo Giannesi & Correia (1993) A sobrevivência e o sucesso das organizações dependem da eficiência com a qual produz seus bens e serviços, sendo os custos determinante

Leia mais

Lean e a Gestão Integrada da Cadeia de Suprimentos

Lean e a Gestão Integrada da Cadeia de Suprimentos JOGO DA CERVEJA Experimento e 2: Abordagem gerencial hierárquica e centralizada Planejamento Integrado de todos os Estágios de Produção e Distribuição Motivação para um novo Experimento Atender à demanda

Leia mais

MRP / MRP II MRP / MRP II

MRP / MRP II MRP / MRP II MRP = Material Requirement Planning (planejamento das necessidades de materiais) Surgiu da necessidade de se planejar o atendimento da demanda dependente (que decorre da independente) Lista de material

Leia mais

Sistemas de programação com capacidade finita no Brasil

Sistemas de programação com capacidade finita no Brasil Artigo 09 Sistemas de programação com capacidade finita no Brasil Este documento faz parte do material que compõe o livro: Planejamento, Programação e Controle da Produção MRP II / ERP: Conceitos, Uso

Leia mais

- Especificações; - Notas de entrega de produção; - Pedidos de Compra.

- Especificações; - Notas de entrega de produção; - Pedidos de Compra. PLANEJAMENTO, PROGRAMAÇÃO E CONTROLE DA PRODUÇÃO. CAPÍTULO 6 Planejamento, Programação e Controle da Produção (PPCP) é uma função técnica e administrativa que tem por objetivo fazer os planos que orientarão

Leia mais

SEJAM BEM VINDOS!!!! 1

SEJAM BEM VINDOS!!!! 1 SEJAM BEM VINDOS!!!! 1 SEJAM BEM VINDOS AO QUARTO SEMESTRE!!! 2 Regras de ouro: Desligue o celular; Evitem ausentar-se da sala Evitem conversas paralelas (sem propósito com o assunto da aula); Dediquem-se

Leia mais

Planejamento, Programação e Controle da Produção

Planejamento, Programação e Controle da Produção Planejamento, Programação e Controle da Produção Aula 01 Os direitos desta obra foram cedidos à Universidade Nove de Julho Este material é parte integrante da disciplina oferecida pela UNINOVE. O acesso

Leia mais

Melhorias adquiridas com a implantação de um software APS no setor de PCP para equipamento de decapagem de bobinas de aço

Melhorias adquiridas com a implantação de um software APS no setor de PCP para equipamento de decapagem de bobinas de aço Melhorias adquiridas com a implantação de um software APS no setor de PCP para equipamento de decapagem de bobinas de aço Meire Aleixo Silvestre dos Reis Faculdade Educacional Araucária - Bacharel em Engenharia

Leia mais

1. Introdução. 1.1. A história do ERP

1. Introdução. 1.1. A história do ERP 1. Introdução Podemos definir os sistemas ERP como sistemas de informação integrados na forma de um pacote de software que tem a finalidade de dar suporte à maioria das operações de uma organização. A

Leia mais

Ementa e Cronograma Programático...

Ementa e Cronograma Programático... Prof. Fabrício Rogério Parrilla Ementa e Cronograma Programático... AULA 01 Estratégia de Operações e Planejamento Agregado AULA 02 Planejamento e Controle de Operações AULA 03 Gestão da Demanda e da Capacidade

Leia mais

Aumento da eficiência na programação do sistema de produção em moinho de trigo

Aumento da eficiência na programação do sistema de produção em moinho de trigo Aumento da eficiência na programação do sistema de produção em moinho de trigo Maico Jeferson de Oliveira (UTFPR) maico@agraria.com.br Kazuo Hatakeyama (UTFPR) hatakeyama@pg.cefetpr.br Luiz Alberto Pilatti

Leia mais

Simulação Computacional de Sistemas, ou simplesmente Simulação

Simulação Computacional de Sistemas, ou simplesmente Simulação Simulação Computacional de Sistemas, ou simplesmente Simulação Utilização de métodos matemáticos & estatísticos em programas computacionais visando imitar o comportamento de algum processo do mundo real.

Leia mais

Centro de Engenharia e Computação. Trabalho de Administração e Organização Empresarial

Centro de Engenharia e Computação. Trabalho de Administração e Organização Empresarial Centro de Engenharia e Computação Trabalho de Administração e Organização Empresarial Petrópolis 2012 Centro de Engenharia e Computação Trabalho de Administração e Organização Empresarial Gestão de Estoque

Leia mais

Objetivo da Aula. Enterprise Resource Planning - ERP. Descrever os sistemas ERP, seus módulos e possíveis aplicações e tendências 23/4/2010

Objetivo da Aula. Enterprise Resource Planning - ERP. Descrever os sistemas ERP, seus módulos e possíveis aplicações e tendências 23/4/2010 Enterprise Resource Planning - ERP Objetivo da Aula Descrever os sistemas ERP, seus módulos e possíveis aplicações e tendências 2 1 Sumário Informação & TI Sistemas Legados ERP Classificação Módulos Medidas

Leia mais

ALGORITMO PARA AUTOMAÇÃO DOS PROCESSOS DE PLANEJAMENTO DA PRODUÇÃO NA ÁREA GRÁFICA JOB SHOP

ALGORITMO PARA AUTOMAÇÃO DOS PROCESSOS DE PLANEJAMENTO DA PRODUÇÃO NA ÁREA GRÁFICA JOB SHOP ALGORITMO PARA AUTOMAÇÃO DOS PROCESSOS DE PLANEJAMENTO DA PRODUÇÃO NA ÁREA GRÁFICA JOB SHOP Hirlandson Ricardo Pedrosa Alexandre Alves Silva Universidade Braz Cubas Engenharia de Computação Jesus Franlin

Leia mais

De onde vieram e para onde vão os sistemas integrados de gestao ERP

De onde vieram e para onde vão os sistemas integrados de gestao ERP Artigo 02 De onde vieram e para onde vão os sistemas integrados de gestao ERP Este documento faz parte do material que compõe o livro: Planejamento, Programação e Controle da Produção MRP II / ERP: Conceitos,

Leia mais

JUST-IN-TIME & KANBAN

JUST-IN-TIME & KANBAN JUST-IN-TIME & KANBAN Prof. Darli Rodrigues Vieira darli@darli.com.br 1 OBJETIVO DA AULA OBJETIVO: EVIDENCIAR O QUE É JUST IN TIME E QUAL É SUA UTILIDADE EM PROJETOS DE OTIMIZAÇÃO DE RECURSOS EM OPERAÇÕES

Leia mais

Programa Nacional de Pós-Doutorado - PNPD/2009 Edital MEC/CAPES e MCT/FINEP

Programa Nacional de Pós-Doutorado - PNPD/2009 Edital MEC/CAPES e MCT/FINEP 1 CENTRO UNIVERSITÁRIO DE ARARAQUARA UNIARA Programa Nacional de Pós-Doutorado - PNPD/2009 Edital MEC/CAPES e MCT/FINEP Tecnologias de Informação para a integração da manufatura, com ênfase à programação

Leia mais

O controle de produção usado por empresas madeireiras de pequeno e médio porte da cidade de Ponta Grossa PR

O controle de produção usado por empresas madeireiras de pequeno e médio porte da cidade de Ponta Grossa PR O controle de produção usado por empresas madeireiras de pequeno e médio porte da cidade de Ponta Grossa PR Marcos Aurélio Zoldan (CEFETPR) mazo@pg.cefetpr.br Drª Magda Lauri Gomes Leite (CEFETPR) magda@pg.cefetpr.br

Leia mais

Conectando a Montagem aos Processos em Lotes através de Sistemas Puxados Básicos

Conectando a Montagem aos Processos em Lotes através de Sistemas Puxados Básicos Conectando a Montagem aos Processos em Lotes através de Sistemas Puxados Básicos Art Smalley Tradução: Diogo Kosaka Sistemas puxados são uma parte fundamental da manufatura lean e freqüentemente são mal

Leia mais

2. Planejamento e Controle de Produção, uma revisão bibliográfica.

2. Planejamento e Controle de Produção, uma revisão bibliográfica. 15 2. Planejamento e Controle de Produção, uma revisão bibliográfica. Toda empresa industrial deve reconhecer a expectativa do cliente e, por meio do planejamento e organização dos seus recursos produtivos,

Leia mais

Universidade Regional de Blumenau

Universidade Regional de Blumenau Universidade Regional de Blumenau Curso de Bacharel em Ciências da Computação PCPTCC - Planejamento e Controle da Produção Protótipo desenvolvido como Trabalho de Conclusão de Curso Acadêmico: Marcelo

Leia mais

Planejamento Agregado Planejamento Agregado.

Planejamento Agregado Planejamento Agregado. ADM II é o processo de balanceamento da produção com a demanda. Visa compatibilizar os recursos produtivos da empresa com a demanda. Normalmente é projetado para horizontes de tempo de 6 a 12 meses. Planejamento

Leia mais

Unidade II GESTÃO DE. Prof. Léo Noronha

Unidade II GESTÃO DE. Prof. Léo Noronha Unidade II GESTÃO DE SUPRIMENTOS E LOGÍSTICA Prof. Léo Noronha Após a Segunda Guerra Mundial: Estados Unidos da América passaram por um longo período de crescimento. Responsáveis pela reconstrução de muitos

Leia mais

MRP Planejamento das Necessidades de Materiais

MRP Planejamento das Necessidades de Materiais MRP Planejamento das Necessidades de Materiais Conceito Planejamento das necessidades de materiais. Utiliza-se dos pedidos em previsões de pedidos que a carteira, assim como empresa acha que irá receber.

Leia mais

Os sistemas que fazem o que outros prometiam

Os sistemas que fazem o que outros prometiam Os sistemas que fazem o que outros prometiam Por Bruno Spadafora Ferreira Introdução Se você é consultor de empresas que lida com sistemas de gestão empresarial, como eu, certamente já observou situação

Leia mais

Balanceamento de linha de montagem com o uso de heurística e simulação: estudo de caso na linha branca

Balanceamento de linha de montagem com o uso de heurística e simulação: estudo de caso na linha branca Balanceamento de linha de montagem com o uso de heurística e simulação: estudo de caso na linha branca Vanessa Carolina Fernandes Farnes (UFSCar) vanessa_farnes@yahoo.com.br Néocles Alves Pereira (UFSCar)

Leia mais

PLANEJAMENTO E CONTROLE DA CAPACIDADE. Eng. Liane Freitas, MsC.

PLANEJAMENTO E CONTROLE DA CAPACIDADE. Eng. Liane Freitas, MsC. PLANEJAMENTO E CONTROLE DA CAPACIDADE Eng. Liane Freitas, MsC. O que será visto neste capítulo? 1 Conceito de capacidade 2 Medição da capacidade 3 Influência do Fluxo na capacidade Efeito do tamanho do

Leia mais

PCP: UTILIZAÇÃO DO MS PROJECT NO AUXÍLIO À PROGRAMAÇÃO DA PRODUÇÃO EM UMA INDÚSTRIA DE CALDEIRARIA.

PCP: UTILIZAÇÃO DO MS PROJECT NO AUXÍLIO À PROGRAMAÇÃO DA PRODUÇÃO EM UMA INDÚSTRIA DE CALDEIRARIA. PCP: UTILIZAÇÃO DO MS PROJECT NO AUXÍLIO À PROGRAMAÇÃO DA PRODUÇÃO EM UMA INDÚSTRIA DE CALDEIRARIA. Everton Carlos Prado (UNIFEG) evertoncarlosprado@hotmail.com Edivaldo jose Moreira (UNIFEG) ediymoreira@hotmail.com

Leia mais

LOGÍSTICA GLOBAL. Sistemas de Logística EDI, MRP e ERP.

LOGÍSTICA GLOBAL. Sistemas de Logística EDI, MRP e ERP. LOGÍSTICA GLOBAL Sistemas de Logística EDI, MRP e ERP. EDI Intercâmbio Eletrônico de Dados Introdução O atual cenário econômico é marcado por: a) intensa competitividade, b) pela necessidade de rápida

Leia mais

UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO E SISTEMAS DANIELE DOS SANTOS CYPRIANO

UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO E SISTEMAS DANIELE DOS SANTOS CYPRIANO 1 UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS DEPARTAMENTO DE ENGENHARIA DE PRODUÇÃO E SISTEMAS DANIELE DOS SANTOS CYPRIANO PROPOSTA DE UM SISTEMA AVANÇADO DE PLANEJAMENTO

Leia mais

Contudo, os diferentes aspectos do planejamento e controle podem ser vistos como a representação da conciliação entre suprimento e demanda.

Contudo, os diferentes aspectos do planejamento e controle podem ser vistos como a representação da conciliação entre suprimento e demanda. Fascículo 7 Planejamento e Controle O projeto físico de uma operação produtiva deve proporcionar recursos capazes de satisfazer as exigências dos consumidores. O planejamento e controle preocupam-se com

Leia mais

VANTAGENS DA UTILIZAÇÃO DE SISTEMAS HÍBRIDOS PARA O PLANEJAMENTO DA PRODUÇÃO

VANTAGENS DA UTILIZAÇÃO DE SISTEMAS HÍBRIDOS PARA O PLANEJAMENTO DA PRODUÇÃO VANTAGENS DA UTILIZAÇÃO DE SISTEMAS HÍBRIDOS PARA O PLANEJAMENTO DA PRODUÇÃO João Carlos Espíndola Ferreira (UFSC) jcarlos@emc.ufsc.br Izabel Cristina Zattar (UFSC)izabelzattar@netvision.com.br Resumo:

Leia mais

1. SISTEMA DE PRODUÇÃO (6) 2. DESPERDÍCIOS DA PRODUÇÃO (8) 3. PLANEJAMENTO E CONTROLE DE ESTOQUES (8) 4. MRP (6) 5. PRODUÇÃO LEAN (12) 6.

1. SISTEMA DE PRODUÇÃO (6) 2. DESPERDÍCIOS DA PRODUÇÃO (8) 3. PLANEJAMENTO E CONTROLE DE ESTOQUES (8) 4. MRP (6) 5. PRODUÇÃO LEAN (12) 6. UNIFEI MBA UNIFEI PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA DE PRODUÇÃO GERÊNCIA DA PRODUÇÃO 1. SISTEMA DE PRODUÇÃO (6) 2. DESPERDÍCIOS DA PRODUÇÃO (8) 3. PLANEJAMENTO E CONTROLE DE ESTOQUES (8) 4. MRP (6)

Leia mais

Sistema de Administração da Produção

Sistema de Administração da Produção Sistema de Administração da Produção (Extraído do livro Planejamento, Programação e Controle da Produção Enrique Correa e Irineu Gianesi e Mauro Caon Ed Atlas, 2001) 1. Definição São sistemas de Informação

Leia mais

Unidade IV ADMINISTRAÇÃO DE. Profa. Lérida Malagueta

Unidade IV ADMINISTRAÇÃO DE. Profa. Lérida Malagueta Unidade IV ADMINISTRAÇÃO DE PRODUÇÃO E OPERAÇÕES Profa. Lérida Malagueta Planejamento e controle da produção O PCP é o setor responsável por: Definir quanto e quando comprar Como fabricar ou montar cada

Leia mais

Aplicações de Otimização em Processos Industriais

Aplicações de Otimização em Processos Industriais Aplicações de Otimização em Processos Industriais Maria Cristina N. Gramani gramani@mackenzie.com.br Departamento de Engenharia de Produção Escola de Engenharia Universidade Presbiteriana Mackenzie Organização

Leia mais

AUTOMAÇÃO APLICADA À MANUFATURA

AUTOMAÇÃO APLICADA À MANUFATURA AUTOMAÇÃO APLICADA À MANUFATURA Automação e mão de obra Patrícia Lins de Paula 16/04/2012 62 AUTOMAÇÃO APLICADA À MANUFATURA 2. Automação e mão de obra 2.1 Setores e operações de produção 2.2 Instalações

Leia mais

PLANEJAMENTO E IMPLANTAÇÕES DE UM ARRANJO FÍSICO (LAYOUT) RESUMO

PLANEJAMENTO E IMPLANTAÇÕES DE UM ARRANJO FÍSICO (LAYOUT) RESUMO PLANEJAMENTO E IMPLANTAÇÕES DE UM ARRANJO FÍSICO (LAYOUT) RESUMO Edilaine Cristina Duarte de Souza Flávia Galdino Silva Com a concorrência acirrada nos dias de hoje, com grandes mudanças a todo tempo,

Leia mais

ENTERPRISE RESOURCE PLANNING (ERP)

ENTERPRISE RESOURCE PLANNING (ERP) ENTERPRISE RESOURCE PLANNING (ERP) Um sistema ERP Enterprise Resource Planning (Planejamento dos Recursos da Empresa) é um pacote de software que tem por finalidade organizar, padronizar e integrar as

Leia mais

Escalonamento de Ordens de Produção Utilizando Algoritmos Genéticos

Escalonamento de Ordens de Produção Utilizando Algoritmos Genéticos Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais Bacharelado em Ciências da Computação Estágio Supervisionado Escalonamento de Ordens de Produção Utilizando Algoritmos Genéticos Acadêmico:

Leia mais