[pt] OTIMIZAÇÃO DE PLANEJAMENTOS COM RESTRIÇÃO DE PRECEDÊNCIA USANDO ALGORITMOS GENÉTICOS E CO-EVOLUÇÃO COOPERATIVA - ANDRE VARGAS ABS DA CRUZ (2003)
[pt] Esta dissertação investiga o uso de Algoritmos Genéticos e de Co-Evolução Cooperativa na otimização de problemas de planejamento com restrições de precedência. Neste tipo de problema algumas ou todas as tarefas têm restrições que implicam na necessidade de planejá-las ou executá-las antes ou depois de outras. Por esta razão, o uso de modelos evolucionários convencionais como, por exemplo, os baseados em ordem pode gerar soluções inválidas, não penalizáveis, que precisam ser descartadas, comprometendo assim o desempenho do algoritmo. O objetivo do trabalho foi, portanto, estudar formas de representação de soluções para este tipo de problema capazes de gerar somente soluções válidas, bem como avaliar o desempenho dos modelos propostos. O trabalho consistiu de 3 etapas principais: um estudo sobre problemas de otimização de planejamento com algoritmos genéticos; a definição de novos modelos usando algoritmos genéticos e co-evolução cooperativa para otimização de problemas de planejamento com restrições de precedência e a implementação de uma ferramenta para estudo de caso. O estudo sobre os problemas de otimização de planejamentos com algoritmos genéticos envolveu o levantamento de representações, dificuldades e características deste tipo de problema e, mais especificamente, de representações baseadas em ordem. A modelagem do algoritmo genético consistiu fundamentalmente na definição de uma representação dos cromossomas e da função da avaliação que levasse em conta a existência de restrições de precedência (tarefas que devem ser planejadas/executadas antes de outras). A construção do modelo co-evolucionário por sua vez consistiu em definir uma nova população, com uma outra representação, que se responsabilizasse pela distribuição dos recursos para execução das tarefas, responsabilidade esta que, no modelo com algoritmos genéticos convencionais, era tratada de forma simples por um conjunto de heurísticas. Finalmente, desenvolveu-se uma ferramenta para implementar estes modelos e tratar de um estudo de caso complexo que oferecesse as características necessárias para testar a qualidade das representações e avaliar os resultados. O estudo de caso escolhido foi a otimização do planejamento da descarga, armazenamento e embarque de minério de ferro de modo a minimizar o tempo de estadia dos navios em um porto fictício. Foram realizados vários testes que demonstraram a capacidade dos modelos desenvolvidos em gerar soluções viáveis, sem a necessidade de heurísticas de correção, e os resultados obtidos foram comparados com os de um processo de busca aleatória. Em todos os casos, os resultados obtidos pelos modelos foram sempre superiores aos obtidos pela busca aleatória. No caso do modelo de representação com uma única população obteve-se resultados até 41% melhores do que com os obtidos por uma busca aleatória. No caso do modelo de representação com co-evolução o resultado ficou 33% melhor que a busca aleatória com tratamento de solução idêntico ao da solução co-evolucionária. Os resultados da co-evolução comparados com o algoritmo genético com uma única espécie foram 29% melhores.