• Nenhum resultado encontrado

veículos e tripulantes sem changeovers “O bom estrategista, para vencer uma batalha, faz antes muitos cálculos no seu templo, pois sabe que eles

3.3 Abordagens heurísticas para o MCP e o SPP

Como já foi ressaltado, o MCP pertence à classe de problemas NP-difícil. Como o foco do presente trabalho é a aplicação do MCP em problemas de scheduling em sistemas de transporte público, problemas nos quais a matriz A geralmente possui centenas de linhas e milhares de colunas, o uso de métodos exactos se mostra, por isso, pouco atrativo.

Assim, serão analisadas, de seguida, algumas abordagens heurísticas para o MCP e para o SPP encontradas na literatura. Com base nestes estudos reportados na literatura, será proposta uma heurística para o MCP aplicado ao VCSP sem

changeovers.

Teitz e Bart (1968) apresentam uma heurística para o problema de p-medianas, o qual tem forte relacção com o MCP. A filosofia do algoritmo de Teitz e Bart é a seguinte: dado um grafo ponderado, com vértices que fazem parte da solução e outros que não fazem, deve-se trocar iterativamente tais vértices, de modo a obter melhorias na função de avaliação. Tal procedimento é a base dos algoritmos de melhoria de soluções utilizados por diversos outros autores que abordam o MCP.

O problema de p-medianas pode ser modelado como um grafo no qual os nós correspondem aos clientes (aos quais são associados um valor de procura) e às potenciais facilidades que devem atendê-los. Os arcos representam os custos de ligações entre os vértices. O problema consiste em determinar um subconjunto de vértices a atender os demais vértices, ao menor custo possível. Percebe-se que o problema de p- medianas objectiva cobrir uma demanda com uma quantidade limitada de recursos, assemelhando-se bastante ao MCP.

Galvão e ReVelle (1996) apresentam uma heurística lagrangeana para o problema de localização de máxima cobertura (Maximal Covering Location Problem – MCLP). Os autores citados modelaram o MCPL por meio da formulação [MCP1]. A

abordagem proposta se mostrou extremamente eficiente, para as diversas instâncias testadas.

Posteriormente, Galvão et al. (2000) fazem um estudo comparativo entre heurísticas baseadas nas relaxações lagrangeana e surrogate e constatam que, para as diversas instâncias analisadas, a diferença entre os resultados das duas abordagens é pouco significativa.

Apesar de extremamente eficientes, tais tipos de abordagens possuem a limitação de requererem uma série de parâmetros, cujos valores podem variar bastante de acordo com o porte da instância.

Resende (1998) propõe uma heurística GRASP para o MCP. Para um conjunto de 90 instâncias de grande porte, a heurística conseguiu obter soluções próximas e, em muitos casos iguais, ao limite inferior obtido através de relaxação linear. O algoritmo, de fácil implementação, mostrou-se extremamente eficaz e eficiente para a resolução do MCP. Uma das principais vantagens do GRASP é a baixa quantidade de parâmetros a ser calibrada para a execução do algoritmo.

Park e Ryu (2006) apresentam três Algoritmos Genéticos, uma Pesquisa Tabu e um algoritmo Simulated Annealing para o MCP, aplicado na geração de serviço de pessoal tripulante. Os algoritmos foram testados em instâncias reais e de grande porte, advindas de sistemas de transporte por metro. Um novo tipo de Algoritmo Genético, denominado Genetic Algorithm with Unexpressed Genes (GAUG) 5, obteve os melhores resultados.

É importante salientar que na abordagem de Park e Ryu (2006), overcovers, ou seja, situações em que a mesma viatura está atribuída a mais do que um tripulante, são permitidos.

Prata et al. (2009) propõem uma heurística Binary Particle Swarm Optimization (BPSO) para uma variante do MCP. Tal variante corresponde ao modelo ilustrado pelas equações (3.6) a (3.10), com todos os custos iguais a 1. Os autores citados resolvem 10 instâncias geradas aleatoriamente. As vantagens da heurística BPSO consistem na fácil implementação computacional da heurística e a baixa dependência de parâmetros. Contudo, como limitações da abordagem em foco, pode-se destacar que, para uma melhoria dos resultados obtidos pela heurística, requere-se a geração eficiente da população inicial, bem como a aplicação de procedimentos de melhoria (local search) nas soluções geradas.

Berman et al. (2009) apresentam três heurísticas para um caso particular do MCP, em que alguns pesos podem ser negativos6: um algoritmo baseado na heurística

5 O conceito de genes não-expressos consiste em gerar cromossomas com uma parte explícita e outra

implícita. A parte implícita (não expressa) pode vir a ser incorporada em gerações futuras, evitando perda de boas informações sobre os indivíduos durante o processo de pesquisa.

6 De acordo com Berman et al. (2009), no caso do problema de localização de facilidades, o uso de pesos

de Teitz e Bart, um algoritmo Simulated Annealing e um algoritmo Pesquisa Tabu. Ao adaptarem 40 instâncias do problema de p-medianas disponíveis na literatura à variante do MCP supracitada, os autores constataram que o Simulated Annealing implementado obteve os melhores resultados, obtendo as melhores soluções conhecidas em cerca de 90% das execuções da heurística.

Conforme discutido na secção 2.2.2 desta Tese, o SPP e o SCP possuem estreita relação. Na secção 3.1, abordou-se a relação conceitual entre o SCP e o MCP. Percebe- se, portanto, que o SPP e o MCP também se relacionam.

O SPP pode ser visto como um problema que se destina a dividir um conjunto de clientes de modo que cada cluster seja atendido por uma única facilidade. O MCP se diferencia do SPP devido ao facto de que uma facilidade pode atender clientes de

clusters distintos.

Apesar do modelo proposto para o VCSP sem changeovers ser de máxima cobertura, ele se aproxima bastante de um modelo de particionamento de conjuntos, devido às restrições de igualdade (3.12).

A formulação proposta (vide equações (3.11) a (3.15)) possui forte relacção com o Relaxed Set Partitioning Problem (RSPP) proposto por Dias et al. (2002), apresentado no Capítulo 2 (equações (2.22) a (2.25)). A diferença entre os dois modelos é que, no caso da variante do MCP, os custos das colunas são ignorados e há a limitação da quantidade de colunas a serem introduzidas na solução.

Deste modo, é importante destacar alguns trabalhos que abordam o SPP. Poucos são os trabalhos que abordam o SPP por meio de métodos heurísticos, dada a grande dificuldade em se gerar soluções viáveis para o problema.

Levine (1994, 1996) apresenta um Algoritmo Genético híbrido para o SPP. A forma de representação é binária e a população é gerada aleatoriamente, podendo-se infringir as restrições de igualdade, sendo utilizada uma função para penalizar as soluções inviáveis. Utiliza-se selecção por torneio binário e o método de reposição

steady-state7. O autor emprega um two-point crossover, com probabilidade de 60%, ou

facilidades. Por exemplo, ao estudar a localização de um hospital, a proximidade deste para um depósito de lixo é indesejada.

7

Uma das questões cruciais em um GA é a forma como a prole gerada é introduzida na população. Na estratégia geracional, a cada iteração do algoritmo, ocorre uma substituição total (ou próxima disto) dos indivíduos da geração anterior pelas soluções geradas por recombinação e mutação. Na estratégia steady-

state, ocorre a substituição de um ou de poucos indivíduos menos aptos da população anterior pela prole gerada (COLEY, 2010).

mutação clássica, com probabilidade de 40%. Para o refinamento das soluções, é utilizada uma heurística de pesquisa local denominada ROW, a qual é aplicada em um dos indivíduos da população.

A heurística ROW aborda o problema orientado pelas linhas da matriz A. Com base num dado critério de paragem (no caso, o número máximo de iteracções), a heurística tenta reduzir a inviabilidade de soluções (leftovers e overcovers), ou mesmo repará-las, bem como inserir colunas que levem a uma melhoria da função de avaliação.

Beasley e Chu (1995, 1998) propõem um Algoritmo Genético para o SPP. A forma de representação escolhida é a binária. Emprega-se selecção por torneio binário e método de reposição de indivíduos Steady-State. O crossover escolhido é o uniforme. A mutação consiste em inverter uma quantidade especificada de bits de uma solução gerada por crossover. Para cada elemento da população é utilizada uma heurística de melhoria, a qual se destina a corrigir a inviabilidade das soluções.

Dias et al. (2002), propõem um Algoritmo Genético para o RSPP. A codificação utilizada é a não-binária, sendo que cada gene do cromossoma corresponde a uma coluna que cobre uma determinada linha da matriz A. A população inicial é composta apenas por soluções viáveis, geradas de forma construtiva e aleatória. O operador de cruzamento é desenvolvido de forma a gerar apenas soluções viáveis, a partir de dois pais seleccionados por torneio. Dois tipos de mutação são utilizadas: uma mutação básica (modificação aleatória de um gene) e uma mutação para melhoria das soluções, a qual consiste em um procedimento de pesquisa local.

Dentre as três abordagens citadas acima para problemas de particionamento, pode-se observar que o AG de Levine é o que apresenta os piores resultados. Isso se deve ao facto do autor permitir os overcovers, penalizando-os na função objectivo. Deste modo, em alguns casos, a heurística sequer consegue chegar a uma solução viável.

Com relação aos parâmetros, as três abordagens supracitadas necessitam de diversos parâmetros a serem ajustados, a saber: tamanho da população, número de gerações, probabilidade de cruzamento, probabilidade de mutação, tipo de mutação, bem como os parâmetros dos algoritmos de melhoria.