DE PRODUO USANDO
ALGORITMOS GENTICOS
Agradecimentos
Gostaria de expressar a minha sincera gratido s seguintes pessoas que contriburam de
forma directa ou indirecta para a realizao deste trabalho:
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
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.
3.
2.1.1.
2.1.2.
2.1.3.
2.1.4.
3.2.
3.3.
3.3.1.
3.3.1.1.
3.3.1.2.
3.3.2.
3.3.2.1.
ProBalance............................................................................................................................ 16
3.3.2.2.
3.4.
4.
LAYOUT ............................................................................................................................................. 6
3.4.1.
3.4.2.
Balanceamento de linhas de produo de modelo misto com algoritmo gentico hbrido ... 21
ix
4.1.
4.2.
4.3.
4.4.
4.4.1.
Codificao do problema....................................................................................................... 26
4.4.1.1.
4.4.1.2.
4.4.2.
4.5.
4.5.1.
Cruzamento ............................................................................................................................ 28
4.5.2.
Mutao ................................................................................................................................. 28
4.5.3.
Seleco ................................................................................................................................. 29
4.6.
5.
5.1.1.
5.1.2.
Codificao ............................................................................................................................ 35
5.1.3.
5.1.4.
Seleco ................................................................................................................................. 37
5.1.5.
5.1.6.
5.1.7.
Critrio de paragem............................................................................................................... 40
5.2.
5.2.1.
5.2.2.
Seleco ................................................................................................................................. 42
5.2.3.
Mutao ................................................................................................................................. 42
5.2.4.
5.2.5.
Critrio de paragem............................................................................................................... 42
5.3.
7.
CRITRIOS DE PARAGEM.................................................................................................................. 32
6.
6.2.
6.3.
TERCEIRO TESTE.............................................................................................................................. 55
6.4.
ndice de Figuras
Figura 1
Figura 2
Figura 3
Figura 4
Figura 5
Figura 6
Figura 7
Figura 8
Figura 9
Figura 10
Figura 11
Figura 12
Figura 13
Figura 17
Figura 18
Figura 19
Figura 20
Figura 21
Figura 22
Figura 23
Figura 24
Figura 25
Figura 26
Figura 27
Figura 28
Figura 29
Figura 30
Figura 31
Figura 32
xi
ndice de Tabelas
Tabela 1
Tabela 2
Tabela 3
Tabela 4
Tabela 5
Tabela 6
Tabela 7
Tabela 8
Tabela 9
Tabela 10
Tabela 11
Tabela 12
Tabela 13
Tabela 14
Tabela 15
Tabela 16
xiii
Acrnimos
AG
Algoritmo Gentico
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
1.3.
CALENDARIZAO
2010
2011
Fevereiro
Marco
Abril
Maio
Junho
1
2
3
4
5
6
7
8
X
9
10
1.4.
ORGANIZAO DO RELATRIO
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.
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.
Por outro lado, este tipo de layout apresenta como principais desvantagens as seguintes:
2.1.2.
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.
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:
Pouca flexibilidade;
2.1.4.
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.
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:
(1)
=
=
(2)
(3)
12
(4)
=
(5)
Considerando:
n
3.2.
3.3.
Existem vrios mtodos para proceder ao balanceamento de uma linha de produo, dos
quais se destacam os seguintes:
13
Tentativa e erro;
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
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
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:
3.3.2.
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
16
rea de trabalho - lado da linha na qual essa tarefa deve ser atribuda.
Recursos - tarefas que requerem um recurso e, portanto, devem ser atribudas a uma
estao com esse recurso.
17
AVIX BALANCE
18
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.
3.4.
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.
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.
23
Cromossomas
Reproduo
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
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.
25
4.4.
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
26
4.4.1.1.
CODIFICAO BINRIA
Cromossoma A 101100101100101011100101
Cromossoma B 111111100000110000011111
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
FUNO DE AVALIAO
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.
CRUZAMENTO
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
28
SELECO
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%
4%
16%
A
B
48%
32%
C
D
30
Cromossoma
Aptido
Classificao
Probabilidade de
seleco
10%
50
40%
30
30%
15
20%
31
4.6.
CRITRIOS DE PARAGEM
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.
33
5.1.1.
34
5.1.2.
CODIFICAO
5.1.3.
Tarefa
Valor de codificao
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
Cromossoma
1 Troca
2 Troca
3 Troca
4 Troca
Gerado
5.1.4.
SELECO
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
100
(6)
CRUZAMENTO E MUTAO
38
Antes
Depois
Antes
Depois
Antes
Depois
39
(7)
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.
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
FUNO DE AVALIAO
CRITRIO DE PARAGEM
42
5.3.
INTERFACE DESENVOLVIDA
43
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.
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.
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
46
47
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
49
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
50
51
Aplicao Desenvolvida
Heursticas
Linha balanceada
ABECGDFH
ABCEDGFH
Eficincia
84,4%
84,4%
70 Segundos
70 Segundos
Folga da linha
5%
15,5%
4,90
16,7
Tempo de resoluo
4 ~ 5 Minutos
10 ~ 15 Minutos
6.2.
SEGUNDO TESTE
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
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%
42 Segundos
42 Segundos
Folga da linha
3,13 %
3,13%
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
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.
56
Aplicao Desenvolvida
Heursticas
Linha balanceada
ADCFEBGHIJK
ABDFCEGHIJK
Eficincia
75%
75%
90 Segundos
90 Segundos
Folga da linha
5,26%
25%
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
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
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
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
60
Aplicao Desenvolvida
Heursticas
Linha balanceada
ADCFEBGHIJK
ABDFCEGHIJK
Estaes de Trabalho
Eficincia
80%
80%
60 Segundos
60 Segundos
Folga da linha
13,04%
17.64%
6,50
10.86
Tempo de resoluo
30 Minutos
20 ~ 25 Minutos
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
64
Referncias Documentais
[1]
[2]
[3]
Jay Heizer, Barry Render, Production and Operations Management, Second ed.:
Allyn and Bacon, 1991.
[4]
[5]
[6]
[7]
[8]
[9]
[10]
65