Anda di halaman 1dari 81

BALANCEAMENTO DE LINHAS

DE PRODUO USANDO
ALGORITMOS GENTICOS

Ricardo Guedes Pimenta

Mestrado em Engenharia Electrotcnica e de Computadores


rea de Automao e Sistemas
Departamento de Engenharia Electrotcnica
Instituto Superior de Engenharia do Porto
2011

Este relatrio satisfaz, parcialmente, os requisitos que constam da Ficha de Disciplina de


Tese/Dissertao, do 2 ano, do Mestrado em Engenharia Electrotcnica e de
Computadores

Candidato: Ricardo Guedes Pimenta, N 1050799, 1050799@isep.ipp.pt


Orientao cientfica: Manuel Santos Silva, mss@isep.ipp.pt
Co-Orientao cientfica: Ceclia Reis, cmr@isep.ipp.pt

Mestrado em Engenharia Electrotcnica e de Computadores


rea de Automao e Sistemas
Departamento de Engenharia Electrotcnica
Instituto Superior de Engenharia do Porto
21 de Novembro de 2011

Agradecimentos
Gostaria de expressar a minha sincera gratido s seguintes pessoas que contriburam de
forma directa ou indirecta para a realizao deste trabalho:

Professores Manuel Silva e Ceclia Reis pela sua disponibilidade, orientao e


dedicao.

Um agradecimento especial aos meus pais, que sem o seu apoio e esforo, este
trabalho nunca teria sido realizado.

iii

Resumo
Aquando da definio de um layout por fluxo de produto, ou linha de produo,
necessrio proceder-se melhor seleco de combinaes de tarefas a serem executadas
em cada estao / posto de trabalho para que o trabalho seja executado numa sequncia
exequvel e sejam necessrias quantidades de tempo aproximadamente iguais em cada
estao / posto de trabalho. Este processo chamado de balanceamento da linha de
produo.
Verifica-se que as estaes de trabalho e equipamentos podem ser combinados de muitas
maneiras diferentes; da que a necessidade de efectuar o balanceamento das linhas de
produo implique a distribuio de actividades sequenciais por postos de trabalho de
modo a permitir uma elevada utilizao de trabalho e de equipamentos e a minimizar o
tempo de vazio. Os problemas de balanceamento de linhas so tipicamente problemas
complexos de tratar, devido ao elevado nmero de combinaes possveis. Entre os
mtodos utilizados para resolver estes problemas encontram-se mtodos de tentativa e erro,
mtodos heursticos, mtodos computacionais de avaliao de diferentes opes at se
encontrar uma boa soluo e mtodos de optimizao.
O objectivo deste trabalho passou pelo desenvolvimento de uma ferramenta computacional
para efectuar o balanceamento de linhas de produo recorrendo a algoritmos genticos.
Foi desenvolvida uma aplicao que implementa dois algoritmos genticos, um primeiro
que obtm solues para o problema e um segundo que optimiza essas solues, associada
a uma interface grfica em C# que permite a insero do problema e a visualizao de
resultados. Obtiveram-se resultados exequveis demonstrando vantagens em relao aos
mtodos heursticos, pois possvel obter-se mais do que uma soluo. Alm disso, para
problemas complexos torna-se mais prtico o uso da aplicao desenvolvida. No entanto,
esta aplicao permite no mximo seis precedncias por cada operao e resultados com o
mximo de nove estaes de trabalho.
Palavras-Chave

Linhas de produo, balanceamento de linhas de produo, mtodos heursticos,


algoritmos genticos.

vi

Abstract
When defining a layout for product flow, or production line, it is necessary to select the
best combination of tasks to be performed at each workstation, so that the work is
performed in a feasible sequence and equal amounts of time are needed at each
workstation. This process is called assembly line balancing.
It is verified that the workstations and equipment can be combined in many different ways.
Therefore, the need for balancing of assembly lines involves the distribution of sequential
activities for jobs in order to allow a high utilization of labor and equipment and minimize
the idle time. Line balancing problems are typically complex to treat due to the high
number of possible combinations, and among the methods used to solve these problems it
is possible to find trial and error methods, heuristics, computational methods for evaluating
different options to find a good solution and optimization methods.
The aim of this work was the development of a computational tool to perform the
balancing of production lines using genetic algorithms. Following this idea, it was
developed an application that implements two genetic algorithms (the first one obtains
solutions to the problem and the second optimizes those solutions), associated with the
development of a graphical interface in C # for the input of the problem data and
visualization of results. Achieved results demonstrate advantages over heuristic methods as
it is possible to obtain more than one solution. Moreover, for complex problems it is more
practical to use the developed application. However, this application allows a maximum of
six precedence relations for each operation and results with a maximum of nine
workstations.
Keywords
Assembly lines, assembly line balancing, heuristic methods, genetic algorithms.

vii

ndice
AGRADECIMENTOS .................................................................................................................................. III
RESUMO .........................................................................................................................................................V
ABSTRACT ................................................................................................................................................. VII
NDICE .......................................................................................................................................................... IX
NDICE DE FIGURAS ................................................................................................................................. XI
NDICE DE TABELAS ............................................................................................................................. XIII
ACRNIMOS............................................................................................................................................. XIV
1.

2.

INTRODUO ...................................................................................................................................... 1
1.1.

CONTEXTUALIZAO ....................................................................................................................... 2

1.2.

OBJECTIVOS ...................................................................................................................................... 2

1.3.

CALENDARIZAO ........................................................................................................................... 3

1.4.

ORGANIZAO DO RELATRIO ......................................................................................................... 4

LAYOUTS FABRIS ................................................................................................................................. 5


2.1.

3.

2.1.1.

Layout de posio fixa............................................................................................................. 7

2.1.2.

Layout de processos intermitentes .......................................................................................... 8

2.1.3.

Layout em linha ....................................................................................................................... 8

2.1.4.

Layout em fluxo contnuo ...................................................................................................... 10

BALANCEAMENTO DE LINHAS DE PRODUO ...................................................................... 11


3.1.

DEFINIES E CONCEITOS DO DE BALANCEAMENTO DE LINHAS DE PRODUO .............................. 12

3.2.

OBJECTIVOS DO BALANCEAMENTO DAS LINHAS ............................................................................. 13

3.3.

MTODOS DE BALANCEAMENTO DE LINHAS DE PRODUO ............................................................ 13

3.3.1.

Mtodos heursticos .............................................................................................................. 14

3.3.1.1.

Heurstica de helgeson-birnie ............................................................................................... 14

3.3.1.2.

Heurstica de kilbridge e wester ............................................................................................ 15

3.3.2.

Aplicaes de software para balanceamento de linhas......................................................... 15

3.3.2.1.

ProBalance............................................................................................................................ 16

3.3.2.2.

AviX Balance ...................................................................................................................... 18

3.4.

4.

LAYOUT ............................................................................................................................................. 6

PROJECTOS DE BALANCEAMENTO DE LINHAS USANDO AG ............................................................ 20

3.4.1.

Algoritmo gentico para o balanceamento de linhas de produo ....................................... 20

3.4.2.

Balanceamento de linhas de produo de modelo misto com algoritmo gentico hbrido ... 21

ALGORITMOS GENTICOS ............................................................................................................ 23

ix

4.1.

DEFINIO E FUNDAMENTOS BIOLGICOS DOS ALGORITMOS GENTICOS ...................................... 23

4.2.

ESPAO DE SOLUES ..................................................................................................................... 24

4.3.

ESTRUTURA DE UM ALGORITMO GENTICO .................................................................................... 25

4.4.

MECANISMOS DE LIGAO DE UM ALGORITMO GENTICO AO PROBLEMA ...................................... 26

4.4.1.

Codificao do problema....................................................................................................... 26

4.4.1.1.

Codificao binria ............................................................................................................... 27

4.4.1.2.

Codificao por permutao ................................................................................................. 27

4.4.2.

Funo de avaliao .............................................................................................................. 27

4.5.

4.5.1.

Cruzamento ............................................................................................................................ 28

4.5.2.

Mutao ................................................................................................................................. 28

4.5.3.

Seleco ................................................................................................................................. 29

4.6.
5.

ALGORITMO GENTICO DESENVOLVIDO.......................................................................................... 33

5.1.1.

Estrutura do Algoritmo Gentico desenvolvido ..................................................................... 34

5.1.2.

Codificao ............................................................................................................................ 35

5.1.3.

Gerao da populao inicial ............................................................................................... 35

5.1.4.

Seleco ................................................................................................................................. 37

5.1.5.

Funo de avaliao .............................................................................................................. 37

5.1.6.

Cruzamento e mutao .......................................................................................................... 38

5.1.7.

Critrio de paragem............................................................................................................... 40

5.2.

ALGORITMO GENTICO DE MELHORAMENTO DE RESULTADOS ........................................................ 41

5.2.1.

Estrutura geral do algoritmo ................................................................................................. 41

5.2.2.

Seleco ................................................................................................................................. 42

5.2.3.

Mutao ................................................................................................................................. 42

5.2.4.

Funo de avaliao .............................................................................................................. 42

5.2.5.

Critrio de paragem............................................................................................................... 42

5.3.

7.

CRITRIOS DE PARAGEM.................................................................................................................. 32

ARQUITECTURA DA APLICAO A IMPLEMENTAR ............................................................. 33


5.1.

6.

OPERADORES DO ALGORITMO GENTICO ....................................................................................... 28

INTERFACE DESENVOLVIDA ............................................................................................................. 43

TESTES DA APLICAO DESENVOLVIDA ................................................................................. 49


6.1.

PRIMEIRO TESTE ............................................................................................................................. 49

6.2.

SEGUNDO TESTE .............................................................................................................................. 52

6.3.

TERCEIRO TESTE.............................................................................................................................. 55

6.4.

QUARTO TESTE ................................................................................................................................ 57

CONCLUSES E PERSPECTIVAS DE DESENVOLVIMENTOS FUTUROS ............................ 63

REFERNCIAS DOCUMENTAIS .............................................................................................................. 65

ndice de Figuras
Figura 1

Exemplo de linhas de produo ou montagem ............................................................... 5

Figura 2

Estaleiro de construo de navios. ................................................................................. 7

Figura 3

Linha de montagem com layout em linha ...................................................................... 9

Figura 4

Exemplo de um layout de fluxo contnuo .................................................................... 10

Figura 5

Interface do software ProBalance................................................................................. 16

Figura 6

Grfico de precedncias ............................................................................................... 17

Figura 7

Grfico de balanceamento ............................................................................................ 17

Figura 8

Interface da aplicao AviX Balance ........................................................................ 19

Figura 9

Opo do grfico do balanceamento ............................................................................ 19

Figura 10

Relatrio de balanceamento ......................................................................................... 20

Figura 11

Exemplo de espao de solues ................................................................................... 25

Figura 12

Exemplo da operao de cruzamento de dois cromossomas ........................................ 28

Figura 13

Exemplo da realizao de uma mutao de cromossomas ........................................... 29

Figura 14 Probabilidade de seleco dos cromossomas utilizando o mtodo de seleco aleatria


por roleta .................................................................................................................................. 30
Figura 15 Probabilidade de seleco antes de classificao (esquerda) e probabilidade depois da
classificao (direita)................................................................................................................ 31
Figura 16

Fluxograma do Algoritmo Gentico desenvolvido ...................................................... 34

Figura 17

Estrutura do algoritmo de melhoramento ..................................................................... 41

Figura 18

Interface grfica da aplicao ....................................................................................... 43

Figura 19

Exemplo de introduo de dados.................................................................................. 44

Figura 20

Seleco de tipo de problema ....................................................................................... 44

Figura 21

Seleco do nmero de solues .................................................................................. 45

Figura 22

Interface grfica da aplicao depois de executado o primeiro AG ............................. 46

Figura 23

Janela principal da interface grfica com mensagem de aviso ..................................... 46

Figura 24

Menu para correco de dados do problema ................................................................ 47

Figura 25

Janela de anlise de resultados ..................................................................................... 47

Figura 26

Anlise dos resultados do segundo algoritmo .............................................................. 48

Figura 27

Soluo obtida para o problema 1 ................................................................................ 51

Figura 28

Soluo obtida para o segundo problema de teste da aplicao ................................... 54

Figura 29

Soluo obtida para o terceiro problema. ..................................................................... 56

Figura 30

Janela principal depois do primeiro Algoritmo executado no quarto teste .................. 59

Figura 31

Anlise de um cromossoma da populao do quarto teste ........................................... 60

Figura 32

Soluo obtida para o quarto teste................................................................................ 60

xi

ndice de Tabelas
Tabela 1

Calendarizao do trabalho ............................................................................................ 3

Tabela 2

Cromossomas exemplo com aptido e probalidade de seleco .................................. 30

Tabela 3

Populao exemplo de cromossomas, com respectiva aptido e classificao ............ 31

Tabela 4

Exemplo de codificao das tarefas. ............................................................................ 35

Tabela 5

Processo executado para baralhar o cromossoma ........................................................ 37

Tabela 6

Exemplo de aplicao do primeiro mtodo de mutao testado. ................................. 39

Tabela 7

Exemplo de aplicao do segundo mtodo de mutao testado. .................................. 39

Tabela 8

Exemplo de aplicao do terceiro mtodo de mutao testado. ................................... 39

Tabela 9

Tabela de operaes, tempos de execuo e precedncia do problema ....................... 50

Tabela 10

Tabela de comparao de resultados para o problema 1 .............................................. 52

Tabela 11

Tabela de operaes, tempos de execuo e precedncia do problema 2 .................... 52

Tabela 12

Tabela de comparao de resultados para o problema 2 .............................................. 54

Tabela 13

Tabela de operaes, tempos de execuo e precedncia do problema 3 .................... 55

Tabela 14

Tabela de comparao de resultados para o problema 3 .............................................. 57

Tabela 15

Tabela de operaes, tempos de execuo e precedncia do problema 4 .................... 58

Tabela 16

Tabela de comparao de resultados para o problema 4 .............................................. 61

xiii

Acrnimos
AG

Algoritmo Gentico

ISEP Instituto Superior de Engenharia do Porto


DEE

Departamento de Engenharia Electrotcnica

BL

Balanceamento de Linha

xiv

1. INTRODUO
O primeiro conceito de linha de produo foi apresentado em 1901 por Ransom E. Olds
[1]. Este apresenta um conceito bsico da linha de produo que lhe permite iniciar a
indstria automvel em Detroit. Atravs deste conceito, Olds consegue quadruplicar a
produo automvel na sua fbrica, passando de 425 carros em 1901 para 2500 carros em
1902. O conceito de linhas de produo que conhecido nos dias de hoje foi apresentado
por Henry Ford em 1908, na produo do famoso Modelo T da Ford. Esta linha de
produo foi a primeira a apresentar um sistema de transporte que permitia ao produto
(neste caso o carro) circular pelas diferentes estaes de montagem chegando ao fim da
linha no estado final. Isto permitiu que a Ford se tornasse no maior produtor automvel do
mundo em 1913.
Hoje em dia, devido ao aumento da concorrncia no mercado, o problema de
balanceamento de linhas, especialmente o balanceamento de linhas de produo, tem um
papel importante para as indstrias obterem alta qualidade nos produtos e o menor custo
possvel.
O balanceamento de uma linha de produo um mtodo de anlise que tem como
objectivo distribuir de igual forma o trabalho a ser executado pelas diferentes estaes de
trabalho ou postos de trabalho de tal forma que o nmero de trabalhadores ou estaes de
trabalho na linha de produo sejam minimizados e rentabilizados de forma equiparada.

1.1.

CONTEXTUALIZAO

Este trabalho surgiu no seguimento da proposta apresentada pelos docentes Manuel Silva e
Ceclia Reis, a qual envolvia a interligao de duas reas bastante interessantes,
nomeadamente linhas de produo e algoritmos genticos (AG). Este tema cativou o meu
interesse, permitindo-me explorar e aprofundar conhecimentos em duas reas distintas.
Sendo as linhas de produo parte essencial das indstrias actuais e o problema de
balanceamento de linhas de produo um problema que surge no dia-a-dia, a resoluo
rpida e eficaz deste problema torna-se fundamental. Props-se ento, com este projecto, o
desenvolvimento de uma aplicao baseada numa abordagem actual que produza
resultados rpidos e com elevada eficincia.

1.2.

OBJECTIVOS

O objectivo deste projecto passava pelo desenvolvimento de uma aplicao computacional,


tendo por base um algoritmo gentico, que permitisse a resoluo de problemas de
balanceamento de linhas.
Esta aplicao deveria permitir a introduo dos dados dos problemas a solucionar de
forma fcil e amigvel para o utilizador, resolver o problema do balanceamento da linha de
produo recorrendo a um algoritmo gentico e permitir ao utilizador analisar os resultados
obtidos, mais uma vez, de uma forma fcil e amigvel.
Dentro do possvel, a aplicao deveria gerar uma soluo (ou um conjunto de solues)
exequvel e com uma eficincia igual ou superior s solues que podem ser encontradas
recorrendo aos mtodos heursticos.
Para atingir este objectivo global, foi necessrio:

Uma abordagem profunda dos mtodos heursticos em todos os seus aspectos;

Desenvolvimento do conhecimento de programao C#;

Aprendizagem e estudo dos algoritmos genticos.

1.3.

CALENDARIZAO

Neste tpico apresentada a calendarizao da elaborao deste projecto, apresentando as


vrias fases do mesmo. Na Tabela 1 so apresentadas as vrias fases do trabalho, bem
como o tempo decorrido em cada fase do mesmo.
Tabela 1 Calendarizao do trabalho

2010

2011

Outubro Novembro Dezembro Janeiro

Fevereiro

Marco

Abril

Maio

Junho

Julho Agosto Setembro

1
2
3
4
5
6
7
8
X

9
10

De seguida apresentada a legenda da tabela anteriormente apresentada, onde se descreve


a fase do trabalho correspondente ao nmero apresentado na tabela.
12345678910 -

ESTUDO DO ESTADO DA ARTE


ESTUDO DOS PROBLEMAS DE BALANCEAMENTO DE LINHAS
DESENVOLVIMENTO DO ALGORITMO GENTICO
MELHORIAS AO ALGORITMO GENTICO
TESTES AO ALGORITMO GENTICO
DESENVOLVIMENTO DA INTERFACE GRFICA
TESTES DA APLICAO DESENVOLVIDA
PREPARAO DE ARTIGO PARA CONFERNCIA
APRESENTAO DE ARTIGO NA CONFERNCIA
REDACO DA TESE/DISSERTAO

1.4.

ORGANIZAO DO RELATRIO

Este relatrio encontra-se estruturado de acordo com os captulos seguintes:

Captulo 1: neste primeiro captulo, efectua-se uma introduo ao trabalho


desenvolvido;

Captulo 2: aqui so apresentados os conceitos de linhas de produo e os seus


possveis diferentes layouts;

Captulo 3: o terceiro captulo introduz o balanceamento de linhas de produo e os


diferentes mtodos para efectuar este processo;

Captulo 4: no quarto captulo so apresentados os Algoritmos Genticos;

Captulo 5: introduzida a arquitectura implementada, descrevendo-se o algoritmo


desenvolvido e a interface grfica implementada;

Captulo 6: neste captulo so apresentados alguns dos testes efectuados aplicao


desenvolvida e os principais resultados obtidos;

No Captulo 7 so apresentadas as concluses, sendo recapitulados os principais


resultados obtidos e indicadas perspectivas para desenvolvimentos futuros.

2. LAYOUTS FABRIS
Uma linha de produo consiste num grupo de postos de trabalho, cuja posio fixa e em
que a sequncia imposta pela lgica das sucessivas operaes a realizar e descritas na
gama operatria. Um posto de trabalho tem uma determinada rea fsica e pode ser
composto por um nico operador, ou por vrios operadores, realizando operaes manuais
ou assistidas por ferramentas ou maquinaria ou ainda uma mquina autnoma, como um
rob, que executam um determinado tipo de operaes.
As imagens apresentadas na Figura 1 representam exemplos de linhas de produo ou
montagem.

Figura 1 Exemplo de linhas de produo ou montagem

O objectivo da anlise do balanceamento das linhas de produo determinar o nmero de


estaes de trabalho necessrias e quais as tarefas ou operaes associadas a cada uma
delas. Atravs desta anlise possvel obter a capacidade pretendida, como o nmero
mnimo de operadores, mquinas e ferramentas, ou, por outro lado, consegue-se aumentar
a capacidade de produo com os recursos disponveis.
Neste captulo so apresentados diversos layouts de linhas de produo, sendo apresentada
uma breve descrio das suas vantagens e desvantagens.

2.1.

LAYOUT

O layout uma das reas de estratgia que determinam a eficincia das operaes [2]. O
objectivo da estratgia do layout o de desenvolver uma economia de layout que atinja os
seguintes requisitos:
1. Projecto de produto e volume (estratgia de produto);
2. Equipamentos de processo e capacidade (estratgia de processo);
3. Qualidade de vida no trabalho (estratgia de recursos humanos);
4. Edifcio e restries do terreno (estratgia de localizao).
O layout especifica o arranjo dos processos (tais como soldadura, fresagem e pintura), o
equipamento relacionado e reas de trabalho, incluindo servio de clientes e armazns. Um
layout eficiente facilita o fluxo de material e pessoal dentro e entre reas de trabalho. O
objectivo da administrao arranjar o sistema (definir o layout) para que o mesmo esteja
operacional no mximo de eficincia e eficcia. Decises de layout incluem o melhor
posicionamento de mquinas (configurao de produo), escritrios e secretrias
(configurao de escritrios) ou centros de servios (por exemplo, em configuraes de
hospitais) [2, 3].
Para atingir os objectivos desses layouts, foram desenvolvidas algumas estratgias. Dentro
dessas estratgias so discutidas as seguintes:
1. Layout de posio fixa;
2. Layouts de processos intermitentes;

3. Layouts em linha;
4. Layouts em fluxo contnuo.
2.1.1.

LAYOUT DE POSIO FIXA

Um layout de posio fixa um layout no qual o produto se mantm estacionrio e os


operrios e os equipamentos so deslocados para a rea de trabalho, sendo um dos layouts
mais bsicos. Exemplos tpicos deste tipo de layouts podem ser encontrados na
construo de navios, auto-estradas, pontes e casas. Neste caso, os trabalhadores e os
materiais so colocados no local onde vai ser realizado o trabalho [4]. Na Figura 2
apresentado um exemplo de um estaleiro de construo naval.

Figura 2 Estaleiro de construo de navios.

Neste tipo de layout os custos de material so normalmente muito grandes. Tenta-se


colocar os materiais mais usados perto do local de construo/produo, sendo que os
materiais que se usam menos so colocados mais longe. Outro factor importante na
colocao de materiais a sua precedncia temporal. Este factor particularmente
importante sempre que o espao limitado [4].
De entre as principais vantagens deste tipo de layout, destaca-se o facto de ser possvel
efectuar um melhor planeamento e controlo do trabalho, dado que tudo est orientado para
um nico objectivo.

Por outro lado, este tipo de layout apresenta como principais desvantagens as seguintes:

Os custos de deslocao de pessoal especializado podem ser elevados;

Falta de estruturas de apoio, tais como energia elctrica e gua;

Utilizao de equipamento muito caro, que no totalmente aproveitado.

2.1.2.

LAYOUT DE PROCESSOS INTERMITENTES

Este tipo de layout permite manusear simultaneamente uma grande variedade de produtos
ou servios. Na verdade, mais eficaz quando se encontra aplicado ao fabrico de diferentes
produtos que tm diferentes requisitos ou quando se trata de clientes que tm diferentes
necessidades. Neste ambiente cada produto, ou cada pequeno grupo de produtos, tem uma
sequncia diferente de operaes. Um produto ou uma pequena encomenda produzida
movendo o produto de um departamento para outro, numa sequncia necessria para o
produto em questo.
Uma grande vantagem deste tipo de layout a flexibilidade nos equipamentos e na
atribuio de tarefas aos operrios. Uma avaria numa mquina, por exemplo, no
interrompe todo o processo de fabrico, pois o trabalho pode ser deslocado para outra
mquina no mesmo, ou noutro, departamento.
As desvantagens deste layout advm do uso geral dos equipamentos. As ordens de fabrico
demoram mais tempo para se deslocar durante o processo, devido s dificuldades de
agendamento, preparao dos equipamentos e manuseamento de materiais, levando a
custos maiores. Adicionalmente, os operrios necessitam de uma formao mais elevada e
os inventrios de estoques em processamento so mais elevados devido a grandes
desequilbrios no processo de produo. Tambm a maior habilidade dos operrios requer
maiores nveis de treino e experincia [2, 3].
2.1.3.

LAYOUT EM LINHA

Sendo este projecto desenvolvido para linhas de produo com layout em linha, so ento
apresentadas as definies e conceitos deste tipo de implantao especificando as
vantagens, assim como as desvantagens, deste layout para a produo.

Os layouts de linhas de produo so obtidos juntamente com as pessoas e o equipamento,


de acordo com uma sequncia pr-definida de operaes a realizar num produto. Ao layout
em linha costuma-se chamar linha de produo ou linha de montagem, porque
normalmente so utilizados transportadores automticos (geralmente, mas nem sempre,
com a forma de uma linha recta) que minimizam o transporte de material entre os postos de
trabalho. Os layouts em linha so utilizados, por exemplo, na montagem de automveis,
nas fbricas de produo de produtos alimentares, etc.[4]. Na Figura 3 possvel
visualizar-se um destes exemplos.

Figura 3 Linha de montagem com layout em linha

Quando se define o layout para uma linha no se altera a direco do fluxo do produto. No
entanto, alteram-se as tarefas destinadas aos operrios individuais alterando por
consequncia a eficincia da linha.
Este tipo de implantao das operaes produtivas apresenta as caractersticas principais
que se enumeram de seguida. Em termos de vantagens, so as seguintes:

Resultados muito eficientes;

Menores custos de manipulao de materiais;

Operaes muito simplificadas, que permitem a utilizao de mo-de-obra pouco


qualificada (barata);

Pequenos estoques intermdios;

Simplificao do controlo da produo.

Quanto s principais desvantagens, elas so as seguintes:

Pouca flexibilidade;

Efeitos colaterais graves em termos de aborrecimento dos operrios (devido


monotonia associada repetio das mesmas operaes) e de absentismo
(tendncia de mudana de emprego);

Elevada dependncia entre diversas operaes (uma mquina que deixe de


funcionar, pode comprometer a produo);

2.1.4.

muito importante que a linha esteja bem balanceada.


LAYOUT EM FLUXO CONTNUO

Os layouts em fluxo contnuo, so utilizados maioritariamente na indstria do processo, tal


como a indstria dos cimentos, a produo de produtos qumicos e a produo de
electricidade. Neste caso, as fbricas representam um elevado investimento de capital,
dado que so altamente automatizadas e projectadas de modo a funcionarem como uma
unidade. Nestas situaes o layout tem directamente a ver com o processo e est ligado
estrutura bsica da fbrica.[4] Na Figura 4 possvel ver um exemplo de uma construo
(uma barragem) cuja produo um exemplo deste tipo de layout.

Figura 4 Exemplo de um layout de fluxo contnuo

10

3. BALANCEAMENTO DE
LINHAS DE PRODUO
Uma linha de produo constituda por uma srie de estaes de trabalho, cuja posio
fixa e cuja sequncia ditada pela lgica das sucessivas operaes a realizar e descritas na
gama operatria. Cada estao de trabalho pode ser constituda por um nico operador ou
por vrios operadores realizando operaes manuais eventualmente assistidas por
ferramentas ou pequenos equipamentos.
importante a existncia de um fluxo contnuo de materiais na linha de produo. Para
que esse fluxo contnuo seja alcanado indispensvel que haja tempos de operao
semelhantes nas diferentes estaes de trabalho. Este balanceamento das operaes dentro
do tempo disponvel, de acordo com a taxa de produo desejada, o principal problema
do balanceamento de linhas de produo.
Neste captulo apresentado o balanceamento de linhas de produo, introduzida a sua
definio e objectivos, apresentados os diferentes mtodos existentes para a sua realizao
e apresentadas (a ttulo de exemplo) duas aplicaes informticas que permitem o
balanceamento de linhas.

11

3.1.

DEFINIES E CONCEITOS DO DE BALANCEAMENTO DE LINHAS DE


PRODUO

Pode-se definir balanceamento de uma linha como sendo um mtodo para melhorar a taxa
de transferncia das linhas de produo, reduzindo os requisitos de mo-de-obra e os
custos associados. Alternativamente, o balanceamento de linhas de produo um
problema de distribuio de operaes pelas diferentes estaes de trabalho ao longo da
linha de produo, de maneira a que a distribuio de operaes seja ptima em algum
sentido.
Numa linha de produo constituda por um grupo de operaes tem-se:

Tempo total necessrio para a produo de uma pea, que corresponde ao


somatrio dos tempos de todas as operaes, como se pode ver na expresso
(1).

 

(1)

Tempo de ciclo, que consiste no tempo entre a sada de peas consecutivas,


corresponde ainda ao mximo tempo necessrio em cada estao de
trabalho. A equao 2 corresponde equao para o clculo do tempo de
ciclo terico ou planeado (tambm conhecido por Takt time), que poder ser
diferente do tempo de ciclo efectivo.

 

 =
=

      


        

(2)

Nmero mnimo de estaes necessrias, o valor obtido pela aplicao da


equao (3), que sempre arredondado para o valor inteiro imediatamente
superior.
 =

(3)

12

Eficincia da soluo adoptada:


=





(4)

Tempo total de paragem de uma linha ou folga:

 =   

(5)

Considerando:
n

- Nmero de estaes de trabalho;

- Tempo de ciclo para a linha de produo;

- Tempo necessrio para completar a tarefa i da linha de produo;

- Nmero total de operaes a serem executadas na linha de produo.

3.2.

OBJECTIVOS DO BALANCEAMENTO DAS LINHAS

Por norma, o objectivo do balanceamento permitir (na medida do possvel) um fluxo de


materiais rpido e uniforme atravs da linha de produo e, ao mesmo tempo, obter a
mxima utilizao do potencial humano, mxima utilizao de mquinas, equipamentos e
ferramentas e um dispndio mnimo de material ou tempo de processo.
Portanto, o balanceamento usado para obter os seguintes resultados na linha de produo:

3.3.

Minimizar o nmero de estaes de trabalho;

Minimizar o tempo de ciclo.

MTODOS DE BALANCEAMENTO DE LINHAS DE PRODUO

Existem vrios mtodos para proceder ao balanceamento de uma linha de produo, dos
quais se destacam os seguintes:

13

Tentativa e erro;

Heursticos, significando que se baseiam na lgica, no conhecimento;

Mtodos computacionais que avaliam diferentes opes at encontrarem a melhor


soluo;

Mtodos de optimizao, baseando-se em programao linear e/ou programao


dinmica;

Computao evolutiva nomeadamente algoritmos genticos.

Nenhum destes mtodos garante um balanceamento ptimo, mas alguns deles retornam
solues boas e viveis que se aproximam, em maior ou menor grau, da soluo ptima.
3.3.1.

MTODOS HEURSTICOS

Como a prpria palavra indica, heurstica consiste em descobrir e inventar autonomamente


sobre determinada tarefa. Ora, no contexto deste trabalho, as heursticas fornecem mtodos
que fazem uso do senso comum e da lgica para obter boas aproximaes soluo de
problemas de balanceamento de linhas de produo.
Nesta subseco so descritos dois mtodos heursticos atravs dos quais o problema em
questo neste trabalho resolvido analiticamente, para posterior comparao com os
resultados obtidos atravs do Algoritmo Gentico desenvolvido.
3.3.1.1.

HEURSTICA DE HELGESON-BIRNIE

O primeiro mtodo heurstico que se considera, conhecido como mtodo de HelgesonBirnie, sendo uma das heursticas mais simples de implementar. Esta tem em considerao
o tempo de ciclo, o tempo de cada operao e as relaes de precedncia entre operaes.
Conforme o tempo de operao, so atribudas s estaes de trabalho as operaes por
ordem decrescente deste tempo, ou seja, as tarefas mais demoradas so efectuadas nas
primeiras estaes, garantindo o cumprimento das relaes de precedncia entre as
operaes. O somatrio do tempo ocupado pelas tarefas em cada estao no pode
ultrapassar o tempo de ciclo, pois impossibilitaria que se cumprisse o tempo de ciclo
sada da linha. Este mtodo pode ser aplicado em problemas de pouca complexidade e
onde se respeitem as precedncias.

14

Em resumo, as etapas para aplicar esta heurstica so as seguintes:

Ordenar as operaes por ordem decrescente de tempo de operao;

Atribuir operaes a uma estao, at perfazer o tempo de ciclo, respeitando as


precedncias.
3.3.1.2.

HEURSTICA DE KILBRIDGE E WESTER

O mtodo heurstico conhecido como mtodo Kilbridge e Wester tem semelhanas com a
heurstica anterior. A principal diferena que em vez de se atribuir tanta importncia ao
tempo de cada operao esta foca-se mais nas relaes de precedncia entre estaes. Em
concordncia com o diagrama de precedncias, distribuem-se as operaes em colunas,
sendo que na primeira coluna se colocam as operaes sem precedncias, na segunda as
operaes com precedncias relativamente s operaes colocadas na primeira coluna e
assim sucessivamente. Posteriormente as operaes so afectas s estaes de trabalho,
comeando pelas operaes que se encontram na primeira coluna, depois na segunda, e
assim sucessivamente. Mais uma vez, o somatrio do tempo ocupado pelas tarefas em cada
estao no pode ultrapassar o tempo de ciclo.
As etapas a cumprir para aplicar esta heurstica so, resumidamente, as seguintes:

Construir um diagrama de precedncias de modo a que operaes com idntica


precedncia sejam colocadas verticalmente em colunas;

Listar os elementos seguindo uma ordem crescente de colunas e listar tambm os


tempos de operao e o somatrio dos tempos de operao de cada coluna;

Atribuir elementos a estaes comeando pelas operaes das colunas de ordem


inferior;

Repetir este processo at atingir o tempo de ciclo.

3.3.2.

APLICAES DE SOFTWARE PARA BALANCEAMENTO DE LINHAS

Existem vrias aplicaes informticas que oferecem solues de optimizao para linhas
de montagem. De entre elas, referem-se neste trabalho as aplicaes Probalance e AviX
Balance.

15

3.3.2.1.

PROBALANCE

A Proplanner uma empresa de software que dispe de vrios programas ligados ao


processo de produo dentro da engenharia e gesto, sendo um desses programas, o
ProBalance, direccionado ao balanceamento de linhas [5].
Esta aplicao permite obter diferentes solues de balanceamento de linhas atravs dos
dados do processo em questo. Existem dois mtodos de balanceamento de linhas
disponveis no software ProBlance. Os utilizadores podem seleccionar minimizar o nmero
de estaes de trabalho (balanceamento tipo 1) ou minimizar o tempo de ciclo das
operaes (balanceamento tipo 2). O BL tipo 1 requer que o utilizador introduza o tempo
de ciclo, a partir do qual a aplicao calcula quantas estaes de trabalho so necessrias.
O BL tipo 2 requer que o utilizador introduza o nmero de estaes de trabalho
disponveis, ou desejadas, e atravs desse valor calculado o tempo de ciclo.
So necessrias duas tarefas para completar o BL usando o ProBalance. Primeiro, o
utilizador necessita de especificar os dados do problema (exemplo: ID, tempo de processo,
precedncias). Depois de introduzidos os dados, a segunda tarefa criar a linha balanceada
(manualmente ou gerada pelo ProBalance) baseada nos dados introduzidos pelo utilizador.
Na Figura 5 possvel ver a interface que permite a introduo das tarefas e das suas
caractersticas, tais como o tempo de operao e respectivas precedncias.

Figura 5 Interface do software ProBalance

Na Figura 6 e Figura 7 possvel ver o grfico de precedncias das operaes e o grfico


com os resultados do balanceamento da linha.

16

Figura 6 Grfico de precedncias

Figura 7 Grfico de balanceamento

Atravs de algoritmos de atribuio automtica de tarefas e recursos, a aplicao gera uma


soluo ao problema introduzido pelo utilizador. Estes algoritmos funcionam atravs de
mtodos de optimizao. Quando a aplicao gera de forma automtica uma soluo esta
lida com as seguintes restries:

rea de trabalho - lado da linha na qual essa tarefa deve ser atribuda.

Precedncias - ordem pela qual tarefas devem ser executadas.

Agrupamento - tarefas que precisam de se mover juntas para a mesma estao, ou


mesmo operador.

Recursos - tarefas que requerem um recurso e, portanto, devem ser atribudas a uma
estao com esse recurso.

Operadores - so suportados mltiplos operadores por estao, e cada operador


pode ser atribudo a uma, ou mais, estaes de trabalho.

17

Quando o balanceamento feito manualmente pelo utilizador o ProBalance exibe todas as


violaes efectuadas durante o processo, baseando-se novamente nas restries
previamente apresentadas.
3.3.2.2.

AVIX BALANCE

O AviX Balance uma aplicao de balanceamento de linhas de produo, que ajuda a


optimizar a linha de produo. Com os dados da aplicao possvel criar e simular novas
linhas de produo para os produtos [6].
A aplicao permite ao utilizador:

Ver os resultados do balanceamento directamente no ecr;

Balancear vrios produtos em simultneo;

Facilidade na optimizao da produo e aumento da eficincia da produo;

Obter layouts sem perdas;

Balancear com o controlo dos mtodos de trabalho, objectos, componentes e


ferramentas.

Esta aplicao permite efectuar o balanceamento manualmente atravs da deslocao de


tarefas entre estaes. Depois de cada passo tomado no balanceamento, a aplicao mostra
a sua influncia na produtividade e na eficincia da linha de produo.
Na Figura 8 possvel ver a janela principal desta aplicao: no canto superior esquerdo
encontram-se as estaes de trabalho e na parte inferior direita o grfico da linha com os
tempos correspondentes de cada estao.

18

Figura 8 Interface da aplicao AviX Balance

A aplicao permite ainda modificar o grfico e visualizar as operaes correspondentes


em cada coluna, ou seja cada estao de trabalho. possvel ver essa opo na Figura 9.

Figura 9 Opo do grfico do balanceamento

19

Depois da linha balanceada possvel obter vrios relatrios sobre a linha. Na Figura 10
mostra-se um exemplo de um deles onde possvel ver os tempos de operao nas
estaes.

Figura 10 Relatrio de balanceamento

3.4.

PROJECTOS DE BALANCEAMENTO DE LINHAS USANDO AG

Nesta seco so descritos dois trabalhos desenvolvidos para balanceamento de linhas


usando Algoritmos Genticos.
3.4.1.

ALGORITMO GENTICO PARA O BALANCEAMENTO DE LINHAS DE PRODUO


PARA PRODUTO NICO

Neste projecto, desenvolvido por Mayerle e Santos discutido o problema do


balanceamento de linhas de produo simples (produto nico), o qual consiste na obteno
de uma alocao de um conjunto de tarefas aos postos (ou estaes) de trabalho,
respeitando a relao de precedncia na execuo destas tarefas. So consideradas duas
situaes distintas: reduzir o nmero de postos de trabalho, considerando o tempo de ciclo
que satisfaa a procura, ou reduzir o tempo de ciclo, dado o nmero de postos de trabalho.

20

Embora, os autores no terem realizado testes exaustivos com o algoritmo proposto, o seu
desempenho ficou prximo de ptimo, por outro lado sugerem que seja ampliado o nmero
de testes realizados com o algoritmo, incluindo problemas que tenham solues por outros
mtodos heursticos encontrados na literatura [7].
3.4.2.

BALANCEAMENTO DE LINHAS DE PRODUO DE MODELO MISTO COM


ALGORITMO GENTICO HBRIDO

Tendo em conta o problema existente do modelo misto de balanceamento de linhas de


produo, no qual consiste num linha de produo onde existem vrios produtos de
semelhantes caractersticas e os quais so produzidos conforme a necessidade do cliente.
proposto por Ying, Hongshun e Liao um modelo matemtico baseado em dois factores,
que so integrados, incluindo o nmero de estaes de trabalho e a eficincia da linha de
montagem.
De seguida, desenvolvido um novo algoritmo gentico hbrido para encontrar a soluo
ptima dos problemas. Para evitar que o problema se encaminhe para uma soluo de
forma prematura e melhorar a optimizao, o GA combinado com um simulador de
algoritmos de reconhecimento (simulated annealing algorithms). Os resultados da
simulao indicam que, desta forma, o algoritmo hbrido tem uma melhor eficincia de
optimizao e de desempenho [8].

21

4. ALGORITMOS GENTICOS
Neste captulo so introduzidos os Algoritmos Genticos, sendo descrito o seu
aparecimento e desenvolvimento histrico, definido o que um Algoritmo Gentico,
esclarecida a sua estrutura e o seu funcionamento.
Os AG foram inventados por John Holland, na dcada de 1960, e desenvolvidos pelo
prprio e pelos seus colegas e estudantes, na Universidade de Michigan, nos anos 60 e 70.
O objectivo de Holland no era projectar algoritmos para resolver problemas especficos,
mas sim estudar formalmente o fenmeno da adaptao, tal como ocorre na natureza, e
desenvolver maneiras atravs das quais os mecanismos de adaptao da natureza pudessem
ser importados para sistemas computacionais. O livro de Holland de 1975 Adaptation in
Natural and artificial Systems apresentou o algoritmo gentico como uma abstraco da
evoluo biolgica e deu um panorama terico para a adaptao nos AG [9, 10].

4.1.

DEFINIO E FUNDAMENTOS BIOLGICOS DOS ALGORITMOS


GENTICOS

Os Algoritmos Genticos so uma famlia de modelos computacionais inspirados na


gentica e na evoluo natural das espcies. Estes algoritmos modelam uma soluo para
um problema especfico numa estrutura de dados, como a de um cromossoma, e aplicam
operadores que recombinam estas estruturas preservando informaes crticas.

23

Como principais aspectos de um algoritmo gentico podem-se referir os cromossomas e a


reproduo. Os primeiros so a representao das solues para o problema que se
pretende resolver e o segundo permite a evoluo das solues no sentido de atingirem a
soluo final.

Cromossomas

Todos os organismos vivos so constitudos por clulas. Em cada clula h um mesmo


conjunto de cromossomas. Estes cromossomas so cadeias de ADN e servem como
modelo para todo o organismo. O cromossoma constitudo por genes, que so blocos
de ADN. Cada gene codifica uma determinada protena. Basicamente, pode-se dizer
que cada gene codifica uma determinada feio como, por exemplo, cor dos olhos.
Conjuntos de genes relacionados com determinada feio (por exemplo, olhos azuis,
castanhos) so chamados alelos. Cada gene tem uma posio prpria dentro do
cromossoma. Essa posio chamada locus.

Reproduo

Durante a reproduo, ocorre inicialmente recombinao (ou cruzamento). Os genes


dos pais so combinados para formar um novo cromossoma. Essa descendncia recmcriada pode sofrer uma mutao. Mutao significa que os elementos do ADN so
ligeiramente modificados. Essas mudanas so causadas principalmente por erros na
cpia dos genes dos pais.
A adaptao de um organismo medida pelo sucesso do organismo na vida
(sobrevivncia).

4.2.

ESPAO DE SOLUES

Quando se est a resolver um problema, geralmente procura-se alguma soluo que seja
melhor do que outras. O espao de todas as solues possveis (que o conjunto no qual se
encontra a soluo procurada) chamado espao das solues (ou espao de Estados).
Cada ponto desse estado representa uma soluo possvel. Cada uma das possveis
solues pode ser "marcada" pelo seu valor (ou adequao) para o problema. Com os AG
procura-se a melhor soluo dentro de um nmero de possveis solues representadas
por pontos no Espao de Solues.

24

Procurar uma soluo resume-se a procurar algum valor extremo (um mnimo ou mximo)
no espao de solues. Na Figura 11 visvel um exemplo de um espao de estados. Por
vezes o espao de solues pode estar bem definido, mas usualmente conhecem-se apenas
poucos pontos do espao de solues. Com os AG o processo de encontrar solues gera
outros pontos (possveis solues) medida que a evoluo ocorre.
90
80
70
60
50
40
30
20
10
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49

Figura 11 Exemplo de espao de solues

O problema que cada pesquisa pode ser muito complicada. Por exemplo, pode no se
saber por onde procurar uma soluo, ou por onde comear. H muitos mtodos que
podem ser usados para encontrar uma soluo adequada, mas esses mtodos no
fornecero necessariamente a melhor soluo.

4.3.

ESTRUTURA DE UM ALGORITMO GENTICO

O algoritmo comea por gerar um conjunto inicial de solues (representadas por


cromossomas) chamadas de populao inicial. Solues de uma populao so utilizadas
para formar uma nova populao. Isto motivado pela esperana que a nova populao
(descendncia) seja melhor do que a anterior (ascendncia). As solues que so
seleccionadas para formar novas geraes de solues so seleccionadas de acordo com a
sua adequao quanto melhores, mais hipteses de reproduo tero. Esse processo
repetido at que alguma condio seja satisfeita (por exemplo, o nmero de geraes ou o
aperfeioamento da melhor soluo).

25

O funcionamento bsico de um Algoritmo Gentico pode ser descrito pelo seguinte


algoritmo:
1. [Incio] Gerar uma populao aleatria de n cromossomas (solues adequadas
para o problema);
2. [Adequao] Avaliar a adequao f(x) de cada cromossoma x da populao;
3. [Nova populao] Criar uma nova populao repetindo os passos seguintes at que
a nova populao esteja completa:
1. [Seleco] Seleccionar, de acordo com sua adequao (melhor adequao,
mais chances de ser seleccionado), dois cromossomas para serem os pais;
2. [Cruzamento] Com a probabilidade de cruzamento definida, cruzar os pais
para formar a nova gerao. Se no realizar cruzamento, a nova gerao
ser uma cpia exacta dos pais;
3. [Mutao] Com a probabilidade de mutao definida, alterar os
cromossomas da nova gerao nos Locus (posio nos cromossomas);
4. [Aceitao] Colocar a nova descendncia na nova populao.
4. [Substituir] Utilizar a nova populao gerada para a prxima iterao do
algoritmo;
5. [Teste] Se a condio final foi atingida, parar, e retornar a melhor soluo da
populao actual;
6. [Repetir] Ir para o passo 2.

4.4.

MECANISMOS DE LIGAO DE UM ALGORITMO GENTICO AO


PROBLEMA

Existem dois mecanismos que ligam o Algoritmo Gentico ao problema que este pretende
resolver: o primeiro mecanismo a codificao do problema em cromossomas; o segundo
mecanismo a funo de avaliao que calcula o valor de cada cromossoma no contexto
do problema.
4.4.1.

CODIFICAO DO PROBLEMA

O primeiro mecanismo, a codificao do problema, varia de problema para problema e


entre algoritmos aplicados. A codificao feita em vectores e pode ser feita em vrios
formatos: codificao binria, codificao por permutao, codificao de valores e
codificao em rvore. A escolha da codificao efectuada com a anlise do problema,
sendo escolhida a mais adequada ao problema. De seguida so ilustradas duas das
principais codificaes.

26

4.4.1.1.

CODIFICAO BINRIA

A codificao binria a mais comum, principalmente porque foi a que os primeiros


investigadores de AG usaram e devido sua relativa simplicidade.
Na codificao binria cada cromossoma uma srie de bits 0 ou 1. A ttulo de exemplo,
apresentam-se de seguida dois possveis cromossomas codificados utilizando esta tcnica:

Cromossoma A 101100101100101011100101

Cromossoma B 111111100000110000011111

A codificao binria permite muitos possveis cromossomas, mesmo com pequenos


nmeros de alelos. Por outro lado, esta codificao no natural para muitos problemas e
algumas vezes necessrio fazer correces antes dos cruzamentos e/ou mutaes.
4.4.1.2.

CODIFICAO POR PERMUTAO

A codificao por permutao pode ser usada em problemas que envolvem ordenao, tal
como o Problema do Caixeiro-Viajante, ou problemas de ordenao de tarefas.
Na codificao por permutao cada cromossoma uma srie de nmeros que representam
uma posio numa sequncia. A ttulo de exemplo, apresentam-se de seguida dois
possveis cromossomas codificados utilizando esta tcnica:

Cromossoma A 1 5 3 2 6 4 7 9 8

Cromossoma B 8 5 6 7 2 3 1 4 9

A codificao por permutao til para a soluo de problemas de ordenao. Para


alguns tipos de cruzamentos e mutaes so necessrias correces para que os
cromossomas fiquem consistentes (isto , contenham sequncias reais) para alguns
problemas.
4.4.2.

FUNO DE AVALIAO

O segundo mecanismo, a funo de avaliao, a ligao entre o problema a ser resolvido


e o Algoritmo Gentico. A funo de avaliao recebe como entrada o cromossoma e
retorna um valor, ou uma lista de valores, que medem o desempenho do cromossoma no

27

problema a ser resolvido. Esse valor, ou lista de valores, a aptido do cromossoma, que o
algoritmo usa para avaliar os cromossomas e para a reproduo de novos cromossomas. A
funo de avaliao definida de acordo com a soluo desejada do problema, sendo esta
funo que faz desenvolver o algoritmo at uma soluo ptima.

4.5.

OPERADORES DO ALGORITMO GENTICO

Como vimos anteriormente, na construo bsica do Algoritmo Gentico o cruzamento e a


mutao so os operadores mais importantes, sendo o seu desempenho influenciado
principalmente por esses dois operadores.
4.5.1.

CRUZAMENTO

Depois de se decidir que codificao usar, pode-se proceder operao de cruzamento. O


cruzamento opera em determinados genes dos cromossomas dos pais e cria novas
descendncias. A maneira mais simples de fazer isso escolher aleatoriamente alguns
pontos de cruzamento e copiar para o filho todos os genes que se encontram antes desse
ponto de um dos pais e todos os genes que vm depois desse ponto do outro pai.
A Figura 12 ilustra o processo de cruzamento (| representa o ponto de cruzamento):

Figura 12 Exemplo da operao de cruzamento de dois cromossomas

Existem outras maneiras de efectuar o cruzamento. Por exemplo, podem-se escolher mais
pontos de cruzamento. O cruzamento pode ser um pouco complicado e depender
principalmente da codificao dos cromossomas. De referir que cruzamentos especficos,
desenvolvidos para problemas especficos, podem melhorar o desempenho dos algoritmos
genticos.
4.5.2.

MUTAO

Depois de realizar um cruzamento procede-se mutao. A mutao tem a inteno de


prevenir que todas as solues do problema dessa populao caam num ponto ptimo

28

local. A operao de mutao muda aleatoriamente a descendncia criada pelo cruzamento.


No caso de uma codificao binria, pode-se mudar aleatoriamente algum bit escolhido de
1 para 0 e vice-versa. Apresenta-se na Figura 13 um exemplo da realizao de uma
operao de mutao em dois cromossomas:

Figura 13 Exemplo da realizao de uma mutao de cromossomas

A tcnica da mutao (da mesma forma que a do cruzamento) depende muito da


codificao dos cromossomas. Por exemplo, quando se codificam permutaes, as
mutaes podem ser realizadas como uma troca de dois genes.
4.5.3.

SELECO

A seleco outro operador importante, e tambm com elevada influncia no resultado,


pois o processo atravs do qual os cromossomas da populao so seleccionados para
depois se proceder ao seu cruzamento. Existem vrios mtodos de seleco,
nomeadamente: seleco aleatria por roleta, seleco por classificao, seleco por
torneio, seleco Boltzman, seleco por estado estacionrio, entre outras.
Seguidamente so listados os principais processos de seleco do ciclo do Algoritmo
Gentico, sendo descrito o funcionamento dos mesmos.

Seleco aleatria por roleta


Este mtodo um dos mais usados em Algoritmos Genticos. Neste tipo de
seleco atribuda aos indivduos (cromossomas) uma probabilidade de serem
seleccionados, que directamente proporcional sua aptido. O problema deste
mtodo se existir uma grande discrepncia na probabilidade, o que faz com que
existam cromossomas com probabilidades de sair muito baixas e outros com
probabilidades elevadas, sendo ento maioritariamente seleccionados sempre os
mesmos cromossomas.

29

A Tabela 2 mostra um exemplo deste tipo de seleco, assumindo que existem quatro
cromossomas, com aptides diferentes, atribuda uma probabilidade a cada um dos
cromossomas.
Tabela 2 Cromossomas exemplo com aptido e probabilidade de seleco

Cromossoma

Aptido

Probabilidade de seleco

3,74 4%

52

48,60 48%

34

31,78 32%

17

15,89 16%

A Figura 14 ilustra um grfico que representa a probabilidade de seleco de cada


cromossoma, sendo possvel verificar que o cromossoma com maior aptido tem uma
probabilidade muito superior de ser seleccionado, comparativamente ao que apresenta uma
aptido inferior.

4%
16%

A
B
48%
32%

C
D

Figura 14 Probabilidade de seleco dos cromossomas utilizando o mtodo de seleco aleatria


por roleta

30

Seleco por classificao


A seleco por classificao classifica primeiro a populao e, de seguida, atribui a
cada cromossoma um valor de adequao determinado pela sua classificao. O
cromossoma pior classificado ter adequao igual a 1, o segundo pior igual a 2,
etc., de forma que o melhor ter adequao igual a N (nmero de cromossomas na
populao), permitindo que todos os cromossomas tenham hiptese de serem
seleccionados. No entanto, este mtodo pode resultar em menor convergncia, pois
os melhores cromossomas no tm grande distino em relao aos outros.
Para melhor compreenso apresentado um exemplo deste tipo de seleco, usando
uma populao equivalente a usada no exemplo anterior mas atribuindo uma
classificao a cada cromossoma, tal como representado na Tabela 3.
Tabela 3 Populao exemplo de cromossomas, com respectiva aptido e classificao

Cromossoma

Aptido

Classificao

Probabilidade de
seleco

10%

50

40%

30

30%

15

20%

Figura 15 Probabilidade de seleco antes de classificao (esquerda) e probabilidade depois da


classificao (direita).

31

Como possvel confirmar atravs dos grficos apresentados na Figura 15, a


probabilidade de seleco dos cromossomas com aptides inferiores superior
depois de feita a classificao, tornando a seleco destes mais provvel do que
anteriormente. No entanto, como referido, este mtodo pode resultar em menor
convergncia, porque os melhores indivduos no se distinguem muito dos outros.

Seleco por Torneio


Na seleco por torneio, so inicialmente seleccionados trs cromossomas
aleatoriamente; depois destes seleccionados, verificado qual dos trs contm a
aptido mais elevada, sendo esse seleccionado para o cruzamento. Posteriormente
executado o mesmo processo para se obter o segundo cromossoma para o
cruzamento.

4.6.

CRITRIOS DE PARAGEM

O algoritmo pra quando alcanado (ou aproximado) um objectivo definido para o


problema. De entre os diferentes objectivos usualmente considerados como critrio de
paragem, contam-se os seguintes:

Mximo de geraes O AG pra quando atinge o nmero mximo de geraes


definido para o algoritmo.

Tempo decorrido O AG pra quando o algoritmo atingir o tempo de execuo


estipulado.

Limite da aptido O AG pra quando o valor de aptido do melhor indivduo


(cromossoma) da populao actual for inferior ou igual ao limite da aptido, no
caso de se estar a proceder a uma minimizao.

Gerao stall O AG pra se no existir melhoraria na funo objectivo numa


sequncia de geraes seguidas (geraes de comprimento stall).

32

5. ARQUITECTURA DA
APLICAO A
IMPLEMENTAR
Neste captulo descrito o Algoritmo Gentico desenvolvido em todos os seus aspectos, e
so explicadas todas as configuraes do mesmo. ainda apresentada a interface grfica
desenvolvida de raiz para servir de ligao do problema ao algoritmo, simplificando a
introduo dos problemas e dados dos mesmos, assim como para apresentar os resultados
ao utilizador.

5.1.

ALGORITMO GENTICO DESENVOLVIDO

O primeiro passo do desenvolvimento de um Algoritmo Gentico a codificao do


problema a cuja resoluo o algoritmo se destina. Segue-se a gerao da populao inicial,
o processo de seleco e as operaes de cruzamento e mutao. Por ltimo, h a
considerar ainda a funo de avaliao e a escolha do critrio de paragem.

33

5.1.1.

ESTRUTURA DO ALGORITMO GENTICO DESENVOLVIDO

Na Figura 16 apresentado um fluxograma da estrutura geral do Algoritmo Gentico


desenvolvido. Neste fluxograma so apresentadas as fases do AG, fases estas que so
explicadas nas subseces seguintes.

Figura 16 Fluxograma do Algoritmo Gentico desenvolvido

34

5.1.2.

CODIFICAO

Para a codificao dos problemas de balanceamento de linhas de produo, a codificao


seleccionada foi aquela que permite uma simples associao do cromossoma ao
sequenciamento da linha de montagem, possibilitando uma rpida avaliao do
cromossoma como possvel soluo do problema.
Para tal foi associado a cada tarefa um valor. Considere-se, por exemplo, a Tabela 4 que
representa a codificao de uma linha de produo com 5 tarefas.
Tabela 4 Exemplo de codificao das tarefas.

5.1.3.

Tarefa

Valor de codificao

GERAO DA POPULAO INICIAL

A gerao da populao inicial feita aleatoriamente.


Inicialmente foi pensado no seguinte processo para gerar a populao. Este primeiro
mtodo gera um nmero aleatrio entre 0 e o nmero de operaes e este valor atribudo
ao primeiro gene do cromossoma. De seguida gerado outro nmero aleatrio, cumprindo
os requisitos especificados anteriormente. ento verificado se este nmero j foi
atribudo a algum dos genes do cromossoma. Caso tenha sido, feita nova gerao de um
nmero aleatrio, este testado novamente, e este processo repete-se at ser encontrado
um valor ainda no atribudo. O processo descrito anteriormente repete-se at o
cromossoma estar completo, e repetido para toda a populao.

35

Depois de implementado este mtodo, verificou-se que este processo lento, o que leva a
que o algoritmo demore a gerar a populao inicial.
Devido a este problema foi ento desenvolvido e aplicado outro mtodo, que se passa a
descrever.
Neste segundo mtodo o cromossoma preenchido completamente, comeando por se
atribuir o valor de um ao primeiro gene, e incrementando o valor em cada gene at ser
preenchido o cromossoma. Assim, se o problema consistir em cinco operaes, o
cromossoma ser preenchido de forma organizada, com os valores inteiros de 1 a 5. Depois
do algoritmo ter preenchido o cromossoma, este vai ser baralhado. Este processo
efectuado atravs da troca de genes, seleccionando posies aleatrias. Para efectuar esta
troca, so seleccionadas duas posies aleatrias e os genes correspondentes a essas
posies so trocados. Este processo executado x vezes, sendo que o valor de x
calculado usando o nmero de operaes do problema e uma constante definida, que
permitiu variar o valor de x para testar qual seria o valor mais eficaz e simultaneamente
mais rpido. Chegou-se ao valor de 3 para a constante; isto quer dizer que ento x igual
ao nmero de operaes multiplicado por 3, o que permite que o nmero de vezes que o
cromossoma seja baralhado seja directamente ligado ao nmero de operaes do problema.
Na Tabela 5 possvel ver um pequeno exemplo de um cromossoma a ser baralhado,
sendo apenas representadas quatro das quinze trocas que, de acordo com o mtodo
implementado, so executadas. Este mtodo foi ento implementado e o executado para
gerar a populao inicial.

36

Tabela 5 Processo executado para baralhar o cromossoma

Cromossoma

1 Troca

2 Troca

3 Troca

4 Troca

Gerado

5.1.4.

SELECO

O processo de seleco implementado no AG desenvolvido o mtodo de seleco por


torneio, previamente explicado. So ento seleccionados trs cromossomas da populao,
de forma aleatria, e comparada a aptido de cada um deles, sendo seleccionado o
cromossoma que contm a aptido superior.
5.1.5.

FUNO DE AVALIAO

A funo de avaliao tem o propsito de, tal como o nome indica, avaliar cada
cromossoma em funo do objectivo do problema.
No balanceamento de uma linha de montagem, deve-se garantir que as precedncias entre
as operaes sejam cumpridas e que o tempo de ciclo seja garantido, o que por si s faz
com que o nmero de estaes necessrias seja estabelecido. Tomando por base estes
conhecimentos, foi desenvolvida uma funo de avaliao que avalia os cromossomas
atravs da verificao do cumprimento das precedncias e do nmero de estaes que cada
possvel soluo requer.
Inicialmente feita uma contagem do nmero de precedncias existentes no problema.
Este valor serve de referncia para verificar qual a percentagem de inviabilidades. Depois,
ao cromossoma ao qual aplicada a funo de avaliao, verificado se as precedncias
so cumpridas em cada gene do cromossoma; por cada precedncia no cumprida

37

incrementada uma varivel de penalizao (a varivel penalidade). Durante esse processo


somada a durao temporal de cada tarefa que est a ser verificada, e quanto o valor
acumulado de tempo excede o valor de tempo de ciclo pretendido, sabe-se que temos uma
estao. No final verificado em quantas estaes a soluo analisada excede o nmero
desejado de estaes, e por cada estao a mais incrementada a varivel de penalizao.

 

  
 100

(6)

Na equao 6 apresentada a expresso de clculo da aptido, que contm a referida


varivel . Esta varivel representa o mximo de penalidade que o problema
contm. Por sua vez a varivel penalidade, a varivel incrementada por cada precedncia
no cumprida ou estao a mais.
5.1.6.

CRUZAMENTO E MUTAO

Neste problema especfico, e devido codificao utilizada, as operaes de cruzamento


no podem ser efectuadas, pois iriam gerar solues inviveis. Como cada soluo, ou seja
cromossoma, contm valores inteiros entre 1 e o nmero de operaes do problema em
questo, nenhum valor se repete dentro do cromossoma. Utilizando o cruzamento, s
possvel garantir que no se repitam as mesmas operaes dentro do cromossoma no caso
dos cromossomas pai serem exactamente iguais; em qualquer outro caso iriam surgir
cromossomas filhos cujas solues seriam inviveis.
Quanto mutao, foram testados trs mtodos de mutao tendo sido aplicado o que
garantiu melhores resultados.
O primeiro mtodo consiste na troca dos dois genes seleccionados, atravs da seleco de
duas posies aleatrias no cromossoma.
Como se pode observar na Tabela 6 foram seleccionadas as posies 2 e 5 do cromossoma
e os genes correspondentes a essas posies so trocados.

38

Tabela 6 Exemplo de aplicao do primeiro mtodo de mutao testado.

Antes

Depois

No segundo mtodo implementado apenas seleccionada uma posio, novamente de


forma aleatria, e efectuada a troca entre o gene da posio seleccionada e o gene
consecutivo posio seleccionada (gene que se encontra na posio direita da posio
aleatria, tal como se pode observar na Tabela 7.

Tabela 7 Exemplo de aplicao do segundo mtodo de mutao testado.

Antes

Depois

Por ltimo, apresenta-se o terceiro mtodo implementado e que o utilizado na aplicao,


pois foi o que apresentou melhores resultados. Este mtodo consiste novamente em
seleccionar duas posies do cromossoma de forma aleatria, e o gene que se encontra na
primeira posio seleccionada movido para a segunda posio seleccionada, e todas as
operaes entre estas duas posies so deslocados de uma posio no sentido de
deslocao entre a segunda posio e a primeira posio. Este processo exemplificado na
Tabela 8, onde possvel verificar a troca efectuada.
Tabela 8 Exemplo de aplicao do terceiro mtodo de mutao testado.

Antes

Depois

39

Depois de seleccionado o terceiro mtodo de mutao para implementao, pois


apresentava os melhores resultados, foi ainda aplicada uma melhoria ao sistema de
mutao, que a mutao dinmica. Esta consiste em proceder ao processo de mutao y
vezes, sendo que o valor de y calculado e dependente do nmero de operaes que a linha
contm e do nmero total de precedncias existentes, ou seja quanto mais operaes e
precedncias existirem no problema mais mutaes so efectuadas. O valor de y
calculado usando a equao apresentada na equao 7.
      4       4

(7)

Tal como apresentado na equao 7 o nmero de mutaes igual do nmero de


operaes, mais do nmero de precedncias das operaes. Esta alterao diminui o
nmero de iteraes necessrias para encontrar uma soluo.

5.1.7.

CRITRIO DE PARAGEM

Neste algoritmo existem dois critrios de paragem. Em primeiro lugar o algoritmo pra
caso obtenha uma soluo com 100% de aptido. O segundo critrio de paragem o
nmero de iteraes, ou seja quando forem efectuadas 10 000 000 iteraes, apresentando
os resultados obtidos at ao momento.
Este segundo critrio de paragem, tem como objectivo permitir ao utilizador verificar
como o algoritmo est a convergir para uma soluo, permitindo-lhe alterar o nmero de
estaes desejadas e o tempo de ciclo, isto com o intuito de possibilitar ao utilizador
analisar os resultados e, se verificar que no existe evoluo para uma soluo, fazer as
devidas alteraes para a obteno da mesma, e correr novamente o algoritmo com estes
novos valores.

40

5.2.

ALGORITMO GENTICO DE MELHORAMENTO DE RESULTADOS

Depois de implementado o Algoritmo Gentico descrito e de este ter sido aplicado a um


conjunto de problemas de teste, verificou-se que o sistema apresentava bons resultados
mas no os resultados ideais. Por este motivo foi desenvolvido um segundo algoritmo, que
melhora as solues obtidas com o primeiro algoritmo. Este algoritmo tem por objectivo
diminuir a folga da soluo e diminuir o desvio padro das folgas das estaes.
5.2.1.

ESTRUTURA GERAL DO ALGORITMO

Na Figura 17 apresentada a estrutura deste segundo algoritmo. Nesta estrutura possvel


ver todas as fases do processo do algoritmo, sendo estas explicadas nas subseces
sequentes.

Figura 17 Estrutura do algoritmo de melhoramento

41

5.2.2.

SELECO

Como este algoritmo tem uma populao de pequenas dimenses, pois a populao
constituda pelas solues obtidas no primeiro algoritmo, no possvel usar um mtodo
de seleco como o usado no primeiro algoritmo. Ento o mtodo de seleco adoptado
simplesmente a escolha aleatria de um elemento dessa populao.
5.2.3.

MUTAO

O processo de mutao implementado neste algoritmo igual ao descrito no algoritmo


principal, com a pequena diferena de que a mutao apenas efectuada uma nica vez em
cada iterao.
5.2.4.

FUNO DE AVALIAO

A funo de avaliao deste segundo algoritmo dividida em duas partes. Depois de se


proceder mutao, aplicada a funo de avaliao do algoritmo anterior para garantir
que o novo cromossoma, criado pela mutao, garante que todas as precedncias ainda so
cumpridas e que o nmero de estaes de trabalho ainda cumprido. Caso isto se
comprove aplicada a nova funo de avaliao, caso a soluo tenha sido comprometida
com a mutao efectuada ento rejeitada de imediato.
De seguida aplicada uma segunda funo de avaliao que calcula o valor da folga e do
desvio padro da folga da soluo, comparando esses valores da nova soluo com a
soluo seleccionada para mutao (cromossoma pai). Se esta nova soluo apresentar um
valor da folga inferior ao do cromossoma pai, ento o cromossoma pai substitudo pelo
novo cromossoma. Se a nova soluo apresenta folga igual do cromossoma pai ento
comparado o desvio padro de ambas as solues e se a nova soluo tiver um valor
inferior ao do cromossoma pai ento este substitudo pela nova soluo. Caso a nova
soluo apresente uma folga superior do cromossoma pai, logo descartada pois uma
soluo pior.
5.2.5.

CRITRIO DE PARAGEM

O critrio de paragem deste algoritmo o nmero de iteraes, ou seja o Algoritmo


Gentico pra quando atingido o valor definido de 500 000 iteraes.

42

5.3.

INTERFACE DESENVOLVIDA

A interface para a introduo dos dados do problema no algoritmo e para a apresentao


dos resultados obtidos foi desenvolvida em C#, permitindo ao utilizador uma fcil
utilizao e um aspecto visual agradvel e intuitivo. Na Figura 18 apresentada a janela
principal da interface.

Figura 18 Interface grfica da aplicao

A janela principal da interface permite ao utilizador introduzir os dados do problema,


comeando por definir o nmero de operaes que o problema tem e a base de tempo para
os valores de durao de cada operao que sero introduzidos na tabela (segundos ou
minutos).
Depois de estes dois pontos serem definidos, so adicionadas automaticamente tabela as
linhas correspondentes ao nmero de operaes (cada linha corresponde a uma operao).
Em cada linha possvel atribuir um ID operao, introduzir uma breve descrio desta,
o correspondente tempo de operao e as suas precedncias, sendo que a aplicao
apresenta um limite de 6 precedncias por operao. As precedncias so introduzidas da
seguinte forma: em cada espao introduzido o ID da operao relativamente qual existe

43

precedncia. Depois de introduzidas todas as precedncias, se ainda existirem espaos


vazios, estes so preenchidos de forma automtica com 0, o que corresponde a no
existirem mais precedncias para a operao em questo. Na Figura 19 mostra-se um
exemplo onde o utilizador indica que o problema contm 5 operaes e que a base de
tempo em segundos, e depois introduz os dados na tabela.

Figura 19 Exemplo de introduo de dados

Depois de toda a tabela preenchida, o utilizador tem a possibilidade de escolher entre dois
gneros de problemas: o primeiro onde o tempo de funcionamento da linha e o nmero de
peas pretendidas so conhecidos, e um segundo onde a linha tem um nmero de estaes
fixas e se pretende obter a produo mxima possvel para esse nmero de estaes. Na
Figura 20 so visveis as opes de seleco do problema, encontrando-se seleccionado na
figura o caso em que o utilizador tem conhecimento do tempo de funcionamento e das
peas a produzir e deseja calcular as estaes desejadas e balancear a linha.

Figura 20 Seleco de tipo de problema

Como anteriormente descrito, esta aplicao apresenta dois passos principais, em que cada
um corresponde a um Algoritmo Gentico diferente. No caso do primeiro algoritmo

44

gentico existe ainda outro campo a preencher pelo utilizador que define quantas solues
este deseja obter para depois escolher a mais adequada aos seus objectivos ou
necessidades; este valor ser a populao do segundo algoritmo. Este campo apresentado
no canto superior direito da interface com o utilizador (como se pode ver na Figura 21),
sendo apresentados por baixo deste campo os 20 cromossomas da populao e respectiva
aptido e nmero de estaes de cada cromossoma.

Figura 21 Seleco do nmero de solues

Depois de todos os aspectos do problema estarem definidos, surge a primeira fase em que
calculado o tempo de ciclo e o nmero de estaes para o problema introduzido e gerada a
populao inicial. De seguida executado o primeiro AG que ir obter o nmero de
solues desejadas pelo utilizador. Este algoritmo executado at obter o nmero de
solues desejadas ou at atingir 10 milhes de iteraes. Se, aps este nmero de ciclos, o
AG no obteve as solues pretendidas, possvel alterar os dados do problema, tais como
o tempo de ciclo ou o nmero de solues, e executar novamente o algoritmo.
Na Figura 22 mostrada a janela da aplicao depois de executado o primeiro algoritmo,
sendo que neste caso o algoritmo parou aps as 10 milhes de iteraes, tendo obtido at
este momento duas solues das 5 desejadas pelo utilizador (estas encontram-se marcadas
a azul na Figura 22). Neste caso o utilizador pode colocar o algoritmo a executar
novamente at obter as restantes solues desejadas.

45

Figura 22 Interface grfica da aplicao depois de executado o primeiro AG

No caso de o algoritmo executar as 10 milhes de iteraes e no encontrar nenhuma


soluo, apresentada uma mensagem ao utilizador e -lhe permitido alterar o valor de
tempo de ciclo, do nmero de estaes, ou ambos (como este entender que seja
necessrio). Na Figura 23 possvel ver essa mensagem de aviso e Figura 24 um novo
menu de botes que permite incrementar o tempo de ciclo e o nmero de estaes.

Figura 23 Janela principal da interface grfica com mensagem de aviso

46

Figura 24 Menu para correco de dados do problema

Depois de finalizado o primeiro algoritmo possvel analisar cada soluo e cada


cromossoma da populao. Para o efeito deve-se premir o rato sobre o cromossoma que se
pretende analisar. Isto abre uma nova janela que permite a anlise da soluo segundo
vrios aspectos.
Na Figura 25 apresentada a janela de verificao de resultados, onde possvel analisar
estao a estao, verificar a eficincia da linha, o tempo total de paragem, o atraso do
balanceamento, a folga da linha e o desvio padro da folga. Esta janela contm ainda um
grfico que representa a ocupao temporal de cada estao, bem como a respectiva folga,
e possvel ver a distribuio do tempo pelas estaes verificando a ocorrncia de
sobrecarga em alguma estao (estrangulamento da linha).

Figura 25 Janela de anlise de resultados

Aps a anlise dos primeiros resultados, e voltando janela principal da aplicao,


possvel correr o segundo AG que o responsvel por melhorar os resultados obtidos
pelo primeiro algoritmo. Este segundo AG, como referido anteriormente, tem como

47

populao inicial as solues do algoritmo executado no passo anterior. Este algoritmo


executa 500 mil iteraes e pode ser executado quantas vezes o utilizador desejar. Na
Figura 26 apresentada a soluo melhorada do problema em considerao, aps o
trmino da execuo deste segundo AG.

Figura 26 Anlise dos resultados do segundo algoritmo

48

6. TESTES DA APLICAO
DESENVOLVIDA
Neste captulo so apresentados os vrios testes efectuados aplicao desenvolvida,
utilizando exemplos de problemas. Em cada teste so apresentados os resultados obtidos
pela aplicao desenvolvida e os resultados obtidos resolvendo o problema atravs de
heursticas.

6.1.

PRIMEIRO TESTE

Como primeiro teste escolhido um pequeno problema de relativa simplicidade, para


testar a interface da aplicao e as suas funcionalidades bem como os algoritmos
implementados.
Considere-se uma empresa que produz um dado artigo, atravs de um conjunto de
operaes com as precedncias indicadas na Tabela 9. Sabe-se que a empresa tem um
horrio de laborao de 8 horas dirias e que deseja produzir 320 artigos por dia.
pretendido definir um balanceamento da linha de produo e obter a eficincia da
mesma.

49

Tabela 9 Tabela de operaes, tempos de execuo e precedncia do problema

Operaes

Tempo de operao

Precedncias

(seg.)

A -1

70

B -2

80

C3

40

D4

20

E5

40

F6

30

B,C

G7

50

H-8

50

D,E,F,G

O problema introduzido na aplicao desenvolvida, seleccionado na aplicao que se


deseja obter uma soluo e so executados os dois algoritmos. A aplicao demora 2
minutos a correr at apresentar uma soluo possvel para o problema. Considerando
tambm o tempo de introduo do problema na aplicao, isto significa que o tempo para
obter uma soluo para este problema ronda 4 a 5 minutos.
Na Figura 27 possvel analisar a soluo obtida pela aplicao informtica.

50

Figura 27 Soluo obtida para o problema 1

Depois de obtida a soluo utilizando a aplicao desenvolvida, esta ento comparada


com a soluo obtida atravs da aplicao de mtodos heursticos de Helgeson-Birnie. Em
termos de critrios de comparao das solues, comparam-se as eficincias de ambas as
solues, as respectivas folgas de balanceamento e o desvio padro das folgas. Considerase que o mais importante dado de comparao de ambas as solues ser a folga e o desvio
padro da folga pois estes valores so os que informam da qualidade do balanceamento das
linhas. Uma menor folga significa que a linha se encontra a produzir perto do mximo (ou
mesmo no mximo) possvel e que no existem recursos a ser desperdiados; o menor
desvio padro significa que existe uma coerncia em todas as estaes e que nenhuma tem
um tempo de inactividade muito superior a qualquer outra.
Na Tabela 10 so apresentados os valores obtidos para os critrios de comparao das
solues obtidas recorrendo aos dois mtodos usados para resolver o problema. possvel
verificar que ambas as solues so viveis e que ambas apresentam a mesma eficincia,
mas pelos valores de folga e desvio padro verifica-se que a soluo obtida atravs da
aplicao informtica leva a uma linha melhor balanceada e uma boa soluo para o
problema, sendo apenas necessrio 1/3 do tempo para obter a soluo. Conclui-se que, para
este problema particular, a aplicao da computao evolutiva apresenta a melhor soluo.

51

Tabela 10 Tabela de comparao de resultados para o problema 1

Aplicao Desenvolvida

Heursticas

Linha balanceada

ABECGDFH

ABCEDGFH

Eficincia

84,4%

84,4%

Tempo total de paragem

70 Segundos

70 Segundos

Folga da linha

5%

15,5%

Desvio padro das folgas

4,90

16,7

Tempo de resoluo

4 ~ 5 Minutos

10 ~ 15 Minutos

6.2.

SEGUNDO TESTE

Neste segundo teste utilizado um problema com um nmero superior de operaes


relativamente ao teste anterior. Considera-se que a montagem de um produto exige 11
operaes, que se encontram listadas na Tabela 11, onde tambm so apresentados os
respectivos tempos de operao e as precedncias.
Tabela 11 Tabela de operaes, tempos de execuo e precedncia do problema 2

Operaes

Tempo de operao

Precedncias

(min.)

1,1

1,5

0,3

B,E

1,3

52

1,7

0,5

0,7

0,2

0,5

C,F

1,1

F,H

0,4

I,J

Comea-se por se introduzir os dados das operaes na aplicao, esta calcula o nmero de
estaes necessrias e o tempo de ciclo, introduzido o numero de solues que se
pretende obter e so executados os dois algoritmos (o primeiro para procurar as solues e
o segundo para melhorar as solues). Obtm-se uma soluo para este problema em 13
minutos. Considerando os 13 minutos de execuo da aplicao mais o tempo de
introduo dos dados, perfaz um tempo total de 15 minutos a 20 minutos para obter uma
soluo para este problema atravs da aplicao desenvolvida.
Na Figura 28 apresentada a soluo obtida pela aplicao para possvel anlise.

53

Figura 28 Soluo obtida para o segundo problema de teste da aplicao

De seguida a soluo obtida pela aplicao informtica comparada com a soluo obtida
atravs da aplicao das heursticas de Helgeson-Birnie.
Tabela 12 Tabela de comparao de resultados para o problema 2

Aplicao Desenvolvida

Heursticas

Linha balanceada

ADGBEFHJCIK

E G D A B F CI K H J

Eficincia

93%

93%

Tempo total de paragem

42 Segundos

42 Segundos

Folga da linha

3,13 %

3,13%

Desvio padro das folgas

5,74

5,74

Tempo de resoluo

10 ~ 15 Minutos

20 ~ 25 Minutos

Atravs da anlise da Tabela 12, possvel verificar que neste problema ambas as solues
so equivalentes, pois ambas apresentam valores iguais de eficcia, folga e desvio padro
de folga. A nica diferena entre elas o tempo em que se obtm a soluo, sendo que a
aplicao informtica a obtm mais rapidamente que atravs do uso das heursticas.

54

6.3.

TERCEIRO TESTE

O terceiro teste efectuado usando um problema de balanceamento onde existem 11


operaes, descritas na Tabela 13. O objectivo desta linha de produo produzir 30 peas
por hora.
Tabela 13 Tabela de operaes, tempos de execuo e precedncia do problema 3

Operaes

Tempo de operao

Precedncias

(seg.)

25

30

15

30

40

C,D

20

10

15

35

E,F,H

25

25

55

Utilizando os dados desta tabela e a informao sobre a linha de montagem, este problema
introduzido na aplicao desenvolvida e so executados os algoritmos para obter uma
soluo. Neste caso a aplicao demorou 15 minutos a obter uma soluo, a que se
adiciona o tempo de introduo de dados e de configurao da aplicao.
Na Figura 29 apresentada a soluo encontrada pela aplicao informtica para este
problema de balanceamento de linha de produo. Como possvel verificar, esta soluo
contm apenas 3 estaes, nas quais o tempo de ocupao muito idntico (levando a um
desvio de padro muito baixo) e todas tm uma folga baixa. Verifica-se ento que esta
uma boa soluo para o problema.

Figura 29 Soluo obtida para o terceiro problema.

De seguida apresentada uma comparao entre a soluo obtida pela aplicao


desenvolvida e a soluo obtida atravs das heursticas de Helgeson-Birnie, comparando
eficincia, folga da linha e desvio padro da linha.

56

Tabela 14 Tabela de comparao de resultados para o problema 3

Aplicao Desenvolvida

Heursticas

Linha balanceada

ADCFEBGHIJK

ABDFCEGHIJK

Eficincia

75%

75%

Tempo total de paragem

90 Segundos

90 Segundos

Folga da linha

5,26%

25%

Desvio padro das folgas

36,05

Tempo de resoluo

18 ~ 20 Minutos

20 ~ 25 Minutos

Atravs da anlise dos dados apresentados na Tabela 14 possvel verificar que a soluo
apresentada pela aplicao desenvolvida melhor do que a obtida pelas heursticas. Apesar
de ambas terem a mesma eficincia, o trabalha est melhor distribudo pelas estaes de
trabalho na soluo obtida com os algoritmos genticos.

6.4.

QUARTO TESTE

Neste quarto teste, o problema seleccionado um exemplo onde a procura faz com que a
soluo desejada no seja possvel e seja necessrio o ajuste das estaes de trabalho.
um problema em que se tem uma linha de montagem composta por 12 operaes, e o
objectivo produzir 420 peas em 7 horas de servio. Na Tabela 15 so apresentadas as
operaes, os tempos de operao de cada uma e as respectivas precedncias.

57

Tabela 15 Tabela de operaes, tempos de execuo e precedncia do problema 4

Operaes

Tempo de operao

Precedncias

(min)

0,2

0,4

0,7

0,1

A,B

0,3

0,11

0,32

0,6

C,D

0,27

F,G,H

0,38

0,5

I,J

0,12

Depois de introduzidos os dados do problema na aplicao, e introduzido o tempo de


funcionamento da linha e o nmero de peas desejadas, executado o primeiro algoritmo.
Este corre por 24 minutos, terminando sem encontrar solues. Na Figura 30 possvel ver

58

a janela principal com os dados do problema com os resultados obtidos depois do primeiro
algoritmo ter sido executado e no ter sida encontrada nenhuma soluo

Figura 30 Janela principal depois do primeiro Algoritmo executado no quarto teste

Atravs da anlise da populao, possvel verificar que, devido carga em cada estao
impossvel obter solues com apenas 4 estaes, sendo apenas possvel obter solues
com 5 estaes. Sendo assim, o nmero de estaes incrementado em um e o primeiro
algoritmo executado de novo. Esta anlise pode ser feita atravs de um cromossoma da
populao, tal como visvel na Figura 31.

59

Figura 31 Anlise de um cromossoma da populao do quarto teste

A aplicao com o incremento do nmero de estaes de trabalho demorou 2 minutos a


obter uma soluo, atravs da execuo do primeiro algoritmo e do segundo (o algoritmo
de melhoramento).
Na Figura 32 possvel ver a soluo obtida, com as 5 estaes de trabalho, e uma carga
idntica em todas as estaes.

Figura 32 Soluo obtida para o quarto teste

60

De seguida apresentada a tabela de comparao entre o resultado obtido com a aplicao


desenvolvida e analiticamente usando as heursticas de Helgeson-Birnie.
Tabela 16 Tabela de comparao de resultados para o problema 4

Aplicao Desenvolvida

Heursticas

Linha balanceada

ADCFEBGHIJK

ABDFCEGHIJK

Estaes de Trabalho

Eficincia

80%

80%

Tempo total de paragem

60 Segundos

60 Segundos

Folga da linha

13,04%

17.64%

Desvio padro das folgas

6,50

10.86

Tempo de resoluo

30 Minutos

20 ~ 25 Minutos

Na Tabela 16 possvel verificar que ambas as solues contm 5 estaes de trabalho, e


eficincias iguais, mas a soluo obtida pelo software apresenta um valor de folga melhor e
um desvio padro inferior, sendo uma soluo melhor para este problema.

61

7. CONCLUSES E
PERSPECTIVAS DE
DESENVOLVIMENTOS
FUTUROS
No decorrer desde trabalho foram abordados e estudados mltiplos temas e aspectos
relacionados com balanceamento de linhas de produo e algoritmos genticos. Como
referido anteriormente, no decorrer dos dias de hoje o balanceamento de linhas de
produo um importante factor para as fbricas de produo, por permitir obter uma
eficincia de produo elevada e baixar custos de produo.
Neste trabalho foram desenvolvidos dois algoritmos genticos para se proceder ao
balanceamento de linhas de produo e uma interface grfica para interligar o utilizador
aos algoritmos e facilitar o uso dos mesmos.
De referir que os objectivos colocados inicialmente foram atingidos. Sendo que o projecto
tinha como objectivo obter resultados de balanceamento de linhas usando AG equivalentes
aos resultados obtidos usando heursticas, concluiu-se que em diversos problemas a

63

aplicao desenvolvida obteve melhores resultados, obtendo melhores folgas e estaes de


trabalho com cargas de trabalho semelhantes.
Relativamente a perspectivas para desenvolvimentos futuros deste trabalho, existem alguns
pontos que necessitam de melhorias, nomeadamente:

Ser possvel seleccionar o tamanho da populao desejada;

Melhoramentos na interface grfica, nomeadamente apresentar o grfico de


precedncias do problema;

Eliminar a limitao no nmero de precedncias por operao;

Melhoramentos na janela de anlise dos resultados, atravs da introduo de


ajudas na anlise, evidenciando quais os potenciais problemas na linha ou as
causas dos resultados obtidos;

Melhoramento no menu de correco de dados dos problemas quando no


possvel encontrar solues, tal como dar a informao ao utilizador sobre qual a
restrio no problema e que alteraes so necessrias para corrigir o problema
encontrado.

Acrescentar operador cruzamento e verificar se existe melhoramentos nos


resultados.

64

Referncias Documentais
[1]

Phil Ament. (1997-2007, ltima consulta em Julho 2011). Ransom Olds.


Disponvel: http://www.ideafinder.com/history/inventors/olds.htm

[2]

James B. Dilworth, Production and Operations Management, Fourth Edition ed.:


McGraw 1989.

[3]

Jay Heizer, Barry Render, Production and Operations Management, Second ed.:
Allyn and Bacon, 1991.

[4]

Maria A. Carravilla. (Abril 1998, Layouts Balanceamento de Linhas.

[5]

Proplanner. (2002-2011, ltima consulta em Julho 2011). ProBalance. Disponvel:


http://www.proplanner.com/index.cfm?nodeID=25083

[6]

A. Balance. (2011, ltima consulta em Setembro 2011). Balance. Disponvel:


http://www.avix.eu/en/our-products/avix-balance.html

[7]

Srgio Mayerle e Rodrigo Santos, "Algoritmo gentico para o balanceamento de


linhas de produo," XXIII Encontro Nac. de Eng. de Produo 21 a 24 de outubro
2003.

[8]

Bai Ying, Zhao Hongshun e Zhu Liao, "MIXED-MODEL ASSEMBLY LINE


BALANCING USING THE HYBRID GENETIC ALGORITHM," International
Conference on Measuring Technology and Mechatronics Automation, 2009.

[9]

Lawrence Davis, Handbook of Genetic Algorithms, 1992.

[10]

Goldberg, Genetic algorithms in Search, Optimization, and Machine Learning,


1989.

65

Anda mungkin juga menyukai