CAPÍTULO 4

RESULTADOS NUMÉRICOS

Neste capítulo são apresentados os resultados numéricos decorrentes da aplicação da versão computacional do modelo discutido no Capítulo 3.

Este capítulo desenvolve-se dos tópicos básicos, onde são apresentadas as diversas características dos problemas testados e a determinação dos valores empregados nos parâmetros do algoritmo genético, até a apresentação dos resultados obtidos.

4.1 Características dos Problemas Testados

A fim de testar o desempenho do modelo, 26 diferentes problemas coletados da literatura foram empregados, cujos dados são mostrados no Anexo I. O número de atividades nestes problemas varia entre 7 e 80. Os tipos de recursos empregados variam de 2 a 10 e o número médio de modos de execução por atividade para cada projeto varia entre 1,14 e 2,87. A complexidade das redes varia entre 5,78 e 69,82.

Por outro lado, seguindo a divisão sugerida por Boctor (1990), os projetos foram divididos em dois grupos: problemas pequenos, para projetos com número total de atividades menores de 30 e problemas grandes, para redes com número de atividades maior ou igual a 30. Dentro desta classificação, 7 projetos são considerados grandes e 19 são pequenos.

A Tabela 4.1 resume as características de cada um dos problemas empregados no experimento.

4.2 Parâmetros do Algoritmo Genético

Como já foi salientado no Capítulo 3, a determinação dos valores apropriados dos parâmetros do algoritmo genético é um processo de tentativa e erro. Na presente aplicação os testes foram efetuados com um único intuito, adequar os valores reconhecidos na literatura aos problemas experimentados.

Neste sentido, a Tabela 4.2 mostra as diferentes combinações do número de gerações e tamanho de população experimentados.

TABELA 4.1 CARACTERÍSTICAS DOS PROBLEMAS TESTE

Para avaliar a sensibilidade do modelo a estes parâmetros e encontrar a melhor combinação, quatro problemas foram selecionados. Dois projetos pequenos (problemas 25 e 26) com diferentes graus de complexidades e, dois projetos considerados grandes (problemas 6 e 24). Três dos quatro problemas escolhidos possuem solução ótima conhecida. O número de vezes, de um total de 5 execuções por projeto, em que a solução ótima foi atingida, além da análise do incremento da qualidade das soluções obtidas em relação ao tempo computacional empregado, determinou o valor dos parâmetros a serem empregados. Para o caso do problema que não tem solução ótima conhecida, optou-se pela análise do número de vezes que a menor solução foi obtida. Os resultados são ilustrados na Tabela 4.3.

TABELA 4.2 NÚMERO DE GERAÇÕES E TAMANHO DE POPULAÇÃO EXPERIMENTADAS

TABELA 4.3 CONTAGEM DO NÚMERO DE VEZES QUE O ÓTIMO FOI ATINGIDO

Exceto para os problemas 3, 9, 11 e 25 nos quais a combinação geração = 20 e população = 200, apresentou desempenho superior relativo à qualidade das respostas obtidas. Para o resto do experimento foi empregada a combinação 20/100.

Os resultados obtidos, para o total dos experimentos executados, mostraram que o operador de cruzamento CX é mais sensível ao aumento do tamanho da população do que ao incremento no número de gerações. Este comportamento, observado para o teste piloto efetuado com os quatro problemas citados, foi constatado também nas execuções de outros projetos selecionados aleatoriamente no decorrer dos testes. Ficou evidente, através dos resultados observados, que o operador é sensível à qualidade dos elementos da população inicial. Uma das principais desvantagens deste operador, relatadas na literatura, é a convergência muito rápida para soluções (imaturas) sub-ótimas. Entretanto, esta desvantagem não foi evidenciada no decorrer da experiência. Acreditamos que a utilização do Fator Ponderado de Utilização dos Recursos (FPUR), contribuiu para propiciar uma discriminação maior dos elementos das populações, evitando assim, a dominância nas primeiras gerações dos elementos mais aptos.

Os valores empregados para as probabilidades de cruzamento e de mutação, para todos os experimentos, foram Pc = 0.99 e Pm = 0.001. A taxa de elitismo empregada foi 10% da população.

4.3 Medidas de Desempenho para o Modelo

Como mencionado no Capítulo 3, a eficiência do modelo é baseada na comparação da melhor duração final observada para o projeto com os resultados publicados nos estudos de Badiru (1988) e Li e Willis (1992).

Cabe ressaltar que o modelo foi aplicado aos 26 projetos utilizados no experimento, para cada um dos dois conjuntos de testes definidos na seção 3.5.2, totalizando 52 problemas. Cada problema foi processado cinco vezes, representado um total de 260 observações.

Além das tradicionais medidas de desempenho relatadas na seção 3.5.3 do Capítulo 3, a seguinte medida também foi empregada:

Taxa de Eficiência Heurística (Badiru 1988). Para cada regra m, a taxa para cada problema teste é dada por:

, m = 1,2,..., M, n = 1,2,...,N (4.1)

onde,

r mn = taxa de eficiência da regra m para o problema n,

qn = minm {Plmn}

duração mínima de projeto observada para o problema n,

PLmn = duração do projeto para o problema teste n aplicando a regra m,

M = número de regras heurísticas consideradas,

N = número de problemas testes.

Se a duração mínima global de um projeto é conhecida, então ela é empregada na expressão rmn substituindo o valor de qn.

A taxa de melhoria da duração mínima obtida pelo modelo relativamente à melhor heurística relatada nos estudos referenciados, foi calculada como:

(4.2)

onde,

Dn = taxa de melhoria;

DHn = duração do projeto n para a melhor heurística reportada;

DAGn = menor duração observada para o projeto n, obtida através do modelo proposto.

Por outro lado, é calculada a taxa de atraso de cada projeto, da forma definida na seção 3.5.3 como:

(4.3)

onde,

An = taxa de atraso;

DCCn = duração do projeto n calculado sem restrição de recursos;

DAGn = menor duração observada para o projeto n, obtida através do modelo proposto.

Visando medir a melhoria da solução encontrada pelo modelo proposto (para o caso de modo único) em relação ao emprego de múltiplos modos, foi adotado o critério:

(4.4)

onde,

SMn = taxa de melhoria com múltiplos modos;

DMMn = duração do projeto n calculado para o caso de múltiplos modos;

DUMn = menor duração observada para o projeto n, obtida através do modelo proposto para o modo único.

O uso da soma para cada uma das taxas rmn, Dn, An, e SMn é uma abordagem prática que permite avaliar o desempenho do modelo sobre o total dos problemas experimentados.

Os valores numéricos destes cálculos são relatados na seguinte seção.

4.4 Resultados Numéricos da Comparação

Os problemas testados foram divididos em dois grupos, de acordo com a procedência dos resultados a serem comparados: o primeiro grupo envolvendo os problemas testados por Badiru (1988) e o segundo grupo, os problemas experimentados por Li e Willis (1992). As tabelas 4.4 e 4.5 mostram a comparação das durações dos projetos encontradas pelo algoritmo e as durações relacionadas a cada uma das heurísticas estudadas por estes autores.

As tabelas 4.6 e 4.7 ilustram a comparação das taxas de eficiência para os dois grupos de problemas experimentados.

Cabe notar que, inicialmente, todos os problemas foram processados considerando um único modo de execução para as atividades. Em seguida o modelo foi aplicado para o caso de múltiplos modos e calculadas as taxas de melhoria da solução em relação ao único modo. Também foi registrado o incremento, em termos relativos, do tempo computacional empregado para processar cada uma das opções.

A tabela 4.8 ilustra uma compilação das diversas durações encontradas para os projetos. A coluna da melhor heurística representa a duração mínima, reportada nos trabalhos referenciados, para o problema em questão. A duração sem restrição foi determinada usando o método tradicional do Caminho Crítico, relaxando os limites impostos aos recursos. A duração obtida pelo modelo é ilustrada na quinta coluna. Esta duração representa a mínima observada para as cinco iterações realizadas com cada problema, desde que o número de vezes em que ela foi obtida, tenha sido igual ou superior a dois. A tabela é completada com duas colunas que mostram a duração média de projeto, observada no processamento do algoritmo, para os casos de único e múltiplos modos.

Baseado nestes dados é calculada a taxa de melhoria da qualidade da solução do problema, obtida por meio do algoritmo proposto, em relação à heurística de desempenho superior para cada problema, como ilustrado na Tabela 4.9.

Por outro lado, a Tabela 4.10 mostra a melhoria das soluções dos problemas, obtidas pela aplicação do modelo em relação a melhor heurística global reportada em cada um dos estudos referenciados (baseado nas conclusões de Badiru e Li e Willis).

TABELA 4.4 COMPARAÇÃO DAS DURAÇÕES SOB RESTRIÇÃO DE RECURSOS PARA DIFERENTES REGRAS DE PRIORIDADE - ESTUDO DO BADIRU (1988)

TABELA 4.5 COMPARAÇÃO DAS DURAÇÕES SOB RESTRIÇÃO DE RECURSOS PARA DIFERENTES REGRAS DE PRIORIDADE - ESTUDO DE LI E WILLIS (1992)

TABELA 4.6 COMPARAÇÃO DA TAXA DE EFICIÊNCIA DE REGRA RM N CONJUNTO DE PROBLEMAS I

TABELA 4.7 COMPARAÇÃO DA TAXA DE EFICIÊNCIA DE REGRA RM N - CONJUNTO DE PROBLEMAS II

TABELA 4.8 COMPARAÇÃO DAS DURAÇÕES PARA OS PROBLEMAS TESTE

TABELA 4.9 TAXAS DE MELHORIA DA SOLUÇÃO EM RELAÇÃO À MELHOR HEURÍSTICA

TABELA 4.10 TAXAS DE MELHORIA DA SOLUÇÃO EM RELAÇÃO À MELHOR HEURÍSTICA GLOBAL

O desempenho do modelo em relação ao tamanho dos problemas experimentados é ilustrado nas Tabelas 11 e 12.

TABELA 4.11 TAXAS DE MELHORIA DA SOLUÇÃO CONSIDERANDO O TAMANHO DOS PROBLEMAS - CONJUNTO DE PROBLEMAS GRANDES

TABELA 4.12 TAXAS DE MELHORIA DA SOLUÇÃO CONSIDERANDO O TAMANHO DOS PROBLEMAS - CONJUNTO DE PROBLEMAS PEQUENOS


A Tabela 4.13 apresenta o desvio das soluções obtidas pelo modelo e pela melhor heurística em relação à duração dos problemas sem a imposição de limites nos recursos (medição da taxa de atraso do projeto).

TABELA 4.13 TAXA DE ATRASO DE PROJETO UTILIZANDO O MODELO E A MELHOR HEURÍSTICA

A eventual melhoria das soluções obtidas para os projetos processados de uma única forma e considerando múltiplos modos, é ilustrada na Tabela 4.14.

TABELA 4.14 MELHORIA DAS SOLUÇÕES OBTIDAS PELO MODELO CONSIDERANDO MÚLTIPLOS MODOS

As Tabelas 4.15 e 4.16 mostram o número de soluções ótimas na geração final, iguais do ponto de vista da função objetivo, porém diferentes em relação ao nivelamento dos recursos, bem como a variação entre o melhor e o pior valor do Fator Ponderado de Utilização de Recursos destas soluções, para os casos de único-modo e multi-modos respectivamente.

TABELA 4.15 VARIAÇÃO DO FATOR PONDERADO DE UTILIZAÇÃO DE RECURSOS - CASO ÚNICO MODO

TABELA 4.16 VARIAÇÃO DO FATOR PONDERADO DE UTILIZAÇÃO DE RECURSOS - CASO MÚLTIPLOS MODOS

O tempo computacional empregado para a solução de cada um dos problemas experimentados está relacionado na Tabela 4.17. Os tempos médios de CPU (486/66mhz) registrados correspondem à combinação de parâmetros do algoritmo genético que apresentou melhor desempenho para a solução de cada um dos projetos.

Entretanto, cabe salientar que a intenção de usar o tempo computacional como critério de desempenho não é o de comparar diferentes heurísticas. No presente trabalho, os objetivos principais de medir o tempo empregado foram: avaliar o desempenho do modelo quanto às características dos projetos experimentados e comparar as soluções usando modo único versus o emprego de múltiplos modos.

TABELA 4.17 TEMPOS DE CPU PARA OS PROBLEMAS EXPERIMENTADOS

Finalmente, a Tabela 4.18 ilustra o tempo computacional médio discriminado por tamanho e complexidade dos problemas testados.

TABELA 4.18 TEMPOS DE CPU SEGUNDO AS CARACTERÍSTICAS DOS PROBLEMAS EXPERIMENTADOS - ÚNICO MODO