• Nenhum resultado encontrado

Otimização de Parâmetros de um Algoritmo Genético

N/A
N/A
Protected

Academic year: 2021

Share "Otimização de Parâmetros de um Algoritmo Genético"

Copied!
8
0
0

Texto

(1)

Resumo — Atividades de planejamento e scheduling vêm recebendo atenção cada vez maior nos últimos anos, à medida que o ambiente competitivo têm levado as indústrias

à necessidade de otimização de seus recursos. Este trabalho se insere no projeto SMARt (Sistema Modular de Apoio à Decisão para a Otimização do Scheduling em Refinarias de

Petróleo), que tem como objetivo principal otimizar a programação de uma refinaria, utilizando um modelo baseado em Algoritmos Genéticos. Considerando que a

performance dos algoritmos genéticos é fortemente dependente do desempenho dos operadores genéticos, o

objetivo do presente trabalho é determinar a melhor configuração para os parâmetros dos operadores do problema em questão, considerando três diferentes cenários

reais de programação de produção da REFAP S.A.

Palavras Chaves — Parametrização, Otimização e Algoritmo

Genético.

Summary - Activities of planning and scheduling have been receiving increasing attention in recent years, as the competitive environment has led the industry to the need to optimize their resources. This work is part of the SMART project (Modular Decision Support for Optimization of Scheduling in Petroleum Refineries), which has as main objective to optimize the scheduling of a refinery, using a model based on Genetic Algorithms. Whereas the

performance of genetic algorithms is strongly dependent on the performance of genetic operators, the purpose of this study is to determine the best configuration for the parameters of the operators of the problem in question, considering three different scenarios of actual production schedule REFAP SA

Keywords - Benchmarking, Optimization and Genetic Algorithm.

I. INTRODUÇÃO

atual ambiente competitivo têm levado as indústrias à necessidade do gerenciamento otimizado de seus recursos para a obtenção de respostas rápidas às oportunidades e às incertezas da operação. Neste sentido, atividades de

planejamento e scheduling vêm recebendo atenção cada vez maior nos últimos anos.

Segundo Bodington (1995), os programadores de produção (schedulers) estão continuamente avaliando a capacidade do processo produtivo com as necessidades do negócio, reagindo diariamente à variabilidade do processo e do negócio. Assim, entende-se que a programação de produção enfatiza a viabilidade do processo, uma vez que através dela deve ser gerado um scheduling executável e capaz de projetar as conseqüências de possíveis quebras ou mudanças na programação.

São muitos os problemas práticos de programação da produção. Muitos deles partilham duas características importantes: são difíceis de resolver e quando boas soluções são encontradas elas trazem benefícios altamente tangíveis. Isto tem levado pesquisadores a buscar novas técnicas nos campos da Inteligência Artificial e na Pesquisa Operacional, as quais produzem resultados aproximados para uma classe geral de problemas ou soluções exatas para problemas específicos (Husbands e Mill, 1996).

Desta forma, o emprego de recursos computacionais direcionados a atividades como logística de distribuição, planejamento e programação da produção em refinarias de petróleo tem estado presente desde a década de 1950. Uma refinaria, em geral, processa um ou mais tipos de petróleo, produzindo uma série de produtos derivados, tratando-se, portanto, de um problema complexo de otimização devido ao número e diversidade de atividades existentes e aos diferentes e conflitantes objetivos.

Este trabalho se insere no projeto SMARt (Sistema Modular de Apoio à Decisão para a Otimização do Scheduling em Refinarias de Petróleo), que tem como objetivo principal otimizar a programação de uma refinaria na área anterior às unidades de destilação atmosférica (UDAs), mais especificamente, no terminal de recebimento e na área de estocagem de crus da refinaria. Esta otimização se concentra em dois pontos: a definição da melhor seqüência para a execução das tarefas dentro da refinaria e a definição da melhor configuração de mistura (blending) dos crus de modo a se obter um produto final dentro das especificações de qualidade definidas pelo comprador.

O modelo, baseado em algoritmos genéticos, foi desenvolvido para o scheduling do sistema de petróleos da Refinaria Alberto Pasqualini (REFAP S.A.), localizada em Canoas – RS, o qual é composto de terminal, oleoduto, área de estocagem de cru e pelas unidades de destilação atmosférica da refinaria.

A modelagem baseada em algoritmo genético consistiu na definição de uma representação do cromossomo e da função

Otimização de Parâmetros de um Algoritmo

Genético

Adriana Leiras

Pontifícia Universidade Católica do Rio de Janeiro aleiras@aluno.puc-rio.br

(2)

de avaliação que levasse em conta os objetivos prioritários para a atividade de programação de petróleo, optando-se pela representação que emprega cromossomo baseado em ordem. Foi utilizada a biblioteca de algoritmos genéticos GACOM, cujos operadores implementados para representações baseadas em ordem são: crossover de mapeamento parcial (PMX - partially mapped crossover), crossover de ordem (OX - order crossover), crossover de ciclo (CX - cycle crossover), mutação por troca (swap mutation) e mutação por inversão de posição (PI - position inversion) (Michalewicz, 1996).

Neste contexto, considerando que a performance dos algoritmos genéticos é fortemente dependente do desempenho dos operadores genéticos (Grefenstette, 1986; Gen e Cheng, 1996), o objetivo do presente trabalho é determinar a melhor configuração para os parâmetros dos operadores do problema em questão, considerando três diferentes cenários reais de programação de produção da REFAP S.A.

As próximas seções apresentam uma breve teoria sobre Algoritmos Genéticos (AG), o Estudo de Caso realizado, o projeto SMARt, os valores usados nos testes dos parâmetros, os resultados e, por fim, as conclusões.

II. ALGORITMOS GENÉTICOS

Algoritmos genéticos são métodos de busca estocástica, inspirados no princípio Darwiniano de evolução das espécies, cujo princípio é o de que a seleção privilegia os indivíduos mais aptos com maior longevidade e, portanto, com maior probabilidade de reprodução. Indivíduos com maior número de descendentes têm mais chance de perpetuarem seus códigos genéticos nas próximas gerações. Tais códigos constituem a identidade de cada indivíduo e estão representados nos cromossomos. Esses princípios são imitados na construção de algoritmos computacionais, que buscam uma melhor solução para um determinado problema por meio da evolução de populações de soluções codificadas através de cromossomos artificiais (Pacheco, et al., 1999).

Algoritmos genéticos diferem de técnicas de busca convencionais, uma vez que são inicializados com um conjunto inicial de soluções, chamado população. Cada indivıduo na população é chamado de cromossomo e representa uma possível solução para o problema. Os cromossomos evoluem através de iterações sucessivas (gerações) e durante cada geração, os mesmos são avaliados através de uma medida de aptidão. Para criar a nova geração, cromossomos descendentes são formados tanto pelo cruzamento entre dois cromossomos da mesma geração, utilizando um operador de crossover, quanto pela modificação de um cromossomo, usando um operador de

mutação. Uma nova geração é formada por: seleção, em

função dos valores de aptidão, de alguns “progenitores” e “descendentes” e pela rejeição dos demais, de modo a manter o tamanho da população constante. Após algumas gerações, o algoritmo converge para o melhor cromossomo, que deve representar a solução ótima ou subótima do problema (Gen & Cheng, 1996).

O operador crossover é inspirado na idéia da recombinação de material genético entre indivíduos. Como

mostrado na figura 3, o cruzamento ocorre após a seleção. Este operador é aplicado de forma probabilística nos indivíduos. Dois indivíduos são selecionados aleatoriamente e, de acordo com uma probabilidade pré-definida, seu material genético é recombinado ou não. Se isto ocorrer, dois novos indivíduos com material de ambos os progenitores são gerados; caso contrário, os dois indivíduos permanecem inalterados e são passados para a próxima geração (Dias, 2006).

O operador de mutação fornece ao algoritmo um comportamento exploratório, já que o induz a buscar novos pontos no espaço de busca. Se um algoritmo genético fosse desenvolvido baseando-se apenas em seleção e cruzamento, o sistema iria convergir prematuramente, já que o operador de cruzamento gera novos indivíduos de forma muito limitada após algumas gerações. Por isso, a mutação é essencial para manter a diversidade e renovar o material genético. Como a mutação altera a estrutura do cromossomo criando indivíduos com propriedades diferentes daquelas encontradas na maior parte da população, este evita que o modelo fique preso a um ótimo local. Por ser uma mudança extremamente agressiva e, até certo ponto, imprevisível quanto aos resultados, a taxa de aplicação deste operador é normalmente muito baixa (Dias, 2006).

III. ESTUDO DE CASO

Conforme já mencionado, o estudo de caso foi realizado na planta da REFAP S.A., que é composta de um terminal (Terminal Osório Dutra - TEDUT), localizado na cidade de Osório (RS), a refinaria em si (REFAP), localizada na cidade de Canoas (RS), e o oleoduto (OSCAN), por onde é realizada a transferência de petróleo bruto (cru) do terminal para a refinaria.

O problema real abordado envolve as seguintes operações:

- Recebimento de petróleo no terminal;

- Transferência do petróleo entre terminal e refinaria (operação de oleoduto);

- Recebimento do petróleo na área de estocagem de cru da refinaria;

- Determinação dos tanques de carga das unidades de destilação.

Este ambiente operacional é representado na Figura 1.

Figura 1: Sistema de Recebimento e Programação de Óleo Cru

(3)

(U-01 e U-50), uma unidade de destilação a vácuo (U-02) e uma unidade de craqueamento catalítico (U-03).

O suprimento de petróleo para a refinaria é realizado através de navios petroleiros, que descarregam seus conteúdos nos seis tanques do terminal (TEDUT). Destes tanques, o cru é bombeado para a área de armazenamento de crus da refinaria (REFAP), localizado a mais de 100 km de distância, através de um oleoduto (OSCAN). Uma vez no conjunto de tanques da refinaria (composto por seis tanques), o cru será processado por duas unidades de destilação atmosférica (UDA) e posteriormente processado por unidades de processamento adicionais para produzir os produtos derivados como gasolina, querosene de aviação, óleo combustível, dentre outros. Maiores detalhes operacionais da REFAP podem ser encontrados em Dias (2006) e Cruz (2007).

IV. SMART

O Sistema Modular de Apoio à Decisão para a Otimização do Scheduling em Refinarias de Petróleo (SMARt) recebe como entrada, para uma dada planta, um certo planejamento para os processos relativos a petróleos brutos (crus), e gera como saída a programação da produção, otimizada especificamente para tal planejamento.

A. Representação

O modelo evolucionário desenvolvido é formado por uma espécie composta por três segmentos, onde o primeiro segmento decide a tarefa a ser programada e os demais (atrelados ao primeiro) indicam quais recursos serão utilizados pela tarefa.

O segmento de tarefas (ST) é uma lista que determina a ordem na qual as tarefas devem ser programadas, onde cada gene representa um tipo de tarefa. Cada gene do segmento ST possui um ou dois segmentos de recursos (SR) associado(s) a ele, dependendo do tipo de tarefa. Para cada gene que representa uma tarefa de descarga de navio, existe um único segmento SR associado a ele, representando uma lista com os tanques do terminal, que constituem possíveis destinos para tal operação. As tarefas de carga em UDA, representadas nos genes de ST, também têm um único segmento SR associado, com a indicação da lista de tanques da refinaria (possíveis origens de cru para este tipo de tarefa). Finalmente, cada gene de ST representando uma tarefa de transferência pelo oleoduto tem a ele associado os dois tipos de segmento de recurso, indicando as possíveis origens de cru no terminal e os possíveis destinos, na refinaria. Cada gene dos segmentos de recursos (SR) corresponde a um tanque do terminal ou da refinaria e os mesmos encontram-se no segmento em ordem preferencial de alocação de tarefas (definida pelo algoritmo genético).

A Figura 2 apresenta um esquema da representação do indivíduo. TO ... DN CD1 TO CD2 TO CD1 DN TO ... CD2 ... CD2CD2 DNDN 01 13 12 11 02 15 01 13 12 11 02 15 X T O N U S X T O N U S S U N O T X S U N O T X U T X S O N U T X S O N 13 15 12 01 02 11 13 15 12 01 02 11 N S O X U T N S O X U T 15 01 02 11 12 13 15 01 02 11 12 13 T X S N U O T X S N U O 15 12 13 02 11 01 15 12 13 02 11 01 ... ... ... Segmento de tarefas (ST) Segmentos de recursos: –Tanques do terminal (SRT) –Tanques da refinaria (SRR) Segmentos de recursos: –Tanques do terminal (SRT) –Tanques da refinaria (SRR) Tipos de tarefas: DN – Descarga de Navio TO – Transferência pelo Oleoduto CD1 – Carga em UDA 1 (U-01) CD2 – Carga em UDA 2 (U-50)

Figura 2: Representação do indivíduo (cromossomo)

A representação do tempo adotada foi a divisão das quantidades transferidas em cada uma das tarefas, ao invés da discretizacão do tempo. Para tal, definiu-se um lote que corresponde ao volume a ser transferido por cada tarefa.

B. Decodificação

A solução obtida por esta abordagem é uma programação, sob a forma de uma listagem diária de ordens de tarefas, gerada ao se decodificar o cromossomo do indivíduo que representa a melhor solução para o problema.

A decodificação de cada solução é feita através da leitura seqüencial de todos os genes do segmento ST e dos genes de seus respectivos segmentos SR, respeitando as regras operacionais consideradas no modelo. Cada tarefa contempla um lote por vez e só é programada caso tenha recursos disponíveis para atendê-lo.

Entre as regras operacionais consideradas no modelo, pode-se citar:

- Operação de linhas submarinas; - Propriedades de misturas de petróleos; - Operação de oleoduto;

- Tempo mínimo de carga para as unidades de destilação; - Limitações de composição de petróleos nas unidades; - Campanhas de unidades baseadas em qualidade de carga.

Maiores detalhes das regras operacionais consideradas no modelo podem ser encontrados em Dias (2006) e Cruz (2007).

C. Avaliação

A função de avaliação considerou os objetivos descritos a seguir:

- Atendimento à demanda de crus das UDAs (m

3

): as demandas devem ser atendidas sem atraso, pois as UDAs, que devem operar ininterruptamente, são responsáveis por fornecerem as correntes que originam os produtos da refinaria (deve ser maximizado).

- Tempo de sobreestadia de navios - demurrage (h): descargas de navios que duram mais de 30 horas incorrem em multas altas e, portanto, devem ser evitadas (dever ser minimizado).

- Número de trocas de tanques: Cada troca de tanque dentro de uma mesma tarefa representa um acréscimo ao custo operacional e, portanto, o numero total de vezes que estas trocam ocorrem durante a programação deve ser minimizado.

(4)

qual o oleoduto ficou inoperante, sem receber e enviar óleo do terminal para a refinaria. Este valor deve ser minimizado.

Estes objetivos devem ser quantificados a fim de obter um valor numérico de avaliação do indivíduo, ou seja, sua aptidão. Quando múltiplas medidas de desempenho são necessárias para a avaliação da qualidade das soluções, torna-se necessária a definição da combinação dessas diferentes medidas, de maneira a fornecer e quantificar a melhor solução. A esse tipo de problema aplicam-se, normalmente, os chamados “métodos para agregação de múltiplos objetivos”.

Para combinar os quatro objetivos do problema de programação da área de crus da REFAP utilizou-se a técnica de “distância do valor ao alvo”, que exige que sejam conhecidos valores para cada alvo referente a cada um dos objetivos mencionados. Alem disso, a normalização desses valores também é fator relevante para o bom desempenho do método. Estas condições foram determinadas da seguinte maneira:

- O nível de atendimento a demanda é normalizado entre 0 e 1, usando-se como valor máximo o volume de óleo que deve ser carregado nas UDAs ao longo do horizonte de planejamento;

- O custo por atraso na descarga dos navios é normalizado entre 0 e 1 usando-se como valor máximo o número total de horas do horizonte de planejamento menos o tempo máximo para demurrage de cada navio;

- O número de trocas de tanques realizadas é normalizado entre 0 e 1, usando-se como valor máximo o número máximo de tarefas que o algoritmo genético pode programar dentro do horizonte de planejamento;

- O número de horas no qual o oleoduto ficou inoperante é normalizado entre 0 e 1, usando-se como valor máximo o número total de horas do horizonte de planejamento que se quer otimizar.

Desta forma, o ponto ótimo no espaço de buscas (se não houvessem as restrições do problema) tem coordenadas

fótimo=(1,0,0,0) e a função de avaliação final consiste em

minimizar a distância de uma solução qualquer ao ponto ótimo.

Os objetivos anteriormente apresentados têm iguais pesos na função de avaliação, com exceção do tempo de sobreestadia que tem peso 2.

D. Operadores

Os operadores utilizados em todos os segmentos dos indivíduos são operadores de problemas de ordem. Foram definidos três operadores de crossover e dois operadores de mutação para o problema, de acordo com (Michalewicz, 1996), descritos a seguir:

- Crossover de mapeamento parcial (Partially Mapped Crossover - PMX): constrói descendentes através da seleção de uma subseqüência de um genitor, mantendo a ordem e a posição do maior número de genes possível do outro genitor. Esta subseqüência é escolhida selecionando-se dois pontos de corte aleatoriamente. - Crossover de ordem (Order Crossover - OX): constrói os

descendentes selecionando uma subseqüência de um genitor e preservando a ordem relativa dos genes do outro genitor. Para o operador OX a ordem dos genes é o fator mais importante e não a sua posição.

- Crossover de ciclo (Cycle Crossover - CX): constrói descendentes de modo que cada valor e a sua posição venham de um dos genitores.

- Mutação por troca (swap mutation): seleciona dois genes aleatoriamente e troca suas posições.

- Mutação por inversão de posição (PI - position inversion): seleciona dois pontos de corte no cromossomo e inverte os elementos situados entre estes dois pontos.

Vale lembrar que o algoritmo foi desenvolvido utilizando o GACOM, uma biblioteca desenvolvida pelo ICA que permite desenvolver programas utilizando técnicas de computação evolucionária. O GACOM só aplica um operador por vez, sorteado com igual chance entre todos os operadores. Os parâmetros de cada operador determinam a probabilidade do operador escolhido ser efetivamente aplicado nos indivíduos selecionados.

E. Implementação Computacional do Smart

A Figura 3 mostra como as partes do algoritmo de otimização se relacionam entre si. O Algoritmo Genético é a heurística principal deste modelo. O Decodificador, junto com as Heurísticas de Otimização, é responsável por transformar as soluções codificadas geradas pelo algoritmo genético em uma programação para a refinaria, que pode ser avaliada pelo Avaliador de Soluções em termos de custo de execução e qualidade do óleo que chega à unidade de destilação atmosférica. A base de dados armazena informações sobre a planta da refinaria (número de tanques, linhas submarinas, chegada de navios, campanhas da UDA) e sobre o estado inicial desta planta (estoque de óleo nos tanques e dutos).

Figura 3: Diagrama Geral do SMARt

A base de dados consiste de um arquivo XML que deve ser definido pelo usuário e que será lido pelo SMARt antes do início do processo de otimização. Este arquivo define a planta da refinaria para a qual se quer otimizar a programação e o estado inicial da mesma com relação aos produtos que estão estocados nela.

V. PARÂMETROS DO ALGORITMO GENÉTICO

(5)

controle do processo evolucionário e podem ser classificados em:

- Tamanho da população: indica o numero de indivíduos de cada população, ou seja, o número de pontos do espaço de busca. Neste trabalho, o tamanho da população foi fixado em 100 indivíduos, baseado nos trabalhos de Cruz (2003), Simão (2004) e Cruz (2007). - Número de gerações: total de ciclos de evolução de um

algoritmo genético. Admitiram-se os valores: 400 gerações e 4 experimentos, baseado em Cruz (2007). O arquivo de saída do SMARt apresenta a média dos experimentos para cada uma das parcelas da função de avaliação, bem como da aptidão final, em cada uma das gerações.

- Total de indivíduos: número total de tentativas (tamanho da população x numero de gerações).

- Taxa de crossover: probabilidade de recombinação entre indivíduos;

- Taxa de mutação: probabilidade de cada gene do cromossomo sofrer modificação;

Determinou-se a melhor configuração de parâmetros para o problema com base em testes, considerando combinações entre os parâmetros e as taxas, cujos valores são mostrados na Tabela 1.

TABELA 1

COMBINAÇÃO DE PARÂMETROS DO ALGORITMO GENÉTICO Oper. Combinação de Taxas Inicial e Final

PMX 0,9-0,7 / 0,8-0,5 / 1-0,6 / 0,4-0 OX 0,9-0,7 / 0,8-0,5 / 1-0,6 / 0,4-0 CX 0,9-0,7 / 0,8-0,5 / 1-0,6 / 0,4-0 SWAP 0,05-0,1 / 0,05-0,3 / 0,05-0,5 / 0,1-0,5 PI 0,05-0,1 / 0,05-0,3 / 0,05-0,5 / 0,1-0,5

As duas primeiras combinações de operadores de crossover e as três primeiras de mutação também foram testadas por Cruz (2007).

Os dados da Tabela 1 fornecem um total de 1.024 combinações possíveis.

Para todas as execuções considerou-se o uso do elitismo (Steady State - que realiza a troca parcial da população, isto é, substitui os piores individuas da população corrente), com um GAP de 25%. Além o “RunSeedRate” (passa os x% melhores indivíduos de uma rodada para outra) foi considerado igual a zero.

Os testes foram executados considerando 3 diferentes cenários reais de planejamento da REFAP com as seguintes datas: 02/06/2003 (Cenário 1), 09/06/2003 (Cenário 2) e 02/07/2003 (Cenário 3). Desta forma, o número total de testes foi de 3.072, sendo 1.024 para cada cenário.

As principais características de cada cenário estão resumidas na Tabela 2.

TABELA 2

PRINCIPAIS CARACTERÍSTICAS DOS CENÁRIOS

CN1 CN2 CN3 02/06/03 09/06/03 02/07/03 Volume Planejado (m3) 126.000 175.167 150.625 Horizonte de Programação (h) 199 279 329 Número de Navios 2 1 1 Volume a Descarregar (m3) 211.000 70.000 40.000

Em função das diferentes características apresentadas na Tabela 2 pode-se mensurar os diferentes graus de dificuldade de programação para cada um dos cenários. Por exemplo, a tarefa de descarregamento de navio tem sua programação dificultada no cenário de 02/06/2003, onde se tem mais de um navio de grande volume a descarregar. Já nos cenários de 09/06/2003 e 02/07/2003 esta tarefa não deve representar grande desafio para o algoritmo, dado o menor volume a descarregar e o horizonte de programação maior que nos dois primeiros casos.

VI. RESULTADOS

Para a implementação dos testes foi desenvolvido um programa em Access, da Microsoft Office. O programa gera, para cada uma das combinações de parâmetros, um arquivo de entrada (base de dados XML) que é lido pelo SMARt. Este, por sua vez, gera um arquivo de saída SMT, que é lido pelo Access, gerando uma tabela com os valores médios dos 4 objetivos de otimização, além da aptidão final, para as 400 gerações de cada teste. Este processo é esquematizado na Figura 4.

Figura 4: Processo de Geração dos Testes

A tabela de saída apresenta, portanto, 1.228.800 registros, que correspondem aos valores das 400 gerações de cada um dos 3.072 testes.

Cada teste consumiu um tempo computacional médio de cerca de 10 minutos, totalizando 30.720 minutos (21,33 dias) de simulação.

A partir da análise das soluções geradas foi possível identificar, com base nos valores médios para as 400 gerações da função de avaliação e de suas parcelas, as configurações que originaram os melhores resultados para cada um dos cenários. Estas configurações são mostradas na Tabela 3.

TABELA 3

MELHOR COMBINAÇÃO DE PARÂMETROS PARA CADA CENÁRIO

Parâmetro CN1 CN2 CN3 PMX 0,9-0,7 0,4-0 0,4-0 OX 0,8-0,5 1-0,6 0,9-0,7 CX 0,9-0,7 0,9-0,7 1-0,6 SWAP 0,05-0,3 0,05-0,1 0,05-0,5 PI 0,1-0,5 0,05-0,1 0,05-0,1

A Tabela 4 apresenta os resultados da função de avaliação e de cada uma de suas parcelas para a melhor configuração de cada cenário.

TABELA 4

RESULTADOS DA FUNÇÃO DE AVALIAÇÃO PARA A MELJOR CONFIGURAÇÃO

(6)

Função de Avaliação 3,918 4,558 4,472 Atendimento à demanda (m3) 98.394,48 123.046,66 109.703,54 Tempo de sobreestadia(h) 11,40 0,51 2,53 Número de trocas 38,48 37,07 17,99 Tempo ocioso de oleoduto (h) 84,49 204,73 258,64

Pela análise da Tabela 4 fica clara a melhor avaliação do cenário 1. De fato, dos 3.072 testes realizados, as 756 melhores avaliações são do cenário 1. A primeira melhor avaliação do cenário 2 só aparece na 769º posição, enquanto que a do cenário 3 aparece na 757º posição.

Apesar da tarefa de descarregamento de navio ter sua programação dificultada no cenário 1, o baixo tempo de ociosidade do duto frente aos demais cenários garantiu os melhores resultados para este cenário. Além disso, o atendimento à demanda no cenário 1 (78,09%) foi bem superior aos cenários 2 e 3 (70,25% e 72,83%, respectivamente). Isto se deve, em parte ao horizonte de programação maior que o do cenário 1.

Destaca-se ainda da Tabela 4, os baixos tempos de sobreestadia obtidos nos cenários 2 e 3, resultado de um menor volume a descarregar em um horizonte de programação longo.

O anexo I apresenta a evolução de cada um dos objetivos, bem como da avaliação final, para as melhores configurações de cada cenário.

Uma vez determinada a melhor configuração para cada cenário, foram variados o GAP usado para o elitismo e o “RunSeedRate” (taxa de passagem dos x% melhores indivíduos de uma rodada para outra). Os valores testados e os resultados obtidos são apresentados nas Tabelas 5 e 6 e nas Figuras 5 e 6.

TABELA 5

COMBINAÇÃO DE PARÂMETROS PARA O STEADY STATE

Steady State Combinação de Taxas Inicial e Final ST1 0,25-0,25 ST2 0,1-0,1 ST3 0,35-0,35 ST4 0,5-0,5

GAP - Steady State

3 3 4 4 5 5 5 6 Gerações A v a li a ç ã o CN1 CN2 CN3 CN1 3,918022401 4,214130484 3,982066392 3,917964539 CN2 4,557605899 4,054237848 3,21556862 4,04345425 CN3 4,471887667 4,711857585 4,739194702 4,65211482 ST1 ST2 ST3 ST4

Figura 5: Combinação de Parâmetros para o Steady State

TABELA 6

COMBINAÇÃO DE PARÂMETROS PARA O RUN SEED RATE

Run Seed Rate Taxa Run Seed Rate Taxa RS01 0,0 RS07 0,6 RS02 0,1 RS08 0,7 RS03 0,2 RS09 0,8 RS04 0,3 RS10 0,9 RS05 0,4 RS11 1,0 RS06 0,5 RunSeed Rate 3 3 4 4 5 5 5 6 Gerações A v a li a ç ã o CN1 CN2 CN3 CN1 3,918 3,898 3,942 4,016 3,831 3,776 3,844 3,897 3,834 3,88 3,928 CN2 4,558 4,284 4,443 4,516 4,184 4,146 4,773 4,732 4,388 4,456 3,934 CN3 4,472 4,49 4,535 4,754 4,761 4,756 4,678 4,518 4,762 4,621 4,583 RS01 RS02 RS03 RS04 RS05 RS06 RS07 RS08 RS09 RS10 RS11

Figura 6: Combinação de Parâmetros para o RunSeedRate

Como pode ser observado pela Figura 5, o GAP de 0,5 para o elitismo gerou melhor resultado para o cenário 1, o de 0,35 gerou melhor resultado para o cenário 2 e o de 0,25 para o cenário 3.

Já pela Figura 6, conclui-se que o RunSeedRate de 0,5 foi o melhor para o cenário 1, o de 1,0 foi o melhor para o cenário 2 e o de 0,0 foi o melhor para o cenário 3.

No entanto, em ambos os casos, o desvio-padrão entre a pior e a melhor combinação foi pequeno, o que mostra pouca influência destes parâmetros na avaliação final.

VII. CONCLUSÃO

Pelas análises realizadas, conclui-se que a performance dos algoritmos genéticos é fortemente dependente do desempenho dos operadores genéticos e que, por isso, o teste dos parâmetros do problema é de fundamental importância para a qualidade das soluções desejadas.

REFERÊNCIAS

[1] BODINGTON, C. E. (1995), Planning, Scheduling and Control Integration in the Process Industries, Mc Graw-Hill, New York. [2] CRUZ, A. V. A. (2003), Otimização do Planejamento com Restrições

de Precedência usando Algoritmos Genéticos e Co-Evolução Cooperativa, Dissertação de Mestrado, Programa de Engenharia Elétrica, PUC-RJ, Rio de Janeiro.

[3] CRUZ, D. D. S. (2007). Programação da Produção em Refinaria usando Algoritmos Genéticos: Um Estudo para o Caso de Scheduling de Petróleos. Dissertação de Mestrado, Programa de Pós-Graduação em Engenharia Produção, COPPE/UFRJ, Rio de Janeiro.

[4] DIAS, D. M. (2006), Aplicação de Algoritmos Genéticos no Scheduling Automático e Otimizado do Petróleo em Refinarias. Relatório de Estudo Orientado, PUC-Rio, Departamento de Engenharia Elétrica.

[5] GEN, M. e CHENG, R. (1996), Genetic Algorithms & Engineering Design, John Wiley & Sons, Inc., New York.

(7)

[7] HUSBANDS, P. e MILL, F (1996), Scheduling With Genetic Algorithms. AISB Quaterly, n. 89.

[8] MICHALEWICZ, Z. (1996), Genetic Algorithms + Data Structures = Evolution Programs, Springer-Verlag, New York.

[9] PACHECO, M. A. C., VELLASCO, M. M. B. R. e LOPES, C. H. (1999), ‘Descoberta de Conhecimento e Mineração de Dados’, PUC-Rio, Departamento de Engenharia Elétrica.

[10] SIMÃO, L. M. (2004), Otimização da Programação da Produção em Refinarias de Petróleo utilizando Algoritmos Genéticos e Co-evolução Cooperativa, Dissertação de Mestrado, Programa de Engenharia Elétrica, PUC-RJ, Rio de Janeiro.

(8)

Referências

Documentos relacionados

[r]

O levantamento dos diversos cenários e a caracterização do processo de geração de energia e combustível renovável, fornecem resultados amplamente utilizados para

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

Ninguém quer essa vida assim não Zambi.. Eu não quero as crianças

Este desafio nos exige uma nova postura frente às questões ambientais, significa tomar o meio ambiente como problema pedagógico, como práxis unificadora que favoreça

c.4) Não ocorrerá o cancelamento do contrato de seguro cujo prêmio tenha sido pago a vista, mediante financiamento obtido junto a instituições financeiras, no

Os autores relatam a primeira ocorrência de Lymnaea columella (Say, 1817) no Estado de Goiás, ressaltando a importância da espécie como hospedeiro intermediário de vários parasitos