Você está na página 1de 111

PUC-Rio - Certificao Digital N 0321287/CA

Jodelson Aguilar Sabino

Otimizao com colnia de formigas aplicada


programao de operaes de locomotivas de manobras

Tese de Doutorado
Tese apresentada ao programa de ps-graduao
em Engenharia de Produo da PUC-Rio como parte
dos requisitos parciais para obteno do ttulo de
Doutor em Engenharia de Produo.
Orientador: Dr. Jos Eugnio Leal
Departamento de Engenharia Industrial PUC, Rio de Janeiro, Brasil
Co-orientador: Dr. Thomas Gnther Sttzle
IRIDIA/CoDE Universit Libre de Bruxelles, Bruxelas, Blgica

Rio de Janeiro
Maro de 2008

Jodelson Aguilar Sabino

Otimizao

com

colnia

de

formigas

aplicada

PUC-Rio - Certificao Digital N 0321287/CA

programao de operaes de locomotivas de manobras

Tese apresentada como requisito parcial para obteno do ttulo de


Doutor pelo Programa de Ps-Graduao em Engenharia da Produo
da PUC-Rio. Aprovada pela Comisso Examinadora abaixo assinada.

Prof. Jos Eugnio Leal


Orientador
Departamento de Engenharia Industrial - PUC-Rio
Prof. Marc Reimann
University of Warwick
Prof. Reinaldo Morabito Neto
UFSCar
Prof. Fabiano Mezadre Pompermayer
Consultor Autnomo
Prof. Madiagne Diallo
Departamento de Engenharia Industrial - PUC-Rio
Prof. Fernanda Maria Pereira Raupp
Departamento de Engenharia Industrial - PUC-Rio

Prof. Jos Eugnio Leal


Coordenador Setorial do Centro Tcnico Cientfico - PUC-Rio
Rio de Janeiro, 31 de maro de 2008

Todos os direitos reservados. proibida a reproduo total ou parcial


do trabalho sem autorizao da universidade, do autor e do orientador.

Jodelson Aguilar Sabino

PUC-Rio - Certificao Digital N 0321287/CA

Graduou-se em Matemtica na UFES (Universidade Federal do Esprito


Santo) em 1986. Concluiu a ps-graduao em gerncia de projetos em
2001. Em 2002 recebeu o Student Paper Award do RASIG - IFORMS
(Institute for Operations Research and Management Science). Concluiu
o Mestrado em Informtica na UFES em 2004. Pesquisador convidado
do IRIDIA/CoDE na ULB (Universit Libre de Bruxelles) em 2006.
Trabalha na Vale, na rea de Tecnologia da Informao, desde 1987.
Atualmente Gestor de Projetos de Tecnologia da Informao em
Vitria (ES), atuando no atendimento a demandas corporativas da rea
de logstica.

Ficha Catalogrfica
Sabino, Jodelson Aguilar

Otimizao com colnia de formigas aplicada


programao de operaes de locomotivas de manobras / Jodelson
Aguilar Sabino ; orientador: Jos Eugnio Leal ; co-orientador:
Thomas Gnther Sttzle. 2008.
111 f. : il. (color.) ; 30 cm
Tese (Doutorado em Engenharia Industrial)Pontifcia
Universidade Catlica do Rio de Janeiro, Rio de Janeiro, 2008.
Inclui bibliografia
1. Engenharia industrial Teses. 2. Otimizao por
colnia de formigas. 3. Planejamento operacional de ptios
ferrovirios. 4. Sistemas de transporte ferrovirio. 5. Roteirizao. I.
Leal, Jos Eugnio. II. Sttzle, Thomas Gnther. III. Pontifcia
Universidade Catlica do Rio de Janeiro. Departamento de
Engenharia Industrial. IV. Ttulo.

CDD: 658.5

PUC-Rio - Certificao Digital N 0321287/CA

Dedico este trabalho a Jacqueline, Thomas e Eric Sabino

Agradecimentos

Ao meu orientador, Prof. Dr. Jos Eugnio Leal, pelo apoio e estmulo em todas

PUC-Rio - Certificao Digital N 0321287/CA

as etapas da realizao deste trabalho.


Ao meu co-orientador, Dr. Thomas Sttzle e ao Dr. Mauro Birattari, pelas
contribuies relevantes e pela agradvel companhia durante os doze meses em
que estive com eles.
Ao Dr. Marco Dorigo, por acreditar em mim e por disponibilizar pessoas e
recursos no momento certo.
Aos membros da banca examinadora, pela leitura crtica e minuciosa deste
trabalho e pelos comentrios e sugestes encaminhados, os quais foram
fundamentais para a melhoria de sua verso final.
Vale, pelo suporte e patrocnio.
Aos meus colegas da Vale, da PUC-Rio e do IRIDIA/CoDE pelas colaboraes e
pela companhia.
Aos meus amigos e familiares pelo apoio fundamental nas horas difceis.
minha esposa e filhos, a quem coube a tarefa mais difcil e mais importante de
suportar a minha ausncia e me incentivar nos momentos em que eu estava
presente.

Resumo

Sabino, Jodelson Aguilar; Leal, Jos Eugnio; Sttzle, Thomas Gnther.


Otimizao com colnia de formigas aplicada programao de
operaes de locomotivas de manobras. Rio de Janeiro, 2008. 111p. Tese
de Doutorado - Departamento de Engenharia Industrial, Pontifcia
Universidade Catlica do Rio de Janeiro.
Este trabalho trata da modelagem e soluo de um problema complexo da
vida real: o planejamento de operaes de locomotivas de manobras. Sua principal
motivao o desenvolvimento de uma aplicao prtica para apoio ao

PUC-Rio - Certificao Digital N 0321287/CA

planejamento operacional de grandes ptios ferrovirios, visando utilizao


eficiente de seus recursos. A questo fundamental considerada a definio de
qual locomotiva deve executar quais manobras, em que ordem estas manobras
devem ser executadas e qual a rota a ser utilizada em cada manobra de modo a
reduzir os custos operacionais e aumentar a produtividade do sistema ferrovirio.
Um ptio ferrovirio de grandes propores usado como referncia para
desenvolver um modelo matemtico, baseado na teoria dos grafos, que representa
o problema proposto como um problema de coleta e entrega com frota
heterognia, janelas de tempo e restries de capacidade. O modelo desenvolvido
considera os principais elementos e variveis do caso real, tais como o leiaute do
ptio, os acordos de nvel de servio e as restries operacionais vigentes. A
tcnica proposta para resoluo do problema Otimizao Com Colnia de
Formigas, utilizando duas colnias de formigas. Os testes computacionais avaliam
diversas combinaes de parmetros e variantes do algoritmo proposto para
identificar a que produz os melhores resultados. O baixo consumo de recursos
computacionais e a qualidade das solues obtidas mostram que o algoritmo
proposto capaz de produzir solues eficientes para problemas com propores e
caractersticas reais.

Palavras-chave
Otimizao com colnia de formigas, planejamento operacional de ptios
ferrovirios, sistemas de transporte ferrovirio, roteirizao.

Abstract

Sabino, Jodelson Aguilar; Leal, Jos Eugnio; Sttzle, Thomas Gnther.


Otimizao com colnia de formigas aplicada programao de
operaes de locomotivas de manobras. Rio de Janeiro, 2008. 111p. Tese
de Doutorado - Departamento de Engenharia Industrial, Pontifcia
Universidade Catlica do Rio de Janeiro.
This thesis targets the modeling and solving of a real life complex problem:
the switch engines operational planning in railroad yards. Its main motivation is

PUC-Rio - Certificao Digital N 0321287/CA

the development of a practical application to help operational planners of large


railroad yards to achieve efficient resource utilization. The key issue addressed in
this research is the determination of which switch engine shall perform which
switch orders, in which sequence the switch orders shall be performed and which
is the route to follow while performing the switch orders in order to produce
operational savings and improve the railroad system productivity. A huge railroad
yard is regarded as a reference for designing a mathematical model, based on
graph theory, which represents the proposed problem as a pickup and delivery
problem with heterogeneous fleet, time windows and capacity constraints. The
model takes into consideration the main elements and variables of the real world
case like the yard layout, the service level agreements and the operational
constraints in effect. The proposed technique for solving this problem is based on
ACO Ant Colony Optimization with two ant colonies. The computational tests
evaluate several parameter combinations and algorithm variants to identify the
one that leads to better results. The computational resource consumption and the
solution quality show that the proposed algorithm is able to produce efficient
solutions to realistic and large problem instances.

Keywords
Ant colony optimization, railroad yard operational planning, railroad
transportation systems, routing.

PUC-Rio - Certificao Digital N 0321287/CA

Sumrio

1 Introduo

12

2 Apresentao do Problema

15

2.1. Conceitos e terminologia

15

2.2. Etapas do planejamento operacional de ptios ferrovirios

21

2.3. Enunciado

29

2.4. Modelagem do Problema utilizando grafos

31

2.5. O PPOLM como um problema esttico

44

3 Reviso da literatura

46

3.1. Planejamento operacional de ptios ferrovirios

46

3.2. Problema de coleta e entrega

49

3.3. Otimizao com Colnia de Formiga

52

4 Metodologia de soluo do problema

58

4.1. Escolha dos algoritmos

58

4.2. Construo do plano de trabalho das locomotivas de manobras

59

4.3. Clculo da atratividade

62

4.4. Regras de deciso

65

4.5. Regras de atualizao de feromnio

66

4.6. Detalhes sobre a implementao do algoritmo YoYo

68

4.7. Determinao da rota de cada passo

75

5 Testes computacionais

82

5.1. O programa gerador de ordens de servio

82

5.2. Preparao dos experimentos e mtricas utilizadas

88

5.3. Resultados

91

6 Concluso

99

PUC-Rio - Certificao Digital N 0321287/CA

7 Referncias Bibliogrficas

103

Lista de Figuras

Figura 1: rea de um ptio ferrovirio em operao

16

Figura 2: Etapas da realizao de uma manobra

18

Figura 3: Um controlador de Ptio em seu posto de trabalho.


Toronto, Ontrio, Canad.

20

PUC-Rio - Certificao Digital N 0321287/CA

Figura 4: Etapas do planejamento operacional de ptios


ferrovirios

23

Figura 5: Grafo descritivo do leiaute da rea B do ptio K

34

Figura 6: Correspondncia entre os grafos G e G

36

Figura 7: Caminho de coleta e entrega Oe no grafo G

37

Figura 8: Duas linhas adjacentes e o clculo da distncia entre


elas

39

Figura 9: Movimentos possveis de uma formiga a partir do


estado i

54

Figura 10: Algoritmo ACO genrico, baseado em Maniezzo &


Carbonaro (1999)

55

Figura 11: Caminho de uma formiga com trs passos


destacados

61

Figura 12: Algoritmo CompetAnts, conforme Reimann (2002)

62

Figura 13: Rotina ACO usada no algoritmo YoYo

70

Figura 14: Rotina RegraDeciso, usada na rotina ACO

71

Figura 15: Rotina SortearResposta, usada rotina RegraDeciso

72

Figura 16: Rotina Vivel, usada rotina RegraDeciso

72

Figura 17: Matriz M (p+q, p+q, 2) de feromnios

74

Figura 18: Horizonte de planejamento dividido em intervalos

77

Figura 19: Matriz Z de alocao de ptio aps movimento do


comboio

79

Figura 20: Comboio estacionado em A, pronto para se deslocar


at B.

79

Figura 21: Dimenses envolvidas no clculo do tempo de


alocao das linhas

80

Figura 22: Ptio de descarregamento RRT1 utilizado nos testes


computacionais.

84

Figura 23: Diagrama de Fluxo de Dados do programa SOGY

86

Figura 24: Comparao da qualidade da soluo para as


regras CME e RNK

92

Figura 25: Comparao das solues CME e RNK variando


n_orders e m

94

Figura 26: Comparao das regras RNK e CME variando e

96

Figura 27: Nmero mdio de iteraes para CME e RNK


variando n_orders e m

97

Figura 28: Boxplot do tempo de CPU para todas as

PUC-Rio - Certificao Digital N 0321287/CA

combinaes de parmetros considerando n_orders=60

98

1
Introduo

A arte e a cincia tm seu ponto de encontro no mtodo.


EDWARD BULWER-LYTTON

A resoluo de problemas de otimizao tem sido assunto de grande


PUC-Rio - Certificao Digital N 0321287/CA

interesse tanto no campo industrial quanto cientfico. As aplicaes prticas se


multiplicam e se aperfeioam medida que a teoria se expande e se aprimora, que
novos mtodos, modelos e tcnicas so divulgados e que os recursos
computacionais se tornam mais acessveis. Mesmo em reas tradicionais como
manufatura e logstica, a aplicao das tcnicas de otimizao continua trazendo
retorno financeiro e propiciado tambm o desenvolvimento de novos modelos de
negcio com gerao de vantagens competitivas.
Os resultados obtidos com a aplicao das modernas tcnicas de otimizao
e gerenciamento de processos tm despertado o interesse de estudiosos e peritos
em todo o mundo: O congresso internacional do INFORMS (Institute for
Operations Research and Management Sciences), realizado em Pittsburgh (PA),
EUA em novembro de 2006, contou com mais de 3.000 apresentaes de
trabalhos tericos e prticos aplicveis em diversas reas como manufatura,
suprimentos, e-business, leiles, biotecnologia, sade e transporte.
A soluo de problemas prticos usando tcnicas de inteligncia artificial e
matemtica aplicada muito mais que simplesmente o desenvolvimento de um
algoritmo. Em primeiro lugar, os problemas encontrados na vida real, geralmente
so muito complexos e envolvem a manipulao de uma extensa quantidade de
dados. Assim, a soluo dos mesmos requer habilidade no emprego de tcnicas
para a utilizao eficiente dos recursos computacionais e conhecimento de

13

mtodos matemticos capazes de produzir um modelo que leve a uma soluo


vivel obtida dentro de um tempo razovel. Alm disso, indispensvel a
comunicao com profissionais e cientistas da rea de conhecimento especfica do
problema abordado e de suas reas afins, pois s assim possvel produzir uma
soluo que explore as estruturas de dados, os processos e os mtodos daquela
aplicao especfica e, ao mesmo tempo, seja capaz de tratar as complicaes
prticas do dia a dia. Por fim, requerido conhecimento dos conceitos bsicos de
economia e gerenciamento envolvidos no negcio, j que a busca da soluo
tima acaba por se converter em reduo de custos, aumento da produtividade ou
melhoria da qualidade do produto final (Lubbecke, 2001).
Este trabalho trata de um problema prtico que surge durante o
planejamento de operaes de ptios ferrovirios: Deseja-se determinar um plano

PUC-Rio - Certificao Digital N 0321287/CA

de trabalho de baixo custo para um conjunto de locomotivas de manobras, visando


atender ordens de servio que devem ser executadas em um dado horizonte de
tempo. O referido plano deve especificar qual locomotiva deve executar qual
manobra, a ordem em que estas manobras devem ser executadas e o caminho que
cada locomotiva deve seguir durante a execuo de seu plano de trabalho. Para
ptios com grande atividade, este problema pode se tornar complexo a tal ponto
que a experincia e a intuio de uma boa equipe de planejamento no sejam mais
suficientes para produzir boas solues com regularidade. Alm do nmero de
variveis e restries envolvidas, a meta de reduzir o custo fixo e o custo varivel
conduz a um problema que por natureza tem dois objetivos, eventualmente
conflitantes, que precisam ser alcanados simultaneamente. Nesse contexto, surge
o interesse pelo desenvolvimento de uma ferramenta computacional que seja
capaz de sugerir solues melhores que as obtidas manualmente pela equipe de
planejamento operacional do ptio.
A literatura em otimizao de operaes de ptios ferrovirios escassa,
principalmente no que diz respeito ao planejamento de trabalho das locomotivas
de manobras. Com efeito, este um dos poucos trabalhos conhecidos nessa rea,
sendo este o nico, no melhor conhecimento do autor, que considera o conflito de
rotas das locomotivas de manobras em sua modelagem e resoluo.
O restante deste documento estruturado como segue: o captulo 2 descreve
brevemente os conceitos e a terminologia da rotina operacional de ptios

14

ferrovirios e, com base nesses conceitos, formaliza a definio do problema em


questo. O captulo 3 identifica e classifica as referncias mais importantes
utilizadas nos estudos que levaram modelagem e soluo proposta. A
metodologia utilizada para resoluo do problema detalhada no captulo 4,
juntamente com as particularidades e modificaes necessrias nos mtodos
tradicionais para derivar a soluo proposta. Os testes computacionais e os
resultados obtidos so resumidos no captulo 5. O captulo 6 apresenta a
concluso final, destacando as contribuies mais importantes deste trabalho e as
possibilidades de continuao do mesmo. O captulo 7 encerra este documento

PUC-Rio - Certificao Digital N 0321287/CA

com as referncias bibliogrficas.

2
Apresentao do Problema

O pensamento s comea com a dvida.


ROGER MARTIN DU GARD

Este captulo apresenta a descrio por extenso e o enunciado formal do

PUC-Rio - Certificao Digital N 0321287/CA

problema de programao de operaes das locomotivas de manobra de um ptio


ferrovirio ou, simplesmente, PPOLM como ser chamado neste trabalho. A
descrio por extenso do problema precedida de uma breve apresentao dos
principais conceitos e da terminologia tcnica especfica de operaes de ptios
ferrovirios. A formulao matemtica do problema apresentada aps a
definio dos elementos e conceitos necessrios.
2.1.
Conceitos e terminologia
Os elementos mais importantes de uma ferrovia so os vages, nos quais a
carga ou os passageiros so transportados; as locomotivas, que do o poder de
locomoo aos vages; os trilhos, que se agrupam para formar as linhas sobre as
quais as locomotivas e os vages circulam; a tripulao, que opera o sistema
ferrovirio e as cargas ou passageiros, que so transportados.
No sistema ferrovirio, um conjunto de vages com mesmas caractersticas
fsicas ou operacionais chamado de bloco. Um conjunto de blocos puxado ou
empurrado por uma ou mais locomotivas e forma assim um conjunto maior de
blocos e locomotivas que chamado de trem. Quando se fala sobre ordens de
servio no contexto de pedidos de manobras a serem executadas em um ptio
ferrovirio, um bloco um conjunto de vages que pode conter vages com
origens ou tipos diferentes e que so agrupados de diversas formas visando

16

atender requisitos temporrios especficos da operao do ptio. Visando


estabelecer claramente esta diferenciao entre blocos que trafegam na ferrovia e
os blocos que trafegam dentro dos ptios, este documento chama os blocos de
ptio de conjunto de vages, ao invs de blocos.
Os trens se locomovem sobre trilhos que formam linhas que conectam
estaes, ptios e terminais formando assim uma rede ferroviria. Terminais
ferrovirios e outras localidades onde os trens so formados ou desmembrados so
chamados ptios ferrovirios ou simplesmente ptios. Analisado sob o aspecto
fsico, um ptio ferrovirio (veja Figura 1) um local onde a estrada de ferro se
expande em uma vasta rea composta de linhas paralelas conectadas por
aparelhos de mudana de via (AMVs) e outros dispositivos ferrovirios que

PUC-Rio - Certificao Digital N 0321287/CA

permitem a passagem de uma linha para outra.

Figura 1: rea de um ptio ferrovirio em operao

Funcionalmente, os ptios so os ns da rede ferroviria onde os trens que


chegam so desmembrados e trens que saem so formados, vages so
carregados, descarregados e transferidos de um trem para outro e onde ocorrem
algumas funes complementares tais como inspeo, estacionamento e
classificao de vages, troca de tripulao, abastecimento de locomotivas e

17

manuteno e limpeza de vages e locomotivas. Os ptios so divididos em reas


formadas por conjuntos de linhas destinadas a atender cada uma destas funes
operacionais.
Locomotivas podem atuar em viagens, provendo trao para os trens que
transportam blocos entre ptios da ferrovia ou podem operar movimentando
conjunto de vages dentro dos limites de um ptio. Neste ltimo caso as
locomotivas so chamadas locomotivas de manobras.
Este trabalho trata da programao de operaes das locomotivas de
manobra na rotina diria de um ptio ferrovirio. Esta programao feita em
ciclos regulares de curta durao (i.e. algumas horas) denominados horizontes de
planejamento.
Uma manobra um transporte de um conjunto de vages de uma linha de
PUC-Rio - Certificao Digital N 0321287/CA

origem para uma linha de destino dentro de um ptio. No contexto deste trabalho,
o conjunto formado por uma locomotiva de manobra mais os vages acoplados a
ela ser denominado de comboio. Uma ordem de servio um pedido de execuo
de uma manobra.
A execuo de uma manobra corresponde seguinte seqncia de operaes
que envolvem um conjunto de vages, uma equipe de planejamento e operao e
uma locomotiva de manobra:


A viagem escoteira, que o deslocamento da locomotiva sem


nenhum vago acoplado, de sua posio inicial at o local de coleta
dos vages;

O acoplamento, que a operao de conectar vages locomotiva


de manobra;

O transporte, que a operao de movimentao realizada pela


locomotiva de manobra ao transportar um conjunto de vages de
uma linha de origem at uma linha de destino;

O servio uma fase opcional que eventualmente sucede o


transporte e ocorre quando a operao a ser executada com os
vages no local de entrega requer a assistncia da locomotiva de
manobras;

18

O desacoplamento que a ltima fase de uma manobra e consiste na


separao dos vages da locomotiva de manobra, tornando-a
disponvel, a partir deste momento, para realizar outra manobra.

PUC-Rio - Certificao Digital N 0321287/CA

Figura 2: Etapas da realizao de uma manobra

A Figura 2 mostra uma escala horizontal representando um intervalo de


tempo que vai das 06h10min at as 07h24min de um dia qualquer, onde esto
indicadas as etapas e os principais eventos ocorridos no decorrer de uma manobra
fictcia realizada durante este intervalo de tempo.
Em um dado instante dentro de um horizonte de planejamento, uma
locomotiva pode estar em uma, e somente uma, das seguintes situaes:
1. Em modo de transporte, i.e., movendo um conjunto de vages de sua
linha de coleta at a sua linha de entrega;
2. Em modo escoteira, ou seja, movendo-se sozinha, sem nenhum vago
acoplado a ela. Isto ocorre, geralmente, quando a locomotiva de
manobra se desloca de sua posio inicial at a linha onde esto os
vages a serem coletados na prxima manobra a ser realizada;
3. Em modo de espera, ou seja, ociosa e com seu motor ligado, estacionada
em uma das seguintes linhas:


Na linha de coleta e pronta para iniciar o acoplamento, mas


esperando a hora permitida para a coleta dos vages. Isto
ocorre, por exemplo, quando uma locomotiva deve coletar
um conjunto de vages na rea de descarregamento e quando

19

ela chega linha de coleta, a operao de descarregamento


ainda no foi concluda, sendo necessrio, portanto, aguardar
o trmino do descarregamento;


Em uma determinada linha de seu caminho (incluindo a linha


de origem), aguardando que a linha seguinte seja liberada por
outra locomotiva ou comboio que esteja trafegando por ela;

Em sua ltima linha de entrega porque, de acordo com o


plano de trabalho definido para ela, depois daquela ltima
entrega no h mais manobras a serem executadas no
horizonte de planejamento atual;

Na linha de coleta ou na linha de entrega aguardando que um


tcnico de operao ferroviria faa o acoplamento ou

PUC-Rio - Certificao Digital N 0321287/CA

desacoplamento de vages locomotiva.


4. Em modo desativada, isto , em algum lugar fora ou dentro do ptio mas
parada e com o motor desligado. Isto ocorre, por exemplo, se de acordo
com o plano de trabalho em execuo, a locomotiva no tem nenhuma
manobra a ser executada durante todo o horizonte de planejamento atual,
assim, ela fica parada e com o motor desligado at o incio do prximo
horizonte de planejamento. Outro exemplo quando a locomotiva est
em manuteno. Uma locomotiva em modo desativada pode,
teoricamente, no ser considerada como parte da frota que serve quele
ptio em questo durante o horizonte de planejamento.
Uma manobra pode ser classificada por tipo, de acordo com a tarefa do ptio
qual ela est relacionada. Assim, uma manobra pode ser de desmembramento de
trens que chegam, carregamento ou descarregamento de vages, deslocamento
para inspeo para verificar a necessidade de limpeza de um conjunto de vages
ou manuteno de um vago especfico, classificao para retirada de
determinados vages de um conjunto ou ordenao dos mesmos de acordo com
um critrio pr-estabelecido, de formao de trens que vo partir do ptio ou
simplesmente de deslocamento de vages dentro do ptio, seja para levar ou trazer
das reas de limpeza ou manuteno ou para organizar melhor os vages no ptio,
de modo a simplificar a realizao de tarefas planejadas para o futuro.

20

Os profissionais responsveis pelas operaes de um ptio ferrovirio


normalmente se dividem em equipes de tripulao, de planejamento de operaes,
de manuteno e de apoio administrativo. As funes mais importantes para o
contexto deste trabalho so:


O maquinista, que a pessoa responsvel pela conduo da


locomotiva;

O tcnico de operao ferroviria (TOF), que faz principalmente os


acoplamentos e desacoplamentos;

O planejador, que define as manobras a serem feitas a partir da


consolidao das demandas operacionais do ptio;

O controlador de ptios e terminais (Figura 3), que monitora as rotas

PUC-Rio - Certificao Digital N 0321287/CA

feitas pelas locomotivas de manobra dentro do ptio e define e


informa aos maquinistas as manobras a serem realizadas.

Figura 3: Um controlador de Ptio em seu posto de trabalho. Toronto, Ontrio, Canad.

Diferente da abordagem proposta em Crainic et al. (1980), que considera os


custos de operaes de ptios estratificados pelo tipo da manobra, este trabalho
classifica os custos operacionais de um ptio ferrovirio em custos fixos e custos
variveis, seja qual for o tipo de manobra. Os custos fixos esto relacionados ao
custo de propriedade dos ativos do ptio, sendo a frota de locomotivas de manobra
o nico ativo de interesse no contexto deste trabalho. Os custos variveis esto

21

relacionados utilizao das locomotivas e consideram principalmente o consumo


de combustvel, o desgaste ocorrido com o funcionamento das mesmas e o custo
da tripulao e demais profissionais envolvidos na realizao das manobras.
Indicadores de desempenho so medidas utilizadas pelas equipes de gesto
do sistema ferrovirio para planejamento, avaliao do nvel de eficcia e
fornecimento de informaes para entidades governamentais. O ciclo mdio de
vages o indicador de desempenho com periodicidade de apurao mensal que
expressa, em dias, o intervalo entre carregamentos de vages. A sua aplicabilidade
est na verificao de adequao dos planos de transporte, especialmente os
tempos alocados s operaes de carregamento e descarregamento de vages
(Digenes, 2002). Albuquerque (2006) analisa alguns modelos para a avaliao do
desempenho logstico de sistemas ferrovirios de carga e apresenta o ciclo mdio

PUC-Rio - Certificao Digital N 0321287/CA

de vages como o indicador mais significativo da produtividade do material


rodante.
2.2.
Etapas do planejamento operacional de ptios ferrovirios
O planejamento de sistemas de transporte ferrovirio envolve o tratamento
de diversos recursos humanos e materiais que se relacionam numa rede complexa
de decises, interdependncias e regras que afetam seus componentes de forma
distribuda (Crainic, 2002). Em seu trabalho voltado para ferrovias de transporte
pblico de passageiros, Lindner (2000) sugere uma decomposio hierrquica do
processo de planejamento ferrovirio, estruturando-o em cinco etapas. Este
tratamento hierrquico pode ser utilizado como referncia para modelagem
voltada para otimizao dos processos e possibilita a diviso do planejamento em
tarefas mais simples de modo que a soluo tima encontrada para uma etapa
serve de entrada para o problema subseqente. Bussieck ET al. (1997) apresentam
claramente o principal ponto positivo e negativo desta abordagem: uma vantagem
tcnica evidente que os problemas mais simples so mais fceis de serem
resolvidos com os mtodos e recursos computacionais disponveis. Por outro lado,
no se espera encontrar uma soluo tima para o sistema como um todo ao final
do processo e isso , certamente, uma desvantagem.
A classificao utilizada no presente trabalho foi apresentada em Assad
(1980) e define trs nveis para o planejamento de transporte ferrovirio:

22

estratgico, ttico e operacional. Desenvolvida em um modelo baseado em


ferrovias de transporte de cargas, esta classificao se baseia no fluxo de
informaes e a forma como so definidas as polticas e diretrizes do sistema
ferrovirio. Sua simplicidade e clareza fizeram com que esta classificao fosse
adotada em muitos outros trabalhos como em Kraft (1998), Winter (1999), Crainic
(2002), Garcia & Gutierrez (2003), Sabino (2004) e Crainic & Kim (2007).
Na classificao de Assad, o planejamento Estratgico de longo prazo.
Normalmente um captulo ou componente do planejamento da organizao
como um todo e envolve a alta administrao da empresa em decises sobre
grandes investimentos de capital no decorrer dos prximos anos ou dcadas.
Decises tomadas no planejamento estratgico orientam polticas gerais de
desenvolvimento da empresa e envolvem elementos como o desenho da malha

PUC-Rio - Certificao Digital N 0321287/CA

ferroviria e sua evoluo no tempo, a localizao de seus ptios de manobras e


terminais, a aquisio de recursos como vages e locomotivas e a definio da
carteira de servios e as polticas de tarifao do sistema ferrovirio.
O Planejamento Ttico de mdio prazo e visa determinar, em um
horizonte de alguns meses, a forma com que devem ser feitas a alocao e
utilizao dos recursos de modo a obter o melhor desempenho possvel do sistema
como um todo. Neste nvel de deciso os dados so sumariados, as polticas
abstradas e as decises so sensveis apenas variaes considerveis nos
parmetros do sistema, tais como as alteraes sazonais nas demandas de trfego
(Crainic & Roy, 1988). Um exemplo tpico de uma deciso ttica o desenho da
rede de servios, incluindo determinao do tipo de servio a ser oferecido,
programao de servios (definio de prioridade, capacidade e freqncia dos
trens), definio de rotas de trens (i.e. definio de origem, destino, rota fsica e
paradas intermedirias) e reposicionamento da frota para uso no prximo perodo
de planejamento.
O Planejamento Operacional de curto prazo, feito por unidades locais de
gerenciamento tais como gerentes de ptio e supervisores do centro de controle de
operaes. Este nvel de planejamento ocorre em um ambiente altamente
dinmico em que fatores temporais tm um papel importante e a representao
detalhada dos veculos, da topologia e das atividades essencial. So

23

considerados no nvel operacional o planejamento de embarques, a programao


de veculos, a auditoria de cargas
cargas e o gerenciamento
gerenciamento de avarias.
O objetivo do planejamento operacional garantir uma operao eficiente e
de baixo custo, garantindo que as demandas sejam atendidas no prazo e que o
impacto das variaes no fluxo de operaes seja minimizado. Um bom plano de
operaes
raes de ptio, por exemplo, resulta em uma utilizao eficiente das linhas de
ptio e das locomotivas de manobra, e esta eficincia medida em funo da
satisfao do cliente e dos custos associados.
Em adio tradicional classificao hierrquica proposta
proposta por Assad, este
trabalho prope a decomposio do planejamento operacional de ptios
ferrovirios em trs etapas, como mostra a Figura 4.. Esta decomposio foi
resultado de entrevistas e validaes feitas com o pessoal de ccampo
ampo e anlises

PUC-Rio - Certificao Digital N 0321287/CA

tcnicas do processo de planejamento operacional, tal qual desenvolvido na


rotina diria de um ptio real.

PLANEJAMENTO
DE PTIOS
FERROVIRIOS

ESTRATGICO

TTICO

OPERACIONAL

1. Coleta e
organizao das
tarefas

2. Identificao
das manobras

3. Definio da
programao de
locomotivas de
manobra

Figura 4:: Etapas do planejamento operacional de ptios ferrovirios

A classificao proposta neste trabalho


trabalho est detalhada nos pargrafos que se
seguem e est fundamentada na cronologia na qual as informaes sobre as
manobras futuras se tornam disponveis para a equipe de planejamento
operacional.

24

2.2.1. A Coleta e organizao das tarefas


A primeira etapa do planejamento operacional considera as seguintes
informaes, as quais so normalmente conhecidas com 24 horas de antecedncia:


Programao de Trens Tambm conhecido como tabela de


horrios de trem. O Plano de Trens, um dos principais produtos do
planejamento ttico, influencia diretamente as operaes do ptio
(e.g.: as manobras de recepo e formao so definidas em funo
da programao de chegada e partida dos trens). A programao de
trens a soluo do problema de escalonamento de trens, o qual
identifica as rotas dos trens, suas freqncias semanais e suas tabelas
de horrios de modo a minimizar o custo de transporte das cargas de
seus locais de origem at os seus locais de destino. A escala de trem,

PUC-Rio - Certificao Digital N 0321287/CA

depois de definida, executada repetidamente a cada perodo prdefinido (e.g.: uma semana) durante certo tempo (e.g.: trs meses) ou
at que se faa uma reviso extraordinria. importante notar que a
escala de tempo envolvida nestas atividades de planejamento de
alguns dias a alguns meses;


Plano de Carregamento e Descarregamento Trata-se de uma


lista contendo todas as operaes de carregamento previstas para o
ptio para o horizonte de planejamento seguinte, normalmente de
algumas horas. No plano de carregamento especificado o cliente, a
rea do ptio onde deve ocorrer o carregamento e os detalhes
pertinentes aos vages a serem carregados como, por exemplo, peso,
localizao e nmero de identificao do vago. As operaes de
descarregamento

compem,

analogamente,

Plano

de

Descarregamento;
Uma tarefa, no contexto desta etapa, se refere a uma demanda operacional
de mais alto nvel para o ptio, como por exemplo, formar um trem, descarregar
os vages de um trem ou inspecionar um lote de vages e em seguida realizar as
manutenes e limpezas necessrias. Uma tarefa no est associada a uma
locomotiva especfica e normalmente requer a realizao de vrias manobras para
atend-la. As informaes consideradas sobre cada tarefa nesta etapa so o tipo de

25

tarefa a ser executada, o nmero de vages envolvidos, as reas de origem e


destino para cada operao, o tipo de carga e informaes sobre o cliente a ser
atendido. Eventualmente saber-se- a localizao dos vages a serem
considerados na tarefa e alguma informao sobre quando a tarefa dever ser
executada.
Nesta etapa no h restries a serem consideradas nem otimizao a ser
feita. O mais importante certificar-se que todas as tarefas a serem executadas no
horizonte de planejamento em questo foram consideradas e que todos os dados
implcitos foram tratados ao ponto de se transformarem em informaes
estruturadas o bastante para serem manipuladas nas etapas seguintes. Por
exemplo, as seguintes informaes sobre prazos vo determinar, posteriormente, o
horrio mais cedo ou mais tarde possvel para realizar as manobras

PUC-Rio - Certificao Digital N 0321287/CA

correspondentes a uma tarefa:




O prazo para concluso da tarefa de modo a atender o nvel de


servio contratado com os clientes;

O horrio mais cedo que a tarefa pode iniciar, considerando o


horrio de trmino de alguma outra tarefa que seja pr-requisito
desta.

Ao contrrio das outras duas etapas do planejamento operacional, que sero


apresentadas a seguir, esta primeira etapa no um processo de tomada de
deciso, mas simplesmente uma coleta e classificao de dados. O produto que
deve ser entregue como resultado desta etapa ser chamado neste documento de
lista das tarefas e constitui-se numa compilao sistemtica, classificada em
ordem cronolgica, de todas as operaes com execuo prevista para o horizonte
de planejamento dado.
Na prtica, parte das tarefas programadas para o ptio composta de
informaes extemporneas que chegam pelos meios de comunicao tradicionais
(e.g. e-mail, fax, telefone) e a outra parte consiste de informaes obtidas atravs
de interfaces com sistemas de informaes j existentes para a gesto dos
processos que geram demandas para o ptio.
A lista das tarefas uma fonte de informao muito importante para vrios
processos de planejamento e de avaliao no contexto da ferrovia. Por exemplo,

26

esta lista pode ser utilizada no planejamento ttico, j que ele fornece indicaes
sobre a utilizao dos recursos do ptio em mdio prazo (e.g.: linhas, locomotivas
de manobras e demanda por equipagem em cada rea do ptio considerando o
plano de trens e as rotinas de carregamento e descarregamento atuais).
2.2.2.Identificao das Manobras
A segunda etapa do planejamento operacional do ptio considera todas as
tarefas planejadas e no planejadas e as manobras herdadas do horizonte de
planejamento anterior. Nesta etapa, o planejador de ptio elabora a lista completa
de todas as manobras necessrias para o prximo horizonte de planejamento o
qual compreende algumas horas. Espera-se que esta etapa esteja concluda alguns
minutos antes do incio do horizonte de planejamento ao qual ela se refere, de
modo a permitir a execuo das tarefas da terceira etapa antes do incio do
PUC-Rio - Certificao Digital N 0321287/CA

referido horizonte de planejamento.


Nesta segunda etapa tambm necessrio considerar o horrio limite para
incio e trmino de cada manobra e o tempo mximo permitido de atraso para
comeo e fim da mesma, conforme acordo de nvel de servio firmado com o
cliente. Em caso de atraso, o contrato com o cliente normalmente prev um valor
em moeda corrente que representa a penalidade a ser paga, caso as operaes de
carregamento ou descarregamento excedam este atraso mximo permitido. Neste
caso, os limites acordados e os valores das penalidades previstas devem ser
considerados como restries.
As tarefas consideradas nesta etapa podem ser classificadas da seguinte
forma:


Tarefas planejadas: so todas as tarefas que constam na lista das


tarefas, ou seja, aquelas identificadas na etapa anterior;

Tarefas no planejadas: so todas as operaes de ptio que


ocorrero no prximo horizonte de planejamento, mas que no foram
consideradas na etapa anterior de construo da lista de macrotarefas
porque elas no eram conhecidas naquele momento. Este grupo
inclui as tarefas surgidas pouco tempo antes do incio da segunda
etapa de planejamento, como, por exemplo, pedidos de levar ou
trazer vages para manuteno ou limpeza. Neste grupo tambm se

27

incluem algumas demandas imprevisveis, extemporneas, urgentes


ou imprecisas, eventualmente vindas diretamente do prprio cliente
como um pedido especial;


Tarefas herdadas do horizonte de planejamento anterior so as


manobras atrasadas ou postergadas do horizonte de planejamento
anterior. Estas tarefas so muito bem detalhadas e apresentadas na
forma de uma lista de manobras a ser executadas no decorrer do
horizonte de planejamento que est sendo tratado.

O objetivo da segunda etapa do planejamento operacional identificar


todas as manobras necessrias para realizar as operaes de ptio que sero

PUC-Rio - Certificao Digital N 0321287/CA

realizadas no horizonte de planejamento em questo, especificando:




Linha de origem;

Linha de destino;

Quantidade de vages;

Peso do conjunto de vages a ser deslocado;

Janelas de tempo para realizao da manobra, ou seja, os horrios


mais cedo e mais tarde possveis para coletar e para entregar os
vages a serem transportados;

Identificao da manobra que pr-requisito para a manobra em


questo (se houver).

Esta lista deve incluir as manobras de desmembramento, carregamento e


descarregamento, classificao, envio e retorno de vages para limpeza e
manuteno, inspeo, alm das manobras dos seguintes tipos:


Manobras implcitas de puxar vages do incio de uma linha e deixlos em outra linha para tornar acessveis vages que esto
localizados atrs destes.

Manobras de reposicionamento de vages para tornar mais rpidas


manobras futuras. Em geral este tipo de manobra uma demanda do
plano de distribuio de vages vazios no ptio e ou do plano de
classificao dos vages que esto na rea de estacionamento.

28

Manobras especiais de levar locomotivas escoteiras para locais como


rea de abastecimento ou troca de equipe.

O recurso mais importante na etapa de identificao das manobras so as


linhas do ptio. Deseja-se monitorar a ocupao de linhas e definir a seqncia na
qual estas operaes devem ocorrer de modo a minimizar gargalos de alocao no
decorrer das manobras planejadas para o horizonte de planejamento em questo.
importante notar que o estado de ocupao das linhas do ptio no uma varivel
binria que simplesmente define se a linha est ocupada ou no. Pode ser que uma
linha esteja parcialmente ocupada de tal modo que, embora existam vages
estacionados nela, outros vages possam ser adicionados sem que a capacidade da
linha seja excedida.
O processamento da etapa de identificao das manobras deve manter linhas

PUC-Rio - Certificao Digital N 0321287/CA

desocupadas o bastante para acomodar os vages nas reas de ptio de destino das
manobras previstas para o futuro. Para tanto, preciso explorar a flexibilidade das
janelas de tempo e acompanhar o estado de alocao das linhas de cada rea do
ptio com o passar do tempo, garantindo que os conjuntos de vages caibam nas
linhas de destino das manobras que os envolvem.
2.2.3.Definio do plano de trabalho das locomotivas de manobras
Esta a ltima das trs etapas e executada pelo controlador de ptio. O
principal dado de entrada para esta etapa a lista produzida na etapa de
identificao das manobras contendo todas as manobras a serem executadas.
O objetivo desta etapa definir qual locomotiva deve executar qual
manobra (alocao) e tambm a ordem de execuo destas manobras
(seqenciamento) de modo a no violar nenhuma restrio operacional (e.g.:
janela de tempo ou capacidade da locomotiva para movimentar o peso do bloco)
e, ao mesmo tempo, minimizar o custo operacional do ptio. Para executar esta
etapa do planejamento, necessrio fornecer informaes sobre o leiaute do ptio
e sobre as locomotivas de manobra disponveis nele e enumerar detalhadamente
todas as manobras a serem realizadas durante um horizonte de planejamento
especificado.

29

importante observar que as manobras implcitas, de reposicionamento e


manobras especiais devem ser identificadas na segunda etapa e especificadas
explicitamente como dado de entrada desta etapa.
O objetivo de reduo do custo operacional da etapa 3 equivale,
indiretamente, reduo das seguintes grandezas:
(a)

O tempo total de realizao de todas as manobras, incluindo o


tempo de espera caso haja conflito de uso de uma mesma linha por
duas locomotivas de manobra, o qual diretamente proporcional
ao custo varivel;

(b)

A quantidade de locomotivas necessrias para realizar todas as


manobras da lista, a qual o componente do custo fixo;

PUC-Rio - Certificao Digital N 0321287/CA

Vale notar que ao reduzir o tempo total para realizao de todas as


manobras reduz-se o tempo de permanncia dos vages no ptio, o que implica
diretamente na reduo do ciclo mdio de vages. Por outro lado, a reduo da
quantidade de locomotivas necessrias, se praticada consistentemente por um
longo tempo, pode resultar em uma recomendao de reduo do nmero de
locomotivas necessrias para a operao do ptio.
Este trabalho dedicado modelagem e ao desenvolvimento de uma
ferramenta computacional de apoio deciso para a terceira etapa do
planejamento operacional de ptios ferrovirios.
2.3.
Enunciado
O PPOLM , na verdade um problema de otimizao combinatria que
surge na terceira etapa do planejamento operacional de ptios ferrovirios e seu
enunciado, por extenso, pode ser redigido como segue.
Dadas as seguintes informaes sobre o ptio:
1. Leiaute do ptio, incluindo comprimento das linhas;
2. Lista de manobras a serem executadas, incluindo detalhes como
origem, destino e vages a serem transportados;

30

3. Lista

das

locomotivas

de

manobra

disponveis,

incluindo

informaes como a localizao inicial e capacidade de cada uma.


Deseja-se encontrar uma sugesto de:
1. Uma programao para as locomotivas de manobra, i.e., a definio
de quais ordens de servio devem ser executadas por cada
locomotiva e a seqncia na qual cada locomotiva deve executar
suas ordens de servio;
2. Uma rota completa a ser seguida por cada locomotiva na execuo
de suas ordens de servio, considerando a programao sugerida
de tal modo que nenhuma das restries operacionais do ptio seja violada e que o
custo operacional da programao e da rota sugeridas seja mnimo.

PUC-Rio - Certificao Digital N 0321287/CA

As restries mais importantes a serem consideradas so:


(a)

Cada ordem de servio pode ter a si associada janelas de tempo, que


especificam o horrio mais cedo e mais tarde possvel para coletar e
para entregar os vages a serem transportados.

(b)

Todas as ordens de servio planejadas devem ser executadas, ou


pelo menos iniciadas, durante o Horizonte de planejamento;

(c)

Nem toda locomotiva pode executar qualquer manobra. O peso total


do conjunto de vages a ser movido no pode ser maior do que o
peso mximo que a locomotiva capaz de puxar ou empurrar.

(d)

Certas ordens de servio podem ter outra como pr-requisito. Isto


ocorre, por exemplo, quando uma seqncia de operaes deve ser
realizada com um mesmo conjunto de vages ou quando o conjunto
de vages a ser movido se encontra atrs de outros vages que,
portanto, precisam ser movidos antes que a locomotiva tenha acesso
aos vages referenciados naquela ordem de servio;

Neste contexto, uma boa sugesto significa uma soluo de custo


operacional mnimo.

31

2.4.
Modelagem do Problema utilizando grafos
Este item apresenta a definio dos elementos envolvidos no PPOLM
baseado em Teoria de Grafos (Diestel, 2005). Estas definies so utilizadas
primeiramente para a apresentao do enunciado formal do problema e depois so
referenciadas como suporte para explanaes posteriores.
2.4.1.
Locomotivas e ordens de servio
Seja um Horizonte de Planejamento h de durao h que se inicia no
momento hs e termina no momento hf (de tal modo que h = hf hs).
Seja E o conjunto formado por todas as locomotivas de manobra disponveis
no ptio durante o horizonte de planejamento h . Cada locomotiva e tem a si
PUC-Rio - Certificao Digital N 0321287/CA

associado um peso mximo qe que ela capaz de puxar ou empurrar e as linhas do


ptio onde ela se encontra no incio e no final do Horizonte de Planejamento, as
+

quais sero chamadas de e e e respectivamente.


Seja R um conjunto de ordens de servio que devem ser executadas durante
o intervalo h = [hs , hf ] . Associada a cada ordem de servio r em R existe um
conjunto de vages com um peso total wr e comprimento total yr que precisa ser
+
coletado na linha r e entregue na linha r , ambas localizadas em um ptio
+

ferrovirio. O instante t r em que os vages sero coletados na linha r + deve estar


+

r
dentro de um intervalo de tempo r + = [tsr , t fr ] e a hora de entrega t deve

r
r
estar dentro do intervalo de tempo r = [ts , t f ] . Este dois intervalos de tempo

so chamados janela de tempo de coleta e janela de tempo de entrega


respectivamente.
Uma locomotiva se desloca pelo ptio a uma velocidade se que varia
principalmente de acordo com:
 A sua capacidade de trao;
 O peso que est sendo puxado ou empurrado (quando a locomotiva
trafega escoteira, este peso o prprio peso da locomotiva).

32

 As restries de segurana ou operacionais da linha por onde passa a


locomotiva. Por exemplo, uma restrio de segurana pode limitar a
velocidade de deslocamento em certas linhas do ptio ou uma
locomotiva pode ter que parar durante o seu percurso e esperar at
que a linha adiante seja desocupada por um comboio que por ela
esteja trafegando.
 Da resistncia ao movimento para o trecho considerado no
deslocamento. Segundo Castello Branco & Ferreira (2000), esta
resistncia depende de vrios fatores tais como atrito, caractersticas
da via permanente (resistncia de curvas e rampas), ventos
(principalmente ventos laterais) e a avaliao quantitativa destes
fatores tem sido objeto de estudos desde o incio da ferrovia, todavia,

PUC-Rio - Certificao Digital N 0321287/CA

a menos de algumas poucas revises de termos ocorridas ao longo de


dcadas, as frmulas propostas por W. J. Davis em 1926, conhecidas
como Frmulas Davis continuam sendo usadas at os dias de hoje e
consideradas boas aproximaes.
Dos fatores relacionados acima, os mais relevantes so a capacidade de
trao da locomotiva e o peso dos vages a serem transportados, j que as
locomotivas de manobras circulam em velocidades relativamente baixas e os
ptios em geral no costumam ter quantidade considervel de aclives, declives e
curvas.
2.4.2.
Grafo de ordens de servio
Seja G = (V , A) um grafo orientado, ponderado nos arcos, onde o conjunto
V de seus ns formado por todas as linhas lgicas do ptio que possam ser o
local de coleta ou entrega de alguma manobra ou ainda a localizao inicial de
alguma das locomotivas do conjunto E. Os ns v deste grafo so conectados por
arcos a em A que denotam a existncia de um caminho conectando os ns i e j
de tal forma que a locomotiva de manobras pode perfazer este caminho iniciando
no n i e terminando no n j. O peso de cada arco de G um vetor que representa
o custo do deslocamento entre os seus dois ns adjacentes na direo especificada.

33

Cada elemento do vetor dos pesos representa o custo de percorrer o referido


caminho passando por uma seqncia especfica de linhas do ptio.
Note que ao invs de linhas fsicas, aqui se utiliza o conceito de linhas
lgicas, que so distintas para cada manobra. Assim, para cada linha fsica do
ptio que ocorre mais de uma vez como origem ou destino no conjunto R de
ordens de servio, o grafo G contm tantas cpias distintas de ns associados a
esta mesma linha fsica quanto for o nmero de ordens de servio que fazem
referncia a esta linha. O grafo G tem, portanto, exatamente 2|R| vrtices, onde |R|
o nmero de ordens de servio, j que a cada manobra esto associadas duas
linhas lgicas, uma de origem e uma de destino.
2.4.3.
Grafo descritivo do leiaute do ptio

PUC-Rio - Certificao Digital N 0321287/CA

Seja G = (V , A) um grafo misto, conexo e ponderado nos ns e nos arcos,


onde o conjunto V de seus ns descreve todas as linhas do ptio. Os ns v deste
grafo so conectados por arcos a em A para descrever o leiaute do ptio de tal
forma que conexes entre linhas adjacentes so representadas pelos arcos ou
arestas que ligam os ns adjacentes correspondentes. Arcos entre dois ns de G
indicam que uma locomotiva s pode movimentar entre estes ns na direo
correspondente. Arestas ligando dois ns de G indicam a possibilidade de
movimentao de locomotivas em ambas as direes entre aqueles ns. O peso de
cada n v de G o comprimento lv da linha de ptio correspondente. O peso de
cada arco ou aresta de G a distncia entre o par de linhas do ptio conectadas
por aquele arco ou aquela aresta.
Na parte superior da Figura 5 h o desenho de uma regio hipottica
denominada rea B, pertencente a um ptio chamado Ptio K. A rea B contm
sete linhas, representadas pelos segmentos em preto e identificadas por um
nmero dentro de um quadrado cinza, e quatro AMVs, representados por pares de
segmentos cinzas dispostos em ngulo agudo. A seta cinza na parte superior da
linha 3 indica que h uma regra operacional que determina a circulao por esta
linha em uma nica direo. A parte inferior da figura mostra o grafo G
associado a este setor de ptio. Vale notar que os ns 1, 3 e 5 do grafo G esto

34

conectados por arcos unidirecionais, indicando a direo nica de trfego


permitida na circulao entre as linhas 1 e 3 e 3 e 5.

rea B do Ptio K
2
6
3
1

Grafo G associado

PUC-Rio - Certificao Digital N 0321287/CA

Figura 5: Grafo descritivo do leiaute da rea B do ptio K

Cabe aqui uma explicao sobre a modelagem do leiaute do ptio utilizando


o grafo orientado G: Fisicamente, no h restrio quanto direo de trfego
nas linhas do ptio, porm, no dia a dia da operao do ptio comum o
estabelecimento de regras que obrigam ou recomendam o trfego em uma direo
especfica para determinadas linhas. Isto ocorre com o objetivo de atender
critrios de segurana ou simplesmente melhorar a circulao pelo ptio, por
exemplo, evitando-se que comboios freqentemente se cruzem trafegando em
direes contrrias. A opo pelo uso de um grafo misto para o mapeamento das
linhas do ptio considera a possibilidade de informar eventuais regras de direo
de circulao para linhas especficas. Assim, a implementao das estruturas de
dados para representao do leiaute do ptio e dos algoritmos para percorr-la
tornam-se mais simples e as solues so geradas naturalmente aderentes s regras
de circulao.

35

2.4.4.
Correspondncia entre G e G
A Figura 6 mostra a correspondncia entre os grafos G e G. Para clareza do
desenho, nem todos os arcos de G esto representados nesta figura. No plano
superior contm a representao do grafo G e o plano inferior contm a
representao do grafo G. As linhas verticais pontilhadas que unem os dois planos
indicam correspondncias entre ns dos grafos G e G. Ns empilhados no grafo
G indicam linhas do ptio que so origem ou destino de mais de uma manobra e,
nestes casos, o nmero de ns empilhados de G indicam exatamente quantos ns
correspondem a um nico n em G. Note que:


em todos os ns de G tm um n correspondente em G: De


fato, uma linha que no origem e nem destino de nenhuma

PUC-Rio - Certificao Digital N 0321287/CA

manobra aparece como um n de G, mas no aparece como um n


de G.


Um n de G pode ter mais de um n correspondente em G: Caso


mais de uma manobra tenham como origem ou destino uma mesma
linha;

Todo n de G tem um nico correspondente em G: Como toda


origem ou destino de manobra tem que ser uma linha do ptio, todos
os ns de G tm um correspondente em G;

H uma associao natural entre arcos do grafo G e caminhos do


grafo G: Os arcos de G representam uma ligao entre a origem e o
destino de pelo menos uma manobra ou o deslocamento de uma
locomotiva escoteira para coletar o conjunto de vages de uma
manobra. Por outro lado, os arcos ou arestas de G representam a
conexo fsica entre as linhas e, eventualmente, a direo nica na
qual possvel trafegar entre duas linhas adjacentes. Dados dois ns
adjacentes v1 e v2 de G, h pelo menos um caminho em G com
origem e destino, respectivamente, nos ns correspondentes v1 e v2
de G. Se v1 e v2 so adjacentes, ento este caminho nico. Caso
contrrio, pode existir mais de um caminho em G associado ao arco
(v1, v2) de G.

36

PUC-Rio - Certificao Digital N 0321287/CA

Figura 6: Correspondncia entre os grafos G e G

importante notar que, de acordo com as definies de G e G, decorre que

V V ' , ou, equivalentemente, todo n v de G tem seu n correspondente v no


grafo G .
2.4.5.
Caminho de Coleta e Entrega
Um caminho de coleta e entrega um conjunto ordenado

Oe = {e + , v1 , v2 ,..., vn , e } V

(1)

representando um caminho direcionado simples em G para uma locomotiva


de manobra e E , satisfazendo as seguintes condies:

{r + , r } Oe {r + , r } Oe = r R
+
Se v j = r e vk = r para um dado r R , ento k = j + 1 , ou

(2)

(3)

seja, vk um sucessor direto de vj em Oe

wr qe r R | r + Oe

(4)

Se vk = r + ou vk = r , sendo vk Oe ,

(5)

37

v
O
ento Tvk t fvk e Tvk = max{ts k , Tvk1 + t(vek1 )(vk ) }

Te + hs e Te h f

(6)

Onde Tv o instante no qual a locomotiva e E chega ao n vk V e


k

t(Ovek1 )(vk ) o tempo total necessrio para percorrer o caminho mais curto indo do n
vk-1 ao n vk.
A condio (2) fora o emparelhamento da coleta com a entrega e a
condio (3) a condio de carga nica, ou full truckload, que estabelece que
toda coleta deve ser imediatamente seguida de sua respectiva entrega. A condio
(4) a restrio de capacidade. A condio (5) especifica as restries de janela de

PUC-Rio - Certificao Digital N 0321287/CA

tempo de coleta e entrega: A locomotiva de manobras no pode chegar linha de


coleta e nem linha de entrega de cada manobra depois de seus respectivos finais
de janela de tempo e se a mesma chegar linha de coleta ou de entrega antes do
incio da janela de tempo correspondente, ela dever esperar at o instante t svk .
Finalmente, a condio (6) especifica que todas as manobras planejadas devem ser
executadas dentro do intervalo de tempo h .

rk2

r1+

e+ e

r1

rk+1

r2+

rk1
rk+2

rk+

rk = e

Figura 7: Caminho de coleta e entrega Oe no grafo G

38

A Figura 7 ilustra um caminho de coleta e entrega Oe em G. Os segmentos


contnuos representam o deslocamento de um comboio de ptio puxado ou
empurrado pela locomotiva e. Os segmentos pontilhados correspondem ao
deslocamento da locomotiva e no modo escoteira. Segmentos pontilhados e
contnuos so arcos do grafo G e os pequenos crculos redondos so ns deste
mesmo grafo.
O segmento ponto-tracejado representa uma seqncia de movimentos feitos
aos pares, primeiro em modo escoteira e depois em modo de transporte. A
locomotiva e inicia o seu caminho a partir de sua linha de estacionamento
representada pelo n e+, ou seja, onde se encontrava no momento do incio do
Horizonte de Planejamento. A partir da, a locomotiva e se desloca escoteira at a
+
linha r1 , de onde ela dever coletar os vages para a sua primeira manobra. Os

PUC-Rio - Certificao Digital N 0321287/CA

vages especificados na manobra r1 so ento acoplados locomotiva e, que os

transporta at a linha de entrega r1 . Em seguida, a locomotiva e se desloca


+
escoteira at o ponto r2 para coleta dos vages da segunda manobra e assim por

diante, at que a locomotiva e faz a sua ltima entrega na linha rk que tambm

a mesma linha onde ela estar estacionada ao final do Horizonte de Planejamento,

ou seja, utilizando a notao proposta rk = e . Vale notar que o n e - de um

horizonte de planejamento o n e+ do prximo horizonte de planejamento.


2.4.5.1.Custo de um caminho de coleta e entrega
O custo fixo de um caminho de coleta e entrega o custo de propriedade da
locomotiva associada a ele por unidade de tempo multiplicado pela durao do
horizonte de planejamento.
Como, por definio, um caminho de coleta e entrega uma seqncia de
vrtices do grafo G, o custo varivel de um caminho de coleta e entrega a soma
dos custos associados a todos os arcos de G contidas nele. Os itens que se seguem
apresentam duas definies para o custo associado aos arcos de G. A primeira
definio especifica o custo do caminho de coleta e entrega como funo da
distncia percorrida e a segunda definio especifica o custo como funo do
tempo gasto para percorrer o caminho.

39

Sabe-se que todo n v em Oe , por definio, uma linha do ptio e,


portanto, tem seu n correspondente v no grafo G. Sejam ento dois ns
adjacentes v1 e v2 em um caminho de coleta e entrega Oe. A dupla (v1, v2) est
naturalmente associada dupla (v1, v2) de G, assim, define-se o custo associado
a um arco (v1, v2) de G como sendo igual ao custo associado a um caminho
correspondente P (v1, v2 ) que vai de v1 at v2 em G. Estes conceitos so a base
para as definies que se seguem, as quais so importantes elementos para a
definio da funo objetivo do problema.
2.4.5.1.1.Custo varivel baseado em distncia
Como os ns do grafo G so linhas do ptio, o valor associado ao arco a
que une dois ns adjacentes v1 e v2 de G ' definido como sendo a distncia

PUC-Rio - Certificao Digital N 0321287/CA

entre o ponto mdio da linha associada ao n v1 e o ponto mdio da linha


associada ao n v2. A Figura 8 mostra duas linhas adjacentes de um ptio de
comprimento l1 e l2 respectivamente e a distncia l entre elas, calculada como
D(v1, v2 ) =

l1 + l 2

(7)

linha v1

linha v2

l1

l2

D(v1, v2 )

Figura 8: Duas linhas adjacentes e o clculo da distncia entre elas

Se as duas linhas v1 e v2 no so adjacentes, como G um grafo conexo,


decorre

que

existe

pelo

menos

um

caminho

P (v1, v2 ) = { v1 = u1, u2 , ..., un1, un = v2 } V em G unindo v1 a v2, sendo

n 3 . A distncia percorrida em cada caminho Pi (v1, v2 ) (com i 1 ) dada pela


seguinte frmula:
n 1

i (v1, v2 ) =

D(u , u
k

k =1

k +1

(8)

40

A distncia entre linhas v1 e v2 dada ento por

(v1, v2 ) = min{i (v1, v2 )}

(9)

O custo varivel de um caminho de coleta e entrega Oe ento definido


como a distncia total percorrida no caminho correspondente em G:

(Oe ) = cd

(vz, vz+1 )

z ,z +1Oe

(10)

onde cd um valor constante e igual ao custo mdio de deslocamento da


locomotiva de manobra e por unidade de distncia e vk e vk+1 so ns de G
associados aos ns vk e vk +1 de Oe.
O valor de cd uma aproximao e considera a mdia entre o custo de
PUC-Rio - Certificao Digital N 0321287/CA

deslocamento da locomotiva e no modo escoteira e o custo de deslocamento da


mesma no modo de transporte, acoplada a um conjunto de vages de peso mdio.
Esta uma definio simples e intuitiva do custo varivel de um caminho de
coleta e entrega: O custo proporcional distncia total percorrida pela
locomotiva ao longo de seu caminho. Como o valor da constante cd e o leiaute do
ptio so conhecidos e no variam durante o horizonte de planejamento, o custo
varivel baseado em distncia tambm denominado de custo varivel esttico.
2.4.5.1.2.Custo varivel baseado em tempo
O custo varivel baseado em tempo depende:


Da locomotiva que est fazendo o percurso;

Do peso dos vages que esto sendo tracionados;

Da distncia a ser percorrida entre o n de origem e o de destino;

Da hora em que a locomotiva parte do n de origem;

De eventuais necessidades de espera durante o seu percurso at que a


linha seguinte esteja livre.

Da durao do deslocamento entre cada par de linhas representadas


por ns adjacentes do caminho de coleta e entrega.

41

Para computar o custo baseado em tempo de uma locomotiva e percorrer um


caminho de coleta e entrega Oe , primeiro considera-se todos os caminhos
possveis

do

tipo P (v1, v2 ) = { v1 = u1, u2 , ..., un1, un = v2 } V em

unindo v1 a v2, sendo n 3 para cada par de ns v1 e v2 em G, associados ao


respectivos ns adjacentes do caminho de coleta e entrega. Depois, usa-se a
frmula (11), a qual se baseia nos custos por unidade de tempo da locomotiva e
em modo de transporte ct, modo escoteira cl e modo de espera cs e os tempos
correspondentes tt,, tl e ts em que a locomotiva e fica em cada um dos modos
durante o percurso de v1 a v2.
i (v1, v2 ) = cttt (v1, v2 ) + cltl (v1, v2 ) + csts (v1, v2 )

(11)

A partir deste ponto, segue-se o mesmo raciocnio usado para o clculo do

PUC-Rio - Certificao Digital N 0321287/CA

custo baseado em distncia. A frmula (9) toma a rota de v1 a v2 com menor


durao e finalmente a frmula (12) usada para calcular o custo varivel baseado
em tempo para o caminho de coleta e entrega Oe .

(Oe ) =

(vz, vz+1 )

z ,z +1Oe

(12)

Esta frmula muito parecida com a frmula (10), sendo que neste caso cd
no usado porque o seu papel j foi desempenhado pelas constantes ct,, cl e cs.
O tempo de espera em cada linha do caminho de coleta e entrega depende
do exato momento em que o comboio chega quela linha. A espera ocorre ou por
causa da restrio imposta pela janela de tempo ou devido linha adiante estar
ocupada por outro comboio ou locomotiva. Esta variabilidade do custo
dependente do tempo faz com que o valor do custo s possa ser obtido atravs de
uma simulao da execuo completa do caminho de coleta e entrega e
impossibilita o clculo antecipado do custo das rotas entre cada par de ns
adjacentes do caminho de coleta e entrega, como ocorre no caso do custo baseado
em distncia. Estas caractersticas do custo baseado em tempo conferem ao
mesmo o nome alternativo de custo varivel dinmico.
2.4.6.
Formulao
Seja um conjunto

42

= {Oe }eE

(13)

de caminhos de coleta e entrega, tais que:


Dados ra , rb R , se ra predecessor de rb , ento Tr < Tr +

(14)

Oe = V

(15)

e E

A soluo para o problema de programao de operaes das locomotivas


de manobra (PPOLM) consiste em encontrar o conjunto * que minimiza a
funo objetivo:

C (* ) =

c1
|E |

(* ) +

c2
d

(O )

Oe *

(16)

onde (*) o nmero de caminhos de coleta e entrega em * com mais de dois


PUC-Rio - Certificao Digital N 0321287/CA

elementos, c1 e c2 so constantes no negativas definidas pela equipe de


planejamento de operaes de ptio, |E| o tamanho da frota, ou seja, o nmero
de locomotivas de manobras disponveis no ptio, d uma estimativa da distncia
mxima que a locomotiva de manobras mais rpida da frota conseguiria percorrer
escoteira durante o horizonte de planejamento h e (Oe ) o custo varivel do
caminho de coleta e entrega de *, percorrido pela locomotiva e, e calculado
utilizando-se a frmula (10) ou a frmula (12).Vale notar que o valor do horizonte
de planejamento h comum a todos os caminhos de coleta e entrega contidos
em *.
Eventualmente, para uma dada locomotiva ek E pode ocorrer que
Oe = {ek+, ek } . Este caminho de coleta e entrega Oe , com apenas dois elementos,
k

representa a possibilidade da locomotiva ek E no executar nenhuma manobra


durante o horizonte de planejamento h . Este tipo de conjunto de * no
considerado no clculo de (*) e, portanto, |E| (*), ou seja, (*) o
nmero de locomotivas efetivamente utilizadas na soluo do PPOLM.
Os valores c1 e c2 na frmula (16) expressam a importncia relativa do custo
fixo comparado ao custo varivel na operao do ptio em estudo, tornando a
frmula da funo objetivo uma soma ponderada. Um mtodo para clculo destes
valores consiste em apurar o custo varivel mdio por unidade de tempo e

43

comparar com o custo fixo mdio por locomotiva e por unidade de tempo e depois
estabelecer a relao de proporo entre os dois valores considerando,
adicionalmente, as metas do planejamento ttico, como, por exemplo, diminuio
do nmero de locomotivas de manobras no ptio. Independentemente do mtodo
utilizado para valores c1 e c2, pode-se dizer que estes valores so arbitrariamente
definidos pelo usurio e tm como objetivo definir a importncia do objetivo de
reduzir a frota de locomotivas utilizada no ptio comparada ao objetivo de fazer
com que as manobras sejam executadas mais rapidamente e com menor consumo
de combustvel.
A frmula (14) expressa a restrio de precedncia do PPOLM. Esta
restrio identifica uma diferena importante no critrio de seleo das solues
viveis entre o algoritmo CompetAnts e o algoritmo proposto neste trabalho.

PUC-Rio - Certificao Digital N 0321287/CA

A frmula (15) faz com que todas as ordens de servio sejam atendidas pela
coleo de caminhos de coleta e entrega da frmula (13). O fato do valor de
*
C ( * ) ser mnimo implica que no h ordem de servio repetida em .

A frmula (16) expressa o objetivo de reduzir o custo total associado ao


conjunto *. O primeiro termo da soma proporcional ao custo fixo da soluo e
o segundo termo proporcional ao custo varivel
Os valores de |E| e d foram usados na frmula (16) para impedir que haja
uma diferena considervel na magnitude dos dois elementos da soma. Estes
valores fazem com que as constantes c1 e c2 funcionem conforme desejado,
independente de fatores como a quantidade de veculos disponveis no ptio, a
durao do horizonte de planejamento e a unidade de medida de deslocamento
utilizada.
O uso da frmula do custo varivel ou dinmico para o clculo de (Oe )
depende da qualidade das informaes disponveis sobre o ptio e do tempo de
processamento permitido para se apresentar a soluo do problema. Se os tempos
envolvidos na frmula (11) podem ser computados com um nvel de confiabilidade
razovel, utiliza-se a frmula (12) e obtm-se o custo varivel dinmico, caso
contrrio, utiliza-se a frmula (10) e obtm-se o custo varivel esttico. Alm
disso, o uso da frmula (12) implica em um maior tempo de processamento j que
o custo varivel esttico pode ser calculado inicialmente e usado durante todo o

44

decorrer do processo enquanto o custo varivel dinmico requer o clculo e


atualizao durante a construo da soluo, j que varia em funo do tempo.
Alguns profissionais da rea questionam a importncia de se considerar o
custo fixo na funo objetivo j que, depois de adquirida ou alugada, a locomotiva
de manobras normalmente alocada para trabalhar no ptio por um perodo
equivalente a vrios horizontes de planejamento. Sendo assim, a reduo de custo
obtida com a reduo da frota no ocorre, normalmente, para o horizonte de
planejamento considerado. De fato, este argumento vlido se o planejamento for
considerado com uma perspectiva operacional, no entanto, a utilizao recorrente
de um nmero menor de locomotivas de manobras do que o disponvel no ptio ao
longo de sucessivos horizontes de planejamento indcio de que o planejamento
ttico deve considerar a reduo da frota para aquele ptio. De qualquer forma, os

PUC-Rio - Certificao Digital N 0321287/CA

valores de c1 e c2 na frmula (16) do ao usurio a flexibilidade de indicar, no


contexto da operao do ptio considerado, a importncia do custo fixo em
relao ao custo varivel, sendo possvel, inclusive, atribuir o valor zero para c1
indicando que o custo varivel no tem nenhuma importncia para o problema
dado.
2.5.
O PPOLM como um problema esttico
Uma caracterstica importante dos problemas de roteamento em geral o
modo como as requisies de transporte se tornam disponveis. Um problema
classificado como esttico quando todas as requisies de transporte so
conhecidas antes da execuo das rotas pelos veculos, e classificado como
dinmico se algumas requisies so conhecidas inicialmente e outras requisies
surgem em tempo real, depois que os veculos j iniciaram a execuo das rotas,
sendo necessria a modificao da rota de algum veculo para incluso da nova
requisio acrescentada. Outras diferenas entre o problema esttico e o dinmico,
bem como uma reviso dos mtodos e resultados mais importantes para soluo
dos dois tipos de problema pode ser encontrado em Mitrovic-Minic & Laporte
(2003).
No caso real utilizado como referncia para a modelagem desenvolvida
neste trabalho, a maioria das demandas produto de algum planejamento prvio e,
portanto, so conhecidas antes de sua execuo, de modo que no necessrio

45

planejar a execuo das ordens de servio imediatamente aps tomar


conhecimento das mesmas.
Havendo um planejamento prvio, legtimo, portanto, assumir que em um
dado momento t0, todas as ordens de servio a serem atendidas, dentro de um
horizonte de tempo definido previamente, so conhecidas (Lubbecke, 2001). Esta
premissa motiva a utilizao do horizonte de planejamento @h de durao h,
conforme definido no item 2.4.1, de modo que s so consideradas as ordens de
servio que podem ser executadas at o tempo t0 + h. Vale notar que o valor de h
define, implicitamente, o tamanho da instncia do problema, j que, para uma
freqncia constante de execuo de manobras, este valor limita o nmero de
ordens de servio a serem consideradas no planejamento.
Para tratar demandas emergenciais surgidas em um momento t (t > t0, t
PUC-Rio - Certificao Digital N 0321287/CA

[hi, hf] ) durante a execuo de uma seqncia planejada de manobras pode-se,

simplesmente, registrar a situao do terminal naquele momento, juntamente com


as manobras ainda no executadas e adicionar a estas as novas manobras
emergenciais,

submetendo

este

novo

conjunto

de

informaes

para

processamento. Esta a estratgia adotada na maioria das vezes, na prtica, para


resolver problemas dinmicos: O problema inicial visto como uma seqncia de
problemas estticos (Savelsbergh & Sol, 1995).
Vale lembrar que ao modelar o PPOLM como esttico estabelece-se uma
restrio importante no tempo de execuo do algoritmo que ir resolv-lo: depois
de implementado o algoritmo no computador, o tempo de entrada de dados mais o
tempo de execuo do programa resultante no pode ser maior do que a durao
do horizonte de planejamento dividido pelo nmero de vezes que se pode desejar
incluir novas ordens de servio durante a execuo do plano proposto.

3
Reviso da literatura

Pensar mais interessante que saber e menos interessante que observar.


JOHANN WOLFGANG GOETHE

O objetivo deste captulo apresentar as referncias mais importantes

PUC-Rio - Certificao Digital N 0321287/CA

relacionadas aos trs principais tpicos cobertos neste trabalho que so o


planejamento operacional de ptios ferrovirios, o problema de coleta e entrega e
a otimizao com colnia de formigas.
Neste trabalho, o PPOLM modelado como um problema de coleta e
entrega com vrios veculos, restrio de janelas de tempo, capacidade e
precedncia, composto com um problema de encontrar o caminho mais curto entre
dois vrtices de um grafo onde o peso dependente de espao e tempo. O
problema de coleta e entrega resolvido com uma metaheurstica de otimizao
com colnia de formigas envolvendo duas colnias e o caminho mnimo
encontrado com o tradicional algoritmo de Dijkstra.

3.1.
Planejamento operacional de ptios ferrovirios
A principal motivao deste trabalho a reduo dos custos operacionais de
ptios ferrovirios. Neste contexto, espao, tempo e custo so variveis
interdependentes e constituem o foco principal da anlise. Por exemplo, espaos
mais curtos percorridos pelas locomotivas de manobras implicam em menor
tempo para percorr-lo e conseqentemente menor consumo de combustvel e
menor tempo de alocao dos recursos humanos envolvidos (e.g. tripulao,
tcnicos de operao ferroviria), reduzindo assim o custo operacional do ptio.

47

Daganzo et al. (1983) destaca os dois componentes mais importantes do


ciclo mdio de vages: O tempo em que o vago fica na ferrovia, que equivale,
em mdia, a 14% do ciclo mdio de vago e o tempo em que o vago fica em
ptios, que corresponde a 62% do ciclo mdio de vago. Trabalhos mais recentes
como Dyke (2006) e Dirnberger & Barkan (2007) mostram que esta proporo de
distribuio dos componentes do ciclo de vago no mudou muito durante as
ltimas dcadas. Isto significa que investimentos na melhoria operacional dos
ptios, visando reduzir o tempo de permanncia dos vages nos mesmos implicam
em um grande potencial de reduo do ciclo de vago e, conseqentemente, em
uma perspectiva de melhoria considervel na eficincia do sistema de transporte
ferrovirio como um todo. Com efeito, segundo Bektas et al. (2007), uma das
iniciativas mais importantes para aumentar a produtividade e a competitividade
das ferrovias a gesto eficiente dos ptios ferrovirios, fazendo com que os
PUC-Rio - Certificao Digital N 0321287/CA

vages sejam processados o mais rpido possvel, de modo a propiciar uma


utilizao eficiente dos ativos e atender os horrios de conexo.
Embora o investimento em melhorias operacionais de ptios sugira ganhos
potenciais, existem poucos trabalhos publicados nesta rea. De acordo com
Lbbecke (2001), o trabalho pioneiro Charnes & Miller (1956) era o nico
publicado sobre programao de trabalho para locomotivas de manobras em
ptios ferrovirios em um intervalo de 45 anos at aquela data. Reis Jr. (2003),
estuda algoritmos de branch and bound paralelos para planejamento de manobras
em ptios e, finalmente, encerrando a lista das referncias conhecidas sobre o
assunto, aparece Sabino (2004) que a pesquisa precursora deste trabalho.
Reis Jr. (2003) um trabalho de interesse peculiar para esta pesquisa j que
o mesmo usa como referncia o mesmo ambiente industrial. Nesse trabalho, no
so apresentadas as caractersticas detalhadas do ambiente estudado, nem o
mtodo utilizado para coleta dos dados reais, nem os dados de entrada usados nos
testes computacionais e nem as solues encontradas para cada instncia testada.
Isto torna impossvel us-lo como referncia para uma comparao dos problemas
e dos mtodos adotados para soluo. No entanto, aparentemente, esse trabalho
estuda um problema similar ao PPOLM e, sem um tratamento formal do mesmo,
o modela como um problema de escalonamento de tarefas, caracterizando-o como
uma busca pelo melhor caminho em um grafo e um problema de programao de

48

manobras. O objetivo principal foi apresentar uma soluo paralela para tais
problemas e a concluso foi que, embora a tcnica escolhida seja eficiente, ela
sensvel a problemas internos como gargalos de comunicao e anomalias. Do
ponto de vista de aplicao prtica, no foi apresentado o resultado de testes
comparativos usando como referncia dados reais ou mesmo a simulao destes.
A concluso naquela poca foi que, embora o algoritmo proposto tenha sido
considerado aplicvel em qualquer ptio, o mesmo no considerava alguns
aspectos importantes tais como linhas frreas interditadas, rotas conflitantes e
lotes de vago de diferentes tamanhos, j que estes itens foram relaxados para se
permitir um primeiro passo na soluo dos problemas citados.
Kraft (1998) e Daganzo et al. (1983) tratam de outros problemas
relacionados ao planejamento operacional de ptios sem, no entanto, referenciar o

PUC-Rio - Certificao Digital N 0321287/CA

PPOLM especificamente. Kraft (1998) apresenta um mtodo de controle


operacional e programao de carregamento e Daganzo et al. (1983) prope um
procedimento para melhorar a eficincia das operaes de classificaes em ptios
ferrovirios. Estes dois trabalhos foram as principais referncias durante os
estudos que resultaram na decomposio do planejamento operacional de ptios
ferrovirios em trs etapas e forneceram os fundamentos para a modelagem do
caminho das locomotivas de manobras.
A maioria (e, de fato, a quase totalidade) dos estudos sobre planejamento
operacional de ferrovias aborda a movimentao de cargas pela ferrovia, a
programao de trabalho com as locomotivas de viagem, a atribuio de blocos a
trens e a definio da programao de trens. Trabalhos como Ahuja & Jha (2004)
e Ahuja et al. (2004), Crainic et al. (1984), Crainic & Roy (1988), Keaton (1989),
Marin & Salmeron (1996a, 1996b), Martinelli & Hualiang (1996), Crainic &
Laporte (1997), Gualda & Murgel (2000) e Crainic (2002), embora no tratem
especificamente das operaes de ptio e sim do planejamento operacional e ttico
de todo o sistema ferrovirio, forneceram uma boa base sobre a terminologia e a
modelagem contribuindo para que a abordagem contida neste trabalho
considerasse o planejamento de ptios no contexto do sistema ferrovirio como
todo.
Ahuja et al. (2002), Kuo & Nicholls (2007) e Vaidyanathan et al. (2008),
embora tratem da programao de trabalho de locomotivas visando a reduo do

49

custo operacional, consideram locomotivas que viajam pela ferrovia para


transportar carga e no locomotivas que executam manobras em ptios.
Tambm na rea de simulao no foi possvel identificar trabalhos que
tratassem de planos de trabalho de locomotivas de manobra. A referncia que
mais se aproxima deste assunto Franzese et al. (2003) que apresenta um
simulador da Estrada de Ferro Vitria a Minas, da qual um dos ptios terminais
exatamente o ptio de referncia para a aplicao prtica do algoritmo apresentado
nesta tese. Este simulador, que utiliza uma interface grfica com o usurio
desenvolvida em Microsoft Excel, se baseia no software ARENA, da Rockwell
Automation para desenvolver um estudo cujo objetivo principal foi verificar se
trens com 320 vages aumentariam a capacidade de transporte do sistema
ferrovirio. Mais uma vez, o foco deste trabalho est na ferrovia e no no ptio.

PUC-Rio - Certificao Digital N 0321287/CA

Diante do nmero limitado de referncias bibliogrficas sobre o problema


especfico do qual trata este trabalho, muitas informaes importantes foram
obtidas atravs de entrevistas com profissionais da rea.
3.2.
Problema de coleta e entrega
De acordo com o modelo proposto neste trabalho e considerando a
modelagem apresentada em Parragh et al. (2006), o problema que mais se
aproxima do PPOLM o problema de coleta e entrega clssico. Mais
especificamente, pode-se dizer que o PPOLM um problema de coleta e entrega
com janelas de tempo, como em Dumas et al. (1991), devido especificao de
um intervalo de tempo para coleta e para entrega dos vages, com mltiplos
veculos, como em Zhou et al. (2006), porque a soluo pode utilizar mais de uma
locomotiva de manobra, com frota heterognea, como em Lee et al. (2007), pois
as locomotivas de manobra podem ter capacidades de trao diferente, com carga
nica, ou full truck load, como em Jin & Muriel (2005), j que uma locomotiva
no pode coletar vages adicionais sem que antes tenha entregue os vages que
esteja transportando, com precedncias, como em Sigurd et al. (2000), pois h
uma ordem pr-definida para realizar certas manobras, e, finalmente, com
mltiplos objetivos, como em Lu & Dessouky (2004), j que deseja-se reduzir
tanto custo fixo, relacionado quantidade de locomotivas necessrias para a
soluo, quanto o custo varivel, relacionado ao deslocamento das locomotivas

50

para realizao das manobras planejadas. Em suma o PPOLM pode ser


considerado um problema de coleta e entrega com janelas de tempo, mltiplos
veculos, frota heterognea, carga nica, precedncias e mltiplos objetivos.
O problema de coleta com janelas de tempo tem inmeras aplicaes
prticas referenciadas na literatura. Toth & Vigo (2002) citam alguns exemplos
clssicos como o transporte de deficientes fsicos e idosos, transporte areo e
naval de cargas e tropas militares, servios urbanos de coleta e entrega de
encomendas e planejamento de rotas de nibus escolares. Motivados pela
diversidade de trabalhos disponvel na literatura, alguns pesquisadores chegaram a
desenvolver levantamentos bibliogrficos sobre o problema de coleta e entrega,
dentre os quais os seguintes foram referncias importantes para este trabalho:


Savelsbergh & Sol (1995), que desenvolve uma anlise sistemtica

PUC-Rio - Certificao Digital N 0321287/CA

cobrindo todas as variaes conhecidas at ento do problema de


coleta e entrega. Para cada verso apresentada a formulao e a
modelagem, bem como os mtodos conhecidos para a soluo;


Mitrovic-Minic (1998), que apresenta um levantamento sobre as


variaes e mtodos disponveis para soluo com foco no problema
de coleta e entrega com janelas de tempo, incluindo a formulao
matemtica utilizada para o desenho de solues exatas;

Parragh et al. (2006), que o levantamento mais recente de modelos


para tratamento do problema de coleta e entrega e, em especial, faz
referncia ao caso onde h itens transportados entre locais de coleta
e entrega (e no entre depsitos) e suas variaes, desenvolvendo
uma classificao com respectivas formulaes matemticas e
mtodos de soluo conhecidos para cada caso.

Algoritmos para soluo de problemas de coleta e entrega com janelas de


tempo e outras restries so geralmente divididos em trs classes:


Os

algoritmos

exatos,

aplicados

modelos

baseados

em

programao inteira, que resolvem o problema usando mtodos com


gerao de colunas, branch-and-bound ou branch-and-cut como em
Dumas et al. (1991), Baldacci et al. (2004), Cordeau (2006),
DellAmico et al. (2006) e Ropke et al. (2007);

51

As heursticas que constroem, por decomposio ou insero, um


conjunto de rotas viveis a partir do zero como em Lu & Dessouky
(2006) e DellAmico et al. (2007) ou procuram melhorar uma
soluo inicial atravs da aplicao de um algoritmo de busca local
como em Nanry & Barnes (2000) e Cordeau & Laporte (2003).

As metaheursticas, tais como Ant Colony Optimization (ACO),


Evolutionary Computation (EC), Simulated Annealing (SA) e Tabu
Search (TS), que segundo Dorigo & Sttzel (2004), so mtodos
heursticos de propsito geral, desenvolvidos para guiar uma
heurstica subordinada (e.g. uma heurstica de construo ou de
busca local) em direo a regies do espao de busca que contenham
solues de alta qualidade. Este o caso de Li & Lim (2003), Barcus

PUC-Rio - Certificao Digital N 0321287/CA

(2004) e Tarantilis et al. (2005). Blum & Roli (2003) apresentam e


comparam as metaheursticas mais importantes disponveis na
literatura at aquela poca.
O problema de coleta e entrega com janela de tempo NP-difcil (MitrovicMinic, 1998). Com efeito, algoritmos exatos tm requerido um consumo
considervel de recursos computacionais para encontrar a soluo tima de
problemas mais simples e com instncias de tamanho modesto. Este o caso de
Toth & Vigo (1997), que trata de um problema de coleta e entrega sem janelas de
tempo com uma tcnica baseada em limites inferiores obtidos pela aplicao de
Relaxao Lagrangeana, combinada com o uso de planos de cortes, algoritmo
branch-and-bound, procedimentos de reduo e critrios de dominncia, para
resolver instncias com 100 pontos de coleta e entrega, consumindo 1h40min de
tempo de CPU de um processador Pentium de 60MHz. Outro exemplo mais
recente Lu & Dessouky (2004) que, no melhor caso, consegue resolver um
problema de coleta e entrega com mltiplos veculos e mltiplos objetivos, mas
sem janelas de tempo com, no mximo, 5 veculos e 25 pontos de coleta,
requerendo, para tanto, trs horas de tempo de CPU em um servidor Sunfire
4800. Um caso prtico do PPOLM tem cerca de 120 pontos de coleta e entrega, e
se deseja resolv-lo em alguns minutos usando um computador de baixo custo.
Diante deste cenrio, fica claro o motivo pelo qual comum o uso de heursticas
ou metaheursticas para buscar solues de problemas da vida real, j que deste

52

modo possvel encontrar boas solues com tempo de CPU razovel e, portanto,
tempo de execuo praticvel.
Mesmo diante da diversidade de modelos, mtodos e resultados reportados
na literatura, a avaliao do desempenho relativo de algoritmos para resolver
problemas de coleta e entrega com janelas de tempo praticamente impossvel, j
que at o momento no h conjuntos conhecidos de instncias de referncia (i.e.
benchmarks) para o caso genrico deste problema. Toth & Vigo (2002) explicam
que isto ocorre principalmente devido diversidade de variaes dos problemas
estudados, j que a maioria dos trabalhos se baseia em aplicaes prticas, as
quais induzem modelagens especficas para a representao das restries e da
funo objetivo. Assim, os mtodos so testados com dados simulados da situao
real em estudo e os resultados so comparados com os obtidos com as solues

PUC-Rio - Certificao Digital N 0321287/CA

manuais em uso.
3.3.
Otimizao com Colnia de Formiga
Otimizao com Colnia de Formiga ou Ant Colony Optimization (ACO)
como so mais conhecidos na literatura, uma classe de algoritmos que geram
solues candidatas para um problema de otimizao atravs de um mecanismo
construtivo onde a escolha do componente da soluo a ser adicionado em cada
passo se baseia em um balanceamento probabilstico que considera trilhas de
feromnio artificial e informaes heursticas sobre o problema em questo
(Dorigo & Sttzle, 2004).
Dentre os diversos algoritmos ACO disponveis atualmente na literatura, o
primeiro a ser proposto foi o algoritmo Ant System (AS), apresentado nas verses
originais denominadas ant-density (Dorigo et al., 1991), ant-quantity (Colorni et
al., 1992) e ant-cycle (Dorigo, 1992). Atualmente ACO se caracteriza como uma
ferramenta de otimizao poderosa e verstil, com um nmero crescente de
publicaes e aplicaes em diversas reas da pesquisa operacional, gesto e
tecnologia (Gutjahr, 2007).
Problemas de otimizao combinatria tratados com ACO so normalmente
codificados atravs de um grafo de construo completo G(V,A), onde os ns de
V so componentes da soluo e os arcos de A so conexes entre os

53

componentes. Construir uma soluo significa encontrar um caminho vivel em


G. Por exemplo, no problema do caixeiro viajante, os ns correspondem aos
clientes, os arcos correspondem s ruas que conectam os clientes e uma soluo
vivel um caminho hamiltoniano no grafo (Bianchi, 2006).
Os pargrafos seguintes apresentam uma viso geral do algoritmo Ant
System (AS) baseado na descrio apresentada em Dorigo et al. (2006).
Uma formiga um agente computacional simples, que constri
iterativamente uma soluo para o problema de otimizao em questo.
Usualmente, nos algoritmos ACO, cada formiga artificial parte de uma soluo
vazia e adiciona componentes sua soluo parcial at conseguir uma soluo
candidata completa. Solues parciais para o problema so chamadas estados.
Assim, uma formiga move de um estado i para um estado j correspondente a uma
PUC-Rio - Certificao Digital N 0321287/CA

soluo parcial mais completa para o problema. Em cada passo s, uma formiga a
determina o conjunto de expanses viveis para o seu estado atual e escolhe uma
destas expanses, movendo-se para um novo estado, baseada na distribuio de
probabilidade que se segue.
A probabilidade pia, j de uma formiga se mover de um estado i para um
estado j depende da combinao de dois valores:
1. A atratividade do movimento, calculada antes do processo de
construo da soluo e, portanto, considerada uma indicao prvia
do grau de atrao do movimento;
2. O nvel de feromnio do movimento, que indica o quo eficiente
foi fazer aquele movimento no passado. Este valor considerado
uma indicao posterior da atratividade do referido movimento, j
que calculado durante o processo de construo da soluo.
A Figura 9 ilustra as diversas possibilidades de passo de uma formiga partir
do estado i. Se o estado j ainda no foi visitado, ou seja, se ainda no pertence ao
caminho da formiga, a probabilidade de escolha deste estado proporcional ao
nvel de feromnio e atratividade associado ao passo (i,j).

54

pia, j (, )

j
i

k
Figura 9:: Movimentos possveis de uma formiga a partir do estado i

A frmula que define a distribuio de probabilidade em cada passo utiliza o


conjunto inviveis
viveisa que define
define as solues inviveis para a formiga a,, de acordo
com condies que dependem da definio do problema. A
Ass probabilidades so

PUC-Rio - Certificao Digital N 0321287/CA

computadas como segue: pia, j igual a zero para todos os passos inviveis (isto ,
os que esto contidos no conjunto inviveis
viveisa), caso contrrio, a probabilidade
calculada pela seguinte frmula:
a
ij

p =

ij ij

iv iv

(17)

(iv )inviveisa

onde ij a quantidade de feromnio associado ao movimento de i para j, ij a


atratividade associada a este movimento e os parmetros e definem a
importncia do feromnio em relao atratividade.
atratividade A atratividade normalmente
definida
finida como sendo o inverso do custo associado ao movimento de i para j.
Para o problema clssico do caixeiro viajante, por exemplo, onde o custo a
distncia entre dois ns, a atratividade normalmente o inverso da distncia.
A quantidade de feromnio deixada
deixada no caminho atualizada em cada
iterao. Inicialmente, todos os caminhos tm
t m sua quantidade de feromnio
reduzida, simulado assim o fenmeno da evaporao do feromnio, tal como
ocorre na natureza. Em seguida, os
os caminhos que fazem parte da soluo
solu
encontrada por alguma formiga tem sua quantidade de feromnio incrementada.
Os demais caminhos no tm acrscimo de sua quantidade de feromnio
feromnio. Em cada
iterao t do algoritmo, depois que todas as formigas completaram sua soluo a
quantidade de feromnio
feromnio atualizada de acordo com a seguinte frmula:

55

ij (t ) = ij (t 1) + ijk

(18)

k =1

onde um valor definido pelo usurio que representa a persistncia do


feromnio ao longo das iteraes, m o nmero de formigas e ijk representa a
quantidade de feromnio deixada pela formiga k na aresta (i,j).
A contribuio de cada formiga para o depsito de feromnio em cada passo
de seu caminho proporcional qualidade da soluo obtida por aquela formiga:
Quanto melhor for a qualidade da soluo, maior a quantidade de feromnio
depositado. Se o caminho da formiga k no inclui a aresta (i,j) ento o valor de

PUC-Rio - Certificao Digital N 0321287/CA

ijk zero.
ACO
Passo 1: Inicializao
Definir valor inicial do feromnio;
Definir soluo com o pior valor possvel;
Inicializar caminho com vazio;
Passo 2: Construo
Para cada formiga k repetir {
Calcular os valores de ;
Escolher o estado para movimentao usando a
probabilidade dada pela frmula(17);
Adicionar o movimento escolhido ao conjunto inviveis;
} At que a formiga obtenha uma soluo completa
ou desista;
[melhorar a soluo com busca local] Opcional
Se (valor da nova soluo melhor que soluo) {
Atualizar soluo com o novo valor;
Atualizar caminho associado ao novo valor;
}
Passo 3: Atualizao do feromnio
Para cada movimento do caminho da soluo {
Calcular

ijk

Atualizar a matriz de feromnios usando a frmula (18)


}
Passo 4: Condio de trmino
Se (condio de trmino no satisfeita) v para o passo2;
Figura 10: Algoritmo ACO genrico, baseado em Maniezzo & Carbonaro (1999)

A Figura 10 apresenta um procedimento ACO genrico em pseudo-cdigo.


Primeiramente a matriz de feromnios inicializada. Depois cada formiga tem a

56

chance de construir a sua prpria soluo completa ou desistir. A desistncia


ocorre caso a formiga chegue a um estado sem possibilidade de movimento e no
estiver ainda com uma soluo completa. Depois disso, o rastro de feromnio ao
longo dos caminhos percorridos atualizado e finalmente a condio de trmino
testada (e.g. depois de decorrido um determinado tempo de execuo) para definir
se uma nova iterao ser necessria. Um exemplo de condio de trmino seria
Em alguns casos, usa-se um algoritmo de busca local para aperfeioar cada
soluo encontrada.
Embora a convergncia do algoritmo ACO tenha sido provada (Dorigo &
Blum, 2005), no h estudos disponveis na literatura sobre a velocidade de
convergncia. Sendo assim, no h outra forma de medir o desempenho do
algoritmo a no ser a execuo de extensos testes experimentais (Dorigo &

PUC-Rio - Certificao Digital N 0321287/CA

Sttzle, 2004).
Dorigo et al. (2006), apresenta a famlia de algoritmos ACO como um
conjunto de mtodos para resolver vrios problemas de otimizao combinatria,
quer sejam estticos ou dinmicos. A Tabela 1 mostra algumas aplicaes bem
sucedidas da metaheurstica ACO para resolver problemas clssicos de
otimizao, e os respectivos anos de publicao.
Lista no exaustiva de aplicaes do algoritmo ACO agrupados por tipo de problema
TIPO DE PROBLEMA
ROTEAMENTO

NOME DO PROBLEMA
CAIXEIRO VIAJANTE

ROTEAMENTO DE VECULOS

ATRIBUIO

AGENDAMENTO

SUBCONJUNTO

OUTROS

ORDENAO SEQUENCIAL
ATRIBUIO QUADRTICA
TABELA DE CURSOS
COLORAO DE GRAFOS
PROGRAMAO DE PROJETOS
ATRASO TOTAL PONDERADO
PROGRAMAO DA PRODUO
RECOBRIMENTO DE CONJUNTOS
RVORES DE CARDINALIDADE i
MOCHILA MLTIPLO
CLIQUE MXIMO
SATISFAO DE RESTRIES
REGRAS DE CLASSIFICAO
REDES BAYESIANAS
ENROLAMENTO DE PROTENAS
DOCKING PROTENA-LIGANTE

AUTORES
DORIGO ET AL
DORIGO E GAMBARDELLA
STTZLE E HOOS
GAMBARDELLA ET AL
REIMANN ET AL
GAMBARDELLA E DORIGO
STTZLE E HOOS
MANIEZZO
SOCHA ET AL
COSTA E HERTZ
MERKLE ET AL
DEN BESTEN ET AL
MERKLE E MIDDENDORF
BLUM
LESSING ET AL
BLUM E BLESA
LEGUIZAMN E MICHALEWICZ
FENET E SOLNON
SOLNON
PARPINELLI ET AL
MARRTENS ET AL
CAMPOS ET AL
SHMYGELSKA E HOOS
KORB ET AL

Tabela 1: Aplicaes de ACO, baseada em Dorigo, Birattari e Sttzle, 2006

ANO
1991, 1996
1997
1997, 2000
1999
2004
2000
2000
1999
2002,2003
1997
2002
2000
2000
2005
2004
2005
1999
2003
2000,2002
2002
2006
2002
2005
2006

57

Dorigo & Blum (2005) uma boa referncia terica sobre a metaheurstica
ACO. Este trabalho apresenta uma reviso dos resultados sobre convergncia do
algoritmo, discute as relaes entre ACO e outros mtodos de aproximao e
identifica algumas questes em aberto como motivao para pesquisas futuras.
As referncias mais importantes sobre ACO para este trabalho foram as que
apresentam casos de soluo de problemas de otimizao multi-objetivo em
sistemas de transporte. Neste contexto se destacam Reimann (2002), que
apresenta um algoritmo ACO com duas colnias de formigas para resolver um
problema de transporte com caminhes de carga similar ao PPOLM, Sabino
(2004) que a pesquisa precursora deste trabalho e que apresenta um prottipo de
algoritmo para resolver o PPOLM e Gambardella et al. (2003), que apresenta duas
ferramentas para assistir o planejamento de roteiro em vrias fases de um processo

PUC-Rio - Certificao Digital N 0321287/CA

de entrega de encomendas.

4
Metodologia de soluo do problema

A direo mais importante que a velocidade.


ROBERTO SCARINGELLA

Este captulo apresenta uma viso geral da modelagem e mtodo de soluo

PUC-Rio - Certificao Digital N 0321287/CA

proposto para resolver o PPOLM. A estratgia de soluo baseada no uso da


metaheurstica ACO.
4.1.
Escolha dos algoritmos
Os seguintes fatores foram os principais motivadores para a escolha da
metaheurstica ACO para a construo do plano de trabalho das locomotivas de
manobra no PPOLM :
 A

facilidade

de

implementao

manuteno:

Alm

da

implementao muito simples, novas restries e caractersticas do


problema so adicionadas com mnima reviso de cdigo. Estas
caractersticas se tornaram evidentes durante a fase de desenho e
codificao da aplicao;
 A oportunidade de explorar o estado da arte em tendncias e
ferramentas: o ltimo workshop bianual sobre ACO e Swarm
Intelligence, realizado em Bruxelas, na Blgica em 2006, contou
com 50 trabalhos apresentados a partir de uma seleo que
aproveitou 42% do total de trabalhos submetidos. Alm disso, o
prmio concedido pelo IFORMS-RASIG Group ao trabalho em
Sabino (2002), o qual um dos precursores deste, mostrou o
interesse por esta nova abordagem, tanto pela comunidade

59

acadmica como pelos profissionais da rea de planejamento


ferrovirio;
 Os bons resultados em pesquisas anteriores: ACO tem se destacado
como uma tcnica eficiente e flexvel para resolver problemas de
otimizao combinatria do tipo do PPOLM (Reimann, 2002;
Gambardella et al., 2003).
O algoritmo de Dijkstra foi a base para a implementao da lgica de
determinao da melhor rota dos comboios pelo ptio. Esta escolha foi feita
considerando os critrios de flexibilidade, escalabilidade, desempenho e
complexidade de implementao deste algoritmo comparado a outros mtodos de
soluo de problemas de determinao de caminho mnimo. A avaliao destes
critrios foi feita baseada nos modelos de desempenho apresentados em Foster

PUC-Rio - Certificao Digital N 0321287/CA

(2006) para projeto e implementao de programas eficientes.


4.2.
Construo do plano de trabalho das locomotivas de manobras
O algoritmo principal desenvolvido para soluo do problema de
programao das locomotivas foi denominado YoYo - mnemnico de Yard
Operation Yeld Optimization. O algoritmo YoYo foi construdo tomando como
base o algoritmo competATS, apresentado em Reimann (2002), que uma
implementao de otimizao com colnia de formigas onde h duas colnias
com regras de prioridade diferentes. Uma colnia, chamada de colnia Empty
Move (EM), busca solues com baixo custo varivel e para isso procura executar
as manobras de modo a minimizar o deslocamento total das locomotivas de
manobras. A outra colnia de formigas, chamada de colnia Waiting Time (WT)
busca solues com baixo custo fixo, procurando assim reduzir a quantidade de
locomotivas de manobras necessrias.
As caractersticas do problema que vo definir qual das duas colnias vai
conseguir chegar melhor soluo. Por exemplo, se as janelas de tempo so
curtas, ento a colnia WT no vai ter muitas chances de atingir sua meta que a
maximizar a utilizao das locomotivas de manobras atravs da reduo do tempo
de espera no ponto de coleta no caso da locomotiva chegar antes do horrio
mnimo permitido. Por outro lado, se as janelas de tempo so longas a colnia WT

60

tende a obter melhores resultados. Considerando que tanto a reduo do tempo de


espera quanto a reduo dos movimentos vazios minimiza o custo total, a idia
explorar o ponto forte de ambas as colnias. Em primeiro lugar, o nmero de
formigas de cada colnia no constante. Depois de cada iterao, parte das
formigas da colnia cuja mdia das solues encontradas em cada iterao
menor migram para a outra colnia, dando assim maior capacidade computacional
outra colnia na prxima iterao. Alm disso, algumas formigas utilizam no
s o feromnio de suas prprias colnias, mas tambm o feromnio da outra
colnia para influenciar suas decises sobre como prosseguir na construo de
seus caminhos. As Formigas que utilizam somente o feromnio de suas colnias
so chamadas formigas nativas e as formigas que consideram tambm o
feromnio da outra colnia so chamadas formigas espis. O balanceamento entre
o nmero de formigas nativas e espis de uma colnia definido em funo da
PUC-Rio - Certificao Digital N 0321287/CA

melhor soluo encontrada por cada colnia na iterao anterior.


Formigas das duas colnias constroem seus caminhos da mesma forma:
Iniciando no tempo t=0, uma locomotiva escolhida e manobras so atribudas
sequencialmente a esta locomotiva. A cada nova manobra atribuda, o tempo
atualizado de acordo com o tempo necessrio para realizao da manobra. Novas
manobras so atribudas at o fim do horizonte de planejamento ou at que, em
funo das restries do problema, no haja mais nenhuma atribuio possvel
para esta locomotiva. Neste ponto, outra locomotiva de manobras alocada para
compor a soluo, o tempo volta ao valor zero e o processo de atribuio de
manobras a locomotivas continua. Este procedimento repetido at que todas as
manobras estejam atribudas ou at que haja mais nenhuma locomotiva que possa
ser colocada em uso. Para decidir qual manobra ou qual locomotiva ser
adicionada ao seu caminho as formigas utilizam a atratividade e a quantidade de
feromnio armazenada anteriormente por outras formigas ao longo do caminho.
Em suma, uma formiga constri o seu caminho partindo de uma soluo
inicial contendo apenas uma locomotiva e acrescentando elementos, que podem
ser manobras ou locomotivas, visando formar solues parciais mais completas
at chegar a uma soluo do PPOLM, ou seja, um plano de trabalho que envolva
todas as manobras a serem executadas no horizonte de planejamento dado.

61

O diagrama da Figura 11 mostra uma soluo de um PPOLM. Os quadrados


representam locomotivas e os crculos representam manobras. Os segmentos
horizontais que unem cada elemento ao seu sucessor representam passos, ou seja,
mudanas de estado que correspondem adio de itens a uma soluo parcial,
formando assim o caminho da formiga.

Figura 11: Caminho de uma formiga com trs passos destacados

H trs passos destacados na Figura 11, assinalados com os nmeros 1, 2 e

PUC-Rio - Certificao Digital N 0321287/CA

3, indicando os trs tipos possveis de mudana de estado, conforme abaixo:


1. Nova Manobra (NOMA): Se a ltima operao feita foi a adio de
uma manobra no plano de trabalho de uma locomotiva e ainda
possvel adicionar mais manobras ao plano de trabalho desta mesma
locomotiva, o item adicionado ser ento mais uma manobra para
mesma locomotiva;
2. Nova Locomotiva (NOLO): Se a ltima operao feita foi a adio
de uma manobra ao plano de trabalho de uma locomotiva, mas no
possvel adicionar mais manobras ao plano de trabalho desta
mesma locomotiva, o item adicionado ser uma nova locomotiva;
3. Primeira manobra (PRIMA): Se a ltima operao foi a adio de
uma locomotiva, o item adicionado ser a primeira manobra desta
locomotiva.
Como em qualquer algoritmo de otimizao baseado em colnias de
formigas, a mudana de estado, ou seja, o acrscimo de um novo item no caminho
da formiga depende da atratividade e da quantidade de feromnio existente nas
arestas do grafo G(V,A) que ligam o n i atual a cada um dos ns candidatos a ser
o prximo n daquele caminho. Assim, as formigas selecionam a prxima
locomotiva, ou a prxima manobra, baseadas na atratividade, que guia o processo
construtivo para a minimizao da funo objetivo, e na quantidade de feromnio,

62

o qual fornece informaes histricas sobre a qualidade das solues obtidas nas
iteraes anteriores.
O algoritmo CompetAnts apresentada na Figura 12. Primeiramente so
definidas as solues iniciais para as duas colnias. Depois disso, determinado o
nmero de formigas nativas e espis de cada colnia. Em seguida, feita uma
chamada ao algoritmo ACO (apresentado na Figura 10) para cada tipo de colnia.

PUC-Rio - Certificao Digital N 0321287/CA

Finalmente apresentado o resultado do procedimento.


Algoritmo CompetAnts
Leitura dos parmetros;
Initializao do sistema;
Execuo da primeira iterao
Chamada ACO para a colnia EM;
Chamada ACO para a colnia WT;
Para i de 2 at num_max_iteraes
Adaptao do nmero de formigas das colnias baseado no
custo mdio;
Determinao do nmero de espies baseado na melhor
soluo;
Execuo da otimizao
Chamada ACO para a colnia EM;
Chamada ACO para a colnia WT;
Fim Para
Gravao do resultado;
Figura 12: Algoritmo CompetAnts, conforme Reimann (2002)

4.3.
Clculo da atratividade
A atratividade uma informao bsica para a definio da frmula que
guia o processo incremental de construo do caminho das formigas. Cada colnia
utiliza uma frmula de atratividade diferente para as mudanas de estado.
A frmula seguinte usada para o clculo da atratividade para a colnia
WT. Ela procura expressar a produtividade das locomotivas de manobras,
considerando improdutivo o tempo de espera, bem como o tempo de
deslocamento escoteira da locomotiva de manobras:

63

WT
(t ) =
ij

4K [DTWE j +2UT j (i,t )]

se (i,j) um passo
vivel do tipo NOMA
ou PRIMA,

se (i,j) um passo
vivel do tipo NOLO,

nos demais casos

(19)

onde DTWEj o instante final da janela de entrega e UTj(i,t) o tempo


improdutivo estimado com a adio da manobra j ao caminho da formiga.
Caso o prximo elemento a ser adicionado no caminho seja uma manobra, o
valor de DTWEj exatamente o valor fornecido como dado de entrada associado
PUC-Rio - Certificao Digital N 0321287/CA

quela manobra e o valor de UTj(i,t) dado pela seguinte frmula:


UT j (i , t ) = WT j (t ) + LT (i , j )

(20)

onde WTj(t) a diferena entre o horrio do incio da janela de coleta e o horrio


estimado de chegada da locomotiva de manobras linha de coleta e LT(i,j) o
tempo estimado de deslocamento da locomotiva de manobras escoteira at a linha
de coleta dos vages. Vale notar que o valor de WTj(t) s positivo se a
locomotiva de manobras chegar linha de coleta antes do incio da janela de
coleta. Neste caso, WTj(t) representa o tempo improdutivo que a locomotiva de
manobras tem que esperar at o horrio mnimo permitido de incio da manobra.
Os valores relacionados s janelas de tempo DTWEj e WTj(t) privilegiam o
encadeamento de manobras que estejam prximas umas das outras em relao ao
tempo. O valor de LT(i,j) faz com que a atratividade assuma valores menores
quanto maior o tempo improdutivo de deslocamento das locomotivas na
condio escoteiras.
Os fatores 2 e 4 so exatamente os mesmos usados no algoritmo
CompetAnts e foram definidos em um estudo preliminar para ajuste de
parmetros. A constante K foi introduzida durante os testes computacionais com
valores reais coletados na rotina de um ptio ferrovirio e deve ser escolhido

64

WT
convenientemente para evitar que o valor de ij assuma um valor muito prximo

de zero.
O clculo da atratividade para a colnia EM utiliza a seguinte frmula:

e16(r r )

se (i,j) um passo
vivel do tipo NOMA,

e16(e r )

se (i,j) um passo
vivel do tipo PRIMA,

+
j

+
j

PUC-Rio - Certificao Digital N 0321287/CA

ijEM =

(21)

se (i,j) um passo
vivel do tipo NOLO,

nos demais casos

Nesta frmula, seguindo o mesmo princpio do algoritmo CompetAnts, o


valor da atratividade influenciado somente pela distncia percorrida pela
locomotiva de manobra no modo escoteira at o ponto de coleta dos vages da
manobra j, de modo que as formigas tendem a construir caminhos com menor
distncia total percorrida. O fator -16 exatamente o mesmo usado no algoritmo
CompetAnts, a funo a mesma da frmula (9), da pgina 36 e as linhas ri e

rj+ so as linhas de entrega da manobra anterior e a linha de coleta da prxima


manobra respectivamente, sendo, naturalmente, a linha ri substituda pela linha

e + no caso da mudana de estado do tipo PRIMA.


Tanto no caso do custo varivel esttico quanto no caso do custo varivel
dinmico, a distncia e conseqentemente o custo de deslocamento entre a linha
de coleta e a linha de entrega de uma manobra, fixado o instante de incio deste
deslocamento, constante. Assim, somente os deslocamentos na condio
escoteira podem ser minimizados para cumprir o objetivo da populao EM, e
deste modo, a frmula (21), utilizada no algoritmo CompetAnts, apropriada para
o PPOLM.

65

importante observar que, para as colnias WT e EM, a escolha da nova


locomotiva a ser alocada nas mudanas de estado do tipo NOLO depende somente
da quantidade de feromnio.
4.4.
Regras de deciso
As regras de deciso so as mesmas apresentadas em Reimann (2002). Uma
formiga nativa kn decide qual o prximo item a ser adicionado ao seu caminho
baseado na distribuio de probabilidade expressa por:
[ij ] [ij (t )]

pijkn (t ) =

h N

[ij ] [ij (t )]

PUC-Rio - Certificao Digital N 0321287/CA

se j 
(22)

caso contrrio

onde  o conjunto de ns que, ao serem adicionados ao caminho da formiga


depois do n i, no violam nenhuma das restries do problema, e so os
parmetros que determinam a influncia relativa do feromnio e da atratividade,

ij (t ) o valor da atratividade, calculado usando a frmula (19) ou (21), de


acordo com a colnia a que pertence a formiga nativa kn e ij a quantidade de
feromnio depositada no arco (i, j).
A regra de deciso utilizada pelas formigas nativas a regra clssica do
algoritmo Ant Systems conforme Dorigo & Sttzle (2004). Uma formiga espi kf
utiliza uma regra de deciso segundo uma distribuio de probabilidade baseada
na mdia ponderada entre o feromnio de sua prpria colnia in, j e o feromnio
f
da outra colnia i,j dada por:

[ ijn + (1 ) ijf ][ij (t )]


k

hN [ ihn + (1 ) ihf ][ih (t)]

se j 
(23)

pij f (t ) =
0

caso contrrio.

onde , e so os mesmos parmetros da frmula (22) e 0 1 representa a


importncia do feromnio da prpria colnia em relao ao feromnio da outra
colnia.

66

Tanto as formigas nativas quanto as espis consideram, ao construrem seus


caminhos, todas as restries apresentadas nas frmulas de (2) a (6), pginas 36 e
33, e mais a restrio de precedncia da frmula (14), pgina 41.
No caso NOLO, como a atratividade sempre 1, somente o feromnio
influencia na escolha da prxima locomotiva a ser alocada.
4.5.
Regras de atualizao de feromnio
Foram testadas duas regras de atualizao de feromnio. A primeira,
chamada de CME, usa o mesmo mtodo proposto em Reimann (2002) e a
segunda, chamada RNK, segue a regra intitulada rank based ant system proposta
em Bullnheimer et al. (1999).

PUC-Rio - Certificao Digital N 0321287/CA

4.5.1.
Regra CME
Depois que todas as formigas tiveram a oportunidade de construir a sua
soluo, os passos que compem o caminho percorrido pelas formigas que
obtiveram as melhores solues so consideradas para atualizao da
quantidade de feromnio.
Em primeiro lugar, a quantidade de feromnio destes arcos reduzida. Esta
metfora da evaporao do feromnio ocorre apenas uma vez para cada arco,
mesmo que esta faa parte de mais de um dos caminhos. Em seguida
depositada em cada arco uma quantidade de feromnio proporcional qualidade
da soluo que utilizou aquele arco. A regra de evaporao e depsito de
feromnio definida pela frmula:

= ij + ij , (i, j ) J , e 0 1

(24)

=1

onde o parmetro que define persistncia do feromnio. O primeiro termo


desta soma especifica a evaporao e o segundo termo um somatrio que define

a quantidade ij de feromnio a ser adicionado em cada arco de um dos

melhores caminhos.
Apenas as formigas que obtiveram as melhores solues da iterao
depositam feromnio e a evaporao s ocorre nos caminhos percorridos por estas

67

formigas. A frmula que define a quantidade de feromnio a ser depositada pela


formiga classificada na posio entre as melhores a seguinte:
1

ij =

se 0
(25)

caso contrrio

Nesta frmula, proposta em Reimann (2002), o valor da funo objetivo


apurado em iteraes anteriores no usado para o clculo de ij e o nmero
igual ao nmero total de formigas dividido por 16.
Este mtodo de atualizao da quantidade de feromnio o mesmo do
algoritmo CompetAnts e ser chamado neste trabalho de CME.

PUC-Rio - Certificao Digital N 0321287/CA

4.5.2.Regra RNK
Alm do mtodo original de atualizao de feromnio usado no algoritmo
CompetAnts, foi testada uma variao chamada rank-based ant system,
referenciada neste trabalho como RNK, onde a formiga que obteve a melhor
soluo at ento deposita a maior quantidade de feromnio em cada iterao. De
acordo com Dorigo & Sttzle (2004), o rank based ant system tem desempenho
um pouco melhor que o elitist ant system e significativamente melhor que o ant
system original. Esta posio de destaque do mtodo RNK em relao a outros
mtodos de atualizao da quantidade de feromnio na trilha das formigas
despertou o interesse em considerar a regra RNK como alternativa regra CME
para a soluo do PPOLM.
No RNK, antes de realizar a atualizao da quantidade de feromnio, as
formigas so classificadas em ordem no decrescente de custo da soluo e a
quantidade de feromnio que uma formiga deposita depende da posio da
formiga nesta classificao. Em cada iterao apenas as primeiras (-1) formigas
e a formiga que obteve o melhor resultado at ento podem depositar feromnio
em seus caminhos. A formiga que obteve o melhor resultado, considerando todas
as iteraes ocorridas at ento e incluindo a iterao atual d a maior
contribuio, depositando feromnio com peso . A -sima melhor formiga da
iterao atual contribui com peso max{0,-}. Sendo assim, a atualizao do
feromnio feita baseada na seguinte frmula:

68

ij = ij + ( ) ij + ijbs

(17)

=1

bs
bs
onde ij = 1/ C , ij = 1/ C , Cbs o custo da melhor soluo obtida at

ento e C o custo da soluo da -sima melhor formiga na iterao atual.


Todos os custos so calculados atravs da frmula (16).
Uma diferena importante entre as duas regras de atualizao de feromnio
propostas neste trabalho que na regra RNK usa-se o custo Cbs para calcular a
quantidade de feromnio a ser acrescentada nos arcos dos melhores caminhos.
Como a formiga que obteve a melhor soluo at ento no necessariamente da
iterao atual, este processo faz com que informao sobre a qualidade das
solues anteriores seja passada para iteraes seguintes, o que no ocorre na

PUC-Rio - Certificao Digital N 0321287/CA

regra CME, pois a mesma utiliza informaes sobre a qualidade das solues
obtidas somente na iterao atual. Testes computacionais apresentados em Sabino
et al. (2006) sugerem que o mtodo RNK conduz a melhores resultados.
4.6.Detalhes sobre a implementao do algoritmo YoYo
Este item apresenta as principais rotinas utilizadas na implementao do
algoritmo YoYo, desenvolve uma estimativa de sua ordem de complexidade e
apresenta a estrutura de dados mais importante do algoritmo, a qual foi utilizada
para armazenamento das informaes sobre feromnio.
4.6.1.
Lgica das principais rotinas
Este item apresenta o pseudocdigo das principais rotinas utilizadas na
implementao do algoritmo YoYo. A rotina principal ACO usa, em sua lgica, a
rotina RegraDeciso, que por sua vez usa as rotinas SortearResposta e Vivel.
4.6.1.1.
Rotina ACO
O pseudocdigo da rotina ACO utilizada no algoritmo YoYo apresentado
na Figura 13. O nmero total de formigas da colnia, o nmero de formigas espis
e o tipo de colnia (i.e. EM ou WT) so informados como parmetros de entrada.
Inicialmente, so definidas seis matrizes de feromnio (apresentadas na Figura 17)

69

e reservado espao de memria para as estruturas de dados que armazenam


valores de custo para a funo objetivo, e os respectivos caminhos encontrados
pelas melhores formigas. A varivel que controla o tipo de item a ser adicionado
no caminho das formigas inicializada com o valor PRIMA, pois todo caminho
comea por uma locomotiva e o primeiro item a ser identificado ento a
primeira manobra daquela locomotiva.
Seguem-se as iteraes de construo de caminhos. Todas as m formigas
tm uma chance de construir seu caminho iniciando por cada locomotiva da frota
dada. Aps definir se a formiga nativa ou espi, a construo do caminho
prossegue com a chamada da rotina RegraDeciso para definir qual ser o
prximo item do caminho e, em seguida proceder os ajustes apropriados no tempo
e acrescentar o novo item na estrutura de dados que armazena os elementos do

PUC-Rio - Certificao Digital N 0321287/CA

caminho. Ao final da repetio de construo do caminho, caso se tenha obtido


uma soluo vivel (i.e., se o caminho contm as linhas lgicas de coleta e entrega
de todas as ordens de servio do conjunto R), calcula-se o valor da funo
objetivo e, caso este valor esteja entre os melhores, atualiza-se a lista dos
melhores caminhos. Depois que todas as formigas tiveram a chance de construir
seus caminhos, segue-se a atualizao da matriz de feromnio.

PUC-Rio - Certificao Digital N 0321287/CA

70

ACO (num. formigas, num. espis, tipo de colnia)


Passo 1: Inicializao
01
Alocar memria e inicializar matrizes de feromnio;
02
Ler os valores de ;
03
Definir valor da soluo com o pior valor possvel;
04
Alocar memria e inicializar soluo com caminho vazio;
05
Ler nmero de melhores formigas a ser considerado;
06
Alocar memria para armazenar valores das melhores
solues e caminho das melhores formigas;
07
Inicializar item = PRIMA;
Passo 2: Construo
08
Para cada uma das |E| locomotivas repetir {
09
Inicializar caminho com a locomotiva v;
10
Zerar tempo;
11
Para cada uma das m formigas repetir {
12
Definir se a formiga vai ser nativa ou
espi baseado no nmero especificado de
formigas espis;
13
Enquanto o caminho da formiga no
contm
todas as manobras repetir {
14
Chamar rotina RegraDeciso (item, resposta)
15
Se item NOLO {
16
Se resposta OK {
17
Zerar tempo;
18
item = PRIMA;
19
Adicionar locomotiva ao
caminho;
}
20
Se no, interromper repetio;
}
21
Se item PRIMA {
22
Se resposta OK {
23
Atualizar tempo;
24
item = NOMA;
25
Adicionar manobra ao caminho;
}
26
Se no, interromper repetio;
}
27
Se item NOMA {
28
Se resposta OK {
29
Atualizar tempo;
30
item = NOMA;
31
Adicionar manobra ao caminho;
}
32
Se no, item = NOLO;
}
} /* fim da repetio para construo do caminho
33
Se caminho tem todas as manobras {
34
Computar valor da funo objetivo (custo);
35
Atualizar lista dos melhores caminhos;
36
Atualizar mdia do custo;
}
} /* fim da repetio para cada formiga
37
Se alguma formiga encontrou soluo ento atualizar a
matriz de feromnio usando a frmula (18);
} /* fim da repetio para cada locomotiva
Figura 13: Rotina ACO usada no algoritmo YoYo

71

4.6.1.2.
Rotina RegraDeciso
A rotina RegraDeciso, conforme apresentado na Figura 14, processa a
mudana de estado em cada passo da construo do caminho da formiga, ou seja,
identifica qual a prxima locomotiva ou a prxima manobra a ser adicionada ao
caminho. Para tanto, especificado o tipo de item que se quer adicionar e esperase receber uma resposta identificando o item ou, em caso de inviabilidade, a

PUC-Rio - Certificao Digital N 0321287/CA

informao de que nenhum item pde ser identificado.


RegraDeciso (item, resposta)
01
Alocar e inicializar lista de itens viveis;
02
Se item NOLO {
Para cada locomotiva v repetir {
Se v ainda no foi usada neste caminho {
Definir v como vivel;
Calcular e armazenar probabilidade de escolha
desta locomotiva utilizando a frmula (22), caso
a formiga seja nativa ou utilizando a
frmula (23), caso contrrio;
}
}
Se for encontrada alguma locomotiva vivel {
SortearResposta (locomotivas viveis, resposta);
Retornar resposta;
}
}
Se item PRIMA ou NOMA {
Para cada manobra v repetir {
Se Vivel (v,item) {
Adicionar v lista de itens viveis;
Calcular e armazenar probabilidade de escolha
desta manobra utilizando a frmula (22), caso
a formiga seja nativa ou utilizando a
frmula (23), caso contrrio;
}
}
Se for encontrada alguma manobra vivel {
SortearResposta (manobras viveis, resposta);
Retornar resposta;
}
}
Figura 14: Rotina RegraDeciso, usada na rotina ACO

4.6.1.3.
Rotina SortearResposta
Esta rotina implementa o mtodo de seleo por roleta, muito utilizado na
seleo de cromossomas em algoritmos genticos, como em Obitko (1998).
Primeiro gera-se um nmero aleatrio entre 0 e 1. Depois, a lista de itens viveis

72

percorrida, somando-se a probabilidade de escolha de cada item at que esta soma


ultrapasse o nmero aleatrio gerado. Quando isto ocorre, o item da lista que
estava selecionado o escolhido. O pseudocdigo da rotina SortearResposta est
apresentando na Figura 15.
SortearResposta (lista de itens viveis, resposta)
01 Zerar soma acumulada;
03 Gerar um nmero aleatrio rnd, tal que 0 rnd 1;
04
Para cada item vivel e enquanto soma < rnd
repetir {
05
Selecionar item vivel;
06
Acumular em soma a probabilidade de escolha
do item
vivel selecionado;
}
07
resposta = item selecionado;
08
Retornar resposta;
}
09 Se no, resposta [no OK];
Figura 15: Rotina SortearResposta, usada rotina RegraDeciso

PUC-Rio - Certificao Digital N 0321287/CA

4.6.1.4.
Rotina Vivel
A rotina Vivel verifica se a incluso da manobra no caminho sendo
construdo pela formiga pode ser feita atendendo todas as restries dadas. Esta
rotina retorna um valor falso ou verdadeiro para a rotina RegraDeciso de acordo
com o resultado da verificao feita. Esta rotina tem uma lgica linear e apenas
valida, seqencialmente, cada restrio operacional do PPOLM, conforme
apresentado na Figura 16.
Vivel ()
01 Se esta manobra j consta no caminho atual, retorne falso;
02 Se a locomotiva que vai executar esta manobra no pode
chegar linha de coleta antes do final da janela de tempo
de coleta, retorne falso;
03 Se o desacoplamento da locomotiva no pode ocorrer durante
a janela de tempo de entrega, retorne falso;
04 Se a capacidade de trao da locomotiva no suficiente
para mover o conjunto de vages desta manobra, retorne
falso;
05 Se esta manobra tem outra manobra predecessora que ainda
no est com a coleta j realizada, retorne falso;
06 Caso contrrio, retorne verdadeiro.
Figura 16: Rotina Vivel, usada rotina RegraDeciso

4.6.2.
Estimativa da ordem de complexidade
Para estimar a ordem de complexidade do algoritmo CompetAnts aplicado
no contexto da soluo do PPOLM, basta observar que no algoritmo ACO da

73

Figura 13 da pgina 70, em cada iterao, iniciando por cada uma das |E|
locomotivas disponveis no ptio, m formigas tentam construir uma soluo que
contm, no mximo, (|E|+2n) passos, onde n o nmero de ordens de servio. Em
cada passo na construo do caminho, cada formiga deve escolher uma opo de
mudana de estado em um conjunto com menos de n opes. Temos ento a
expresso |E|.m.(|E|+2n).n como primeira estimativa para a complexidade de
tempo do algoritmo proposto. Note que a complexidade do algoritmo proposto
no depende do nmero |E| de locomotivas, j que este nmero limitado pela
quantidade de ordens de servio, pois, no pior caso, cada ordem de servio
executada por uma locomotiva diferente. Outro detalhe importante que todas as
demais operaes do algoritmo CompetAnts, tais como a atualizao e depsito de
feromnio so O(n2). Finalmente, deve-se considerar as duas possibilidades para
clculo do custo varivel. No caso do custo varivel esttico, tem-se uma tabela
PUC-Rio - Certificao Digital N 0321287/CA

com os valores das distncias entre cada par de ns do grafo G armazenado em


uma matriz de adjacncias de modo que o acesso direto e no influencia na
complexidade do algoritmo. No caso do custo varivel dinmico, necessrio
refazer o clculo para cada uma das possibilidades de mudana de estado. Este
clculo feito com o algoritmo de Dijkstra, que no pior caso tem ordem de
complexidade O(n2) (Black, 2006). Como o custo varivel dinmico calculado
para cada uma das possibilidades de mudana de estado, tem-se um novo fator
O(n2) a ser considerado na complexidade final. Utilizando ento a notao O e
considerando o que foi exposto acima, segue-se que a complexidade final de cada
iterao do algoritmo O(m.n2) no caso de se utilizar o custo varivel esttico e
O(m.n4) no caso se utilizar o custo varivel dinmico. Desta forma, nota-se que o
algoritmo proposto capaz de encontrar uma boa soluo para o PPOLM com
ordem de complexidade polinomial e que o uso do custo varivel dinmico
aumenta o tempo de execuo do algoritmo, em relao ao caso de uso do custo
varivel esttico, na proporo estimada do quadrado do nmero de ordens de
servio do PPOLM.
4.6.3.Estrutura de dados para armazenar as informaes de
feromnio
A quantidade de feromnio depositada em cada passo da construo do
caminho da formiga armazenada em trs matrizes de feromnio. Considerando

74

que h p= |R| manobras a serem executadas e q= |E| locomotivas disponveis no


ptio, so utilizadas trs matrizes, uma para cada um das trs possibilidades
indicadas na Figura 11: Uma matriz (p x p) armazena a quantidade de feromnio
associado s possveis decises de adio de mais uma manobra para a mesma
locomotiva, uma matriz (p x q) armazena o feromnio associado s possveis
decises de adicionar uma das q locomotivas depois de executar uma das p
manobras e uma matriz (q x p) armazena a quantidade de feromnio associada
deciso de adio da primeira manobra de uma locomotiva. Como caracterstica
do PPOLM a existncia de algumas poucas locomotivas no ptio para atender a
dezenas de manobras, as trs matrizes citadas acima so armazenas em uma nica
estrutura matricial, onde so inutilizadas (q x q) elementos.
Como h duas colnias de formiga, cada uma com suas trs matrizes de

PUC-Rio - Certificao Digital N 0321287/CA

feromnio, toda a informao de feromnio ento armazenada em uma nica


matriz M ( p+q, p+q, 2 ), conforme indicado na Figura 17, onde o espao de
memria no utilizado est indicado pela matriz quadrada (qxq) hachurada.

Camadas de M =
2 colnias de
formiga

Colunas de M =
p manobras +
q locomotivas

pxq

pxp
pxq

pxp
Linhas de M =
p manobras +
q locomotivas

qxp
qxp

Figura 17: Matriz M (p+q, p+q, 2) de feromnios

qxq
qxq

75

4.7.
Determinao da rota de cada passo
Se o custo varivel a ser utilizado na funo objetivo esttico, a rota de
cada passo do caminho de coleta e entrega depende somente do leiaute do ptio.
Desta forma, o caminho mnimo em G`, e o valor da distncia percorrida neste
caminho para cada passo pode ser calculada uma vez e fornecida como dado de
entrada para o programa que implementa o algoritmo YoYo. Se o custo varivel
dinmico, a determinao da rota mnima deve ser feita durante a construo do
caminho, pois a mesma varia com o tempo. A estrutura de dados para armazenar o
estado de ocupao das linhas do ptio e a rotina para determinao da rota
mnima e o clculo do custo varivel dinmico esto detalhadas nos dois itens que

PUC-Rio - Certificao Digital N 0321287/CA

se seguem.
4.7.1.
A modelagem da alocao das linhas do ptio
Para identificar se h conflito de alocao de linhas quando as locomotivas
executam as manobras seguindo o plano definido pelo programa fundamental
estabelecer um mecanismo de controle de alocao das linhas, de modo que dois
elementos (i.e. comboio, locomotiva escoteira ou conjunto de vages) no possam
ocupar a mesma linha ao mesmo tempo.
Espao e tempo so as variveis de controle consideradas no processo e a
modelagem utilizada parte das seguintes premissas:


A velocidade de circulao ao longo de uma linha um valor


constante, utilizado para todas as manobras. Para estimar este valor,
pode-se considerar o comprimento mdio das linhas do ptio em
questo, as frmulas para clculo da curva de velocidade (Pachl,
2002) que consideram a oscilao da velocidade em funo da
acelerao e frenagem da locomotiva e as frmulas de Davis, que
consideram a resistncia ao movimento.

Todo comboio cabe completamente dentro da linha de origem e


dentro da linha de destino. A garantia de capacidade das linhas de
origem e destino um dos objetivos da etapa de identificao das

76

manobras, descrita no item 2.2.2. Vale observar que linhas de


circulao podem ser menores que o comprimento do comboio.


Linhas de circulao no podem ter vages estacionados, ou seja, a


menos de ocupao por um comboio aguardando a liberao da linha
adiante, as linhas que esto entre a origem e o destino dos percursos
das locomotivas escoteiras e dos comboios esto sempre
desocupadas.

As duas ltimas premissas acima tornam desnecessrio considerar a


alocao das linhas pelos conjuntos de vages estacionados antes e depois da
realizao da manobra, restando somente a necessidade de controle de alocao
das linhas pelos comboios em deslocamento.
A modelagem das linhas do ptio e seu estado de alocao foi feita da
PUC-Rio - Certificao Digital N 0321287/CA

seguinte forma: Divide-se a durao do horizonte de planejamento h em n


intervalos {i0, i1, i2,...,in-1} de igual durao t0 que so denominados intervalos de
alocao de linha, ou simplesmente intervalos, como sero referenciado neste
trabalho. Eventualmente, quando no existe n | n t0 = h , convenciona-se que
o intervalo in-1 , excepcionalmente, o nico intervalo com durao
t0 = h t0 ( n 1) < t0 .

O valor do intervalo t0 deve ser definido levando em conta a velocidade


mdia de circulao das locomotivas de manobra no ptio e o tamanho das linhas
do ptio, de modo a representar uma durao conveniente para fins de controle de
alocao de linhas do ptio, conforme ser mostrado adiante.
A frmula proposta para estimativa inicial do valor do intervalo a
seguinte:

t0 =

min{lv , v G }
2sa

(26)

onde min{l (v), v G } o tamanho da menor linha do ptio e sa a velocidade


mdia de circulao das locomotivas de manobra no ptio.
A idia da frmula (26) definir um tempo t0 de modo que para percorrer
uma linha de ptio, uma locomotiva mdia, em condies normais, gaste pelo
menos dois intervalos. Esta frmula pode ser utilizada para se estimar o valor

77

inicial de t0 e a partir da, podem ser feitos os ajustes necessrios pela equipe de
planejamento de ptio.
Como ser mostrado nos pargrafos que se seguem, o intervalo t0 possibilita
a transformao do tempo em uma varivel discreta, simplificando o controle de
alocao das linhas.

i0

i1

i2

i(n-2)

i(n-1)

(n-5)t0
t0

PUC-Rio - Certificao Digital N 0321287/CA

Figura 18: Horizonte de planejamento dividido em intervalos

A Figura 18 mostra o intervalo h dividido em n intervalos de mesma


durao t0. Apenas os primeiros trs intervalos e os ltimos dois intervalos so
mostrados explicitamente. Os demais esto omitidos para simplificao do
desenho. Os crculos pretos nas extremidades dos intervalos indicam se esta
extremidade

pertence

ou

no

ao

intervalo.

Assim

por

exemplo,

i2 = {t | 2t0 t < 3t0 } e in 1 = {t | (n 1)t0 t nt0 } .

Diz-se que uma linha de ptio i est ocupada durante o intervalo ik se existe
um comboio, uma locomotiva ou um conjunto de vages na linha i em algum
instante do intervalo ik.
O principal objetivo do intervalo tornar o tempo uma varivel discreta de
modo que seja possvel mape-lo atravs de colunas de uma matriz. Desta forma,
o modelo de dados definido para controle da alocao das linhas se baseia numa
matriz e funciona da seguinte forma: Define-se uma matriz Z(n,l) onde n o
nmero de intervalos em h e l o nmero de linhas do ptio. Desta forma,
possvel associar um intervalo a cada coluna da matriz Z e uma linha de ptio a
cada linha da matriz Z. Os elementos da matriz s podem assumir os valores 0 ou
1. O valor 1 no elemento z(i,j) da matriz Z indica que a linha i se encontra ocupada

78

durante o intervalo j e o valor 0 indica que a linha i se encontra livre durante o


intervalo j.
4.7.2.
O controle da alocao das linhas
O controle de alocao das linhas ocorre paralelamente construo do
caminho das formigas. Inicialmente todos os elementos da matriz Z contm o
valor zero. Em seguida, ainda como parte do processo de inicializao, atribui-se
o estado de ocupada durante todo o horizonte de planejamento para as linhas onde
as locomotivas esto localizadas inicialmente. A cada novo passo acrescentado no
caminho de coleta e entrega, calcula-se os intervalos em que cada linha estar
alocada no percurso e atualiza-se a matriz Z atribuindo-se o valor um aos
intervalos em que as linhas esto ocupadas e o valor zero aos intervalos em que

PUC-Rio - Certificao Digital N 0321287/CA

as linhas esto desocupadas.


O clculo dos tempos de deslocamento se baseia nos seguintes valores
obtidos diretamente ou calculados a partir dos dados de entrada: tempo de
deslocamento da locomotiva na condio escoteira, tempo de espera, tempo de
transporte e tempo de servio. claro que o grau de preciso das informaes
fornecidas pelo usurio (e.g. velocidade mdia das locomotivas, tempo de servio
e comprimento das linhas do ptio) influencia diretamente a preciso dos clculos
para controle de alocao das linhas.
As figuras e explicaes que se seguem so usadas para mostrar as
premissas e o mtodo utilizado para o clculo dos tempos de alocao dos
intervalos. A Figura 19, na pgina 79, mostra as trs primeiras linhas, as quatro
primeiras colunas e as quatro ltimas colunas de uma matriz Z de alocao de
ptio. As linhas A, B e C do ptio esto associadas s primeiras linhas da matriz e
os n-1 intervalos que compem o horizonte de planejamento esto associados s
respectivas colunas da matriz.

79

Matriz de alocao
de linhas do ptio

i0

i1

i2

i3

...

in-4

in-3

in-2

in-1

Linha A

...

Linha B

...

Linha C

...

...

...

Figura 19: Matriz Z de alocao de ptio aps movimento do comboio

Chamemos de o comboio composto de uma locomotiva e trs vages da


Figura 20. Se parte da linha A, passa pela linha C e depois fica estacionado at o
final do horizonte de planejamento na linha B, os valores da matriz mostram como
fica a representao correspondente alocao das linhas do ptio para

PUC-Rio - Certificao Digital N 0321287/CA

representar este deslocamento de .

Linha A
Linha D
Linha C
Linha B

Figura 20: Comboio estacionado em A, pronto para se deslocar at B.

O comboio ocupa a linha A somente durante o primeiro intervalo, depois


passa pela linha C durante os intervalos i1 e i2. Ao final do intervalo i2 a linha C
est desocupada e o comboio j se encontra completamente na linha B, onde fica
estacionado at o fim do intervalo in-1, ou seja, at o final do horizonte de
planejamento.
Como a unidade de tempo de alocao medida em intervalos, se em algum
instante t, contido num intervalo ik, uma linha se encontra ocupada, ento a linha
considerada ocupada durante todo o intervalo ik.
Os tempos de ocupao dos intervalos so calculados considerando o
comprimento de cada linha por onde passa o comboio e o comprimento do
comboio. Uma linha por onde passa um comboio considerada ocupada desde o
momento em que a frente do comboio atinge uma de suas extremidades at o
momento em que o final do comboio deixa a outra extremidade. A linha onde

80

inicialmente
ialmente est localizado um comboio considerada ocupada at que o
comboio deixe completamente a linha.
A linha de destino de um comboio considerada ocupada at o fim do
horizonte de planejamento ou at que uma manobra executada posteriormente
retire o comboio de l. Alm disso, se a linha de destino no estiver livre desde o
momento em que o incio do comboio a atingir at o momento em que o centro do
comboio estiver alinhado com o seu centro, ento a linha no ser considerada
desocupada.
A Figura 21 mostra a vista lateral do comboio , localizado na linha A,
pronto para se deslocar at a linha B. A linha A aparece representada em preto e a
linha B em cinza. O ponto central de cada linha est assinalado com um pequeno
tringulo da cor da linha. Na figura esto indicados o comprimento l0 do comboio

PUC-Rio - Certificao Digital N 0321287/CA

e os comprimentos das linhas A e B, que so la e lb respectivamente. O ponto de


referncia de cada linha considerado o meio da linha. O meio do comboio o
ponto de referncia do comboio. Assim, o meio do comboio est alinhado
inicialmente com o meio da linha A e ficar, ao final do deslocamento, alinhado
com o meio da linha B.

Linha A

l0

Comboio

Linha B

lb

la

Figura 21:: Dimenses envolvidas no clculo do tempo de


de alocao das linhas

As seguintes proposies ilustram os critrios de clculo de espao durante


o deslocamento do comboio. Os respectivos tempos de deslocamento so ento
obtidos como resultado da diviso do espao percorrido pela velocidade de
deslocamento, a qual deduzida a partir dos dados de entrada.
deslocamento,

81

O comboio atinge a linha B aps percorrer um espao l = (la l0 ) / 2


e, a partir deste momento, a linha B considerada ocupada;

O comboio s libera a linha A aps o seu ltimo vago deixar a linha


A, ou seja, aps percorrer o espao l = (la l0 ) / 2 + l0 = la + l0 / 2 ;

O comboio chega linha B depois de percorrer o espao


l = (la + lb ) / 2 .

Diante da modelagem utilizada nota-se que o controle de alocao de linhas


est baseado na diviso do horizonte de planejamento em unidades discretas de
tempo, chamadas de intervalo, e no mapeamento destes intervalos e das linhas do
ptio em uma matriz de alocao de linhas. Vale notar que o valor definido para a
durao do intervalo t0 influencia na quantidade de memria necessria para a

PUC-Rio - Certificao Digital N 0321287/CA

matriz de alocao de linhas. Intervalos muito curtos implicam em uma matriz


com muitas colunas e numa demanda maior por recursos computacionais para
processar o controle de alocao de linhas. Intervalos muito longos, por outro
lado, reduziriam a preciso do controle de alocao de linhas do ptio,
comprometendo assim a qualidade das estimativas feitas durante a elaborao da
soluo.

5
Testes computacionais

Por que s pensar? Por que no experimentar?


EDWARD JENNER

Este captulo se inicia com a descrio dos critrios e mtodos utilizados

PUC-Rio - Certificao Digital N 0321287/CA

para definio do conjunto de dados de teste, o qual foi utilizado para analisar o
comportamento do programa YoYo em diversas situaes. O captulo concludo
com a apresentao dos resultados dos testes computacionais.
5.1.O programa gerador de ordens de servio
A necessidade de desenvolvimento de um programa gerador de manobras denominado SOGY (Switch Order Generator for YoYo) - surgiu durante a fase
dos testes computacionais. Com o principal objetivo deste projeto desenvolver
um algoritmo para soluo do PPOLM e implement-lo, na prtica, como
ferramenta de apoio deciso, desde o incio havia o interesse em comparar as
operaes recomendadas pelo programa YoYo com as operaes efetivamente
executadas pelos profissionais responsveis pelas operaes do ptio em estudo.
Para comparar os dois planos, era necessrio ento registrar o plano gerado
na prtica e submeter ao programa as mesmas informaes que a equipe de
operao do ptio usou para elaborar o seu plano. Em seguida a idia era
comparar o custo do plano gerado pela equipe com o custo do plano gerado pelo
programa.
Nos estgios iniciais do projeto, visando obter uma estimativa do retorno de
investimento e justificar a viabilidade do projeto, foram feitas algumas coletas
manuais de dados, simplesmente acompanhando a rotina das equipes de
planejamento e execuo de manobras na sala de controle de operaes de ptio,

83

durante o intervalo de tempo de algumas horas. Nestas sesses de coletas de


dados, eram registradas as ordens enviadas aos maquinistas e os tempos de
execuo da manobra. As mesmas informaes sobre as manobras a serem
executadas no intervalo de tempo amostrado eram ento fornecidas ao programa
YoYo e, de posse dos resultados, era possvel comparar o custo das manobras
executadas na prtica com o custo do plano de manobras sugerido pelo programa.
Os primeiros resultados foram animadores. Os resultados obtidos naquela
poca com o que pode ser chamado de um prottipo do programa YoYo,
conforme apresentado em Sabino (2004), foram considerados suficientes para
justificar o projeto, j que sugeriam uma considervel reduo de custo com a
utilizao da ferramenta de apoio deciso. No entanto, a quantidade e a
confiabilidade dos dados coletados com um procedimento manual so

PUC-Rio - Certificao Digital N 0321287/CA

insuficientes para uma anlise mais detalhada sobre a eficincia do mtodo


proposto e principalmente para o ajuste fino dos parmetros do programa visando
a sua aplicao prtica. A estratgia adotada para superar estas dificuldades foi a
construo de um simulador capaz de gerar um conjunto de manobras a serem
executadas baseado nas caractersticas fsicas e operacionais de um ptio
ferrovirio. As manobras geradas por este simulador foram ento tomadas como
modelo de referncia para testes do programa YoYo.
Ocorre que o funcionamento de um ptio ferrovirio regido por vrios
processos que interagem nem sempre de forma previsvel, o que tornou o processo
de desenvolvimento do SOGY uma tarefa difcil. A estratgia adotada foi a
realizao de entrevistas com a equipe de planejamento para definir as variveis
que caracterizam o ptio, seguido de um estudo sobre o fluxo de operaes das
manobras e finalmente a validao do processo de simulao e dos resultados
obtidos com profissionais experientes da rea.
O ptio ferrovirio submetido ao SOGY o terminal de descarregamento
fictcio RRT1, cujo leiaute apresentado na Figura 22. A linha pontilhada
representa a ferrovia, de onde chegam os trens com vages carregados e para onde
vo os trens de vages vazios depois de descarregados. As linhas contnuas
representam linhas do ptio. A linha tracejada em cinza representa um trecho
especial do terminal destinado exclusivamente circulao de locomotivas de
viagem. Os crculos escuros representam vrias ramificaes paralelas de uma

84

linha principal, onde podem ser estacionados vrios conjuntos de vages. Cada
crculo escuro representa um conjunto padro, constitudo de uma linha principal
e um total de at oito ramificaes paralelas laterais de mesmo comprimento.
Assim, cada crculo escuro representa uma zona do ptio. Esto representadas as
zonas de recepo (RCP) e desmembramento (BKU) de trens, manuteno de
locomotivas (MNS), descarregamento (UNL1, UNL2, UNL3 e UNL4), um ponto
de inspeo, uma rampa de classificao (HPY) seguida de uma rea de
estacionamento (PRK), uma rea de limpeza (CLN), uma rea de manuteno de
vages (MNC) e uma rea de formao de trens (MKU). Maiores detalhes sobre o
leiaute do terminal RRT1 podem ser obtidos em Sabino(2004).

MNC

PUC-Rio - Certificao Digital N 0321287/CA

CLN
MKU

PRK
HPY
MNS
X

RCP

ISP

BKU

UNL1
UNL2

UNL3
UNL4

Figura 22: Ptio de descarregamento RRT1 utilizado nos testes computacionais.

A Tabela 2 mostra as variveis de entrada para o programa SOGY, usadas


para descrever as principais caractersticas do ptio fictcio RRT1. Nesta tabela,
as informaes esto agrupadas por escopo e alm da especificao do contedo
das variveis, esto indicados tambm os valores utilizados para gerao dos
dados de entrada para os testes computacionais deste trabalho.

85

Escopo
Geral
Geral
Geral
Geral
Geral
Chegada
Chegada

Partida
Descarga
Descarga
Descarga

PUC-Rio - Certificao Digital N 0321287/CA

Descarga

Inspeo
Inspeo

Inspeo

classificao

Especificao
reas do ptio ferrovirio
Horizonte de planejamento
Peso mdio de um vago vazio
Peso mdio de um vago carregado
Tempo de servio mximo permitido
Tempo entre duas chegadas
consecutivas de trens
Vetor que contm as probabilidades de
haver 1, 2, 3, 4 ou 5 blocos num trem
recm chegado
Tempo entre duas partidas
consecutivas de trens
Tempo de servio de uma descarga
longa (assistida)
Tempo mdio de uma descarga de
durao curta (no assistida)
Probabilidade de uma manobra de
descarga ser assistida
Probabilidade de um conjunto de
vages carregado no descarregar
durante o horizonte de planejamento
dado
Probabilidade de um vago requerer
manuteno aps a inspeo
Probabilidade de um conjunto de
vages requerer limpeza aps a
inspeo
Nmero mximo de conjuntos de
vages distintos criados aps a
inspeo
Probabilidade de um bloco localizado
na rea de estacionamento necessitar
de manobras de classificao

Valor
RCP, BKU, UNL, PRK,
CLN, MNT, MKU
6h
15 ton
50 ton
2h
20 min
{0.65, 0.15, 0.10, 0.10,
0.05}
20 min
0.2 h
15 min
0.4
0.2

0.05
0.01

10

0.3

Tabela 2: Parmetros do Programa SOGY

A Figura 23 mostra o Diagrama de Fluxo de Dados do programa SOGY


utilizando a notao de Yourdon & Coad (1991). O programa gera primeiramente
uma base de dados relacional com a programao de chegada de trens,
especificando, para cada bloco, informaes como o horrio de chegada do trem
que contm o bloco e a sua constituio em nmero de vages e tipo de carga.
Esta base de dados gerada baseado nos valores fornecidos para os parmetros de
chegada, conforme definido na Tabela 2.

PUC-Rio - Certificao Digital N 0321287/CA

86

Figura 23: Diagrama de Fluxo de Dados do programa SOGY

Em seguida, a base de dados com a programao de trens lida pelo


processo Gerar BKU para criar uma base contendo as manobras, que contm,
inicialmente, uma manobra de coleta na rea de recepo e entrega na rea de
desmembramento para cada bloco que chega. A ordem dos blocos no trem que

87

chega ao ptio define as restries de seqncia na execuo das manobras de


desmembramento.
A base de dados switch orders ento lida e incrementada sucessivas
vezes, simulando, em ordem cronolgica, as fases seguintes de descarregamento,
inspeo, ida e retorno para as reas de limpeza e de manuteno, classificao e
depois formao. Como o processo incremental, exceto quando informado
explicitamente por meio de uma das variveis da Tabela 2, cada manobra de uma
etapa pr-requisito de uma manobra correspondente gerada para a etapa
seguinte. Todos os valores de probabilidade informados como parmetros para
especificar caractersticas do ptio consideram variveis uniformemente
distribudas.
O processo Gerar U L l as manobras de desmembramento da base de

PUC-Rio - Certificao Digital N 0321287/CA

dados de manobras, considera a probabilidade do conjunto de vages movido para


a rea de desmembramento eventualmente no ser descarregado durante o
horizonte de planejamento dado e gera as manobras correspondentes de
movimentao da rea de desmembramento para a rea de descarregamento. O
tempo de servio das manobras de descarregamento geradas depende do
parmetro que informa a probabilidade de uma manobra ser assistida ou no e dos
tempos mdios de descarregamento assistido e no assistido.
Para simular a fase de inspeo so consideradas as probabilidades de um
vago requerer manuteno e de um conjunto de vages requerer limpeza.
Baseado nestas probabilidades so geradas manobras de ida e volta para inspeo
e limpeza e a correspondente manobra de movimentao de vages da rea de
estacionamento para a rea de formao. Caso um dado conjunto ou um dado
vago no requeira limpeza nem manuteno, so geradas apenas manobras de
movimentao deste vago, ou conjunto, com coleta na rea de estacionamento e
entrega na rea de formao.
Vale notar que o programa SOGY gera uma manobra de volta para cada
manobra de ida para manuteno e que o mesmo equilbrio se observa entre o
nmero de conjuntos de vages que vo e voltam da rea de limpeza. Tambm as
manobras que tm como destino a rea de formao so geradas a partir da
passagem de vages pela inspeo e no de um plano de formao de trens. Estas
premissas so simplificaes da rotina real, que facilitam o desenvolvimento do

88

programa sem representar alteraes significativas na similaridade das manobras


geradas com as manobras usuais de um ptio real.
Com o programa SOGY, portanto, foi possvel gerar o nmero necessrio de
instncias de entrada do programa YoYo para ajuste fino dos parmetros e
comparao de mtodos de soluo do PPOLM.
5.2.
Preparao dos experimentos e mtricas utilizadas
Os objetivos dos experimentos computacionais foram:
1. Verificar se uma das duas regras de atualizao do feromnio
conduziria aos melhores resultados;
2. Descobrir se existiam valores recomendados para o nmero de
formigas, o expoente associado informao heurstica e o fator
PUC-Rio - Certificao Digital N 0321287/CA

de persistncia do feromnio ;
3. Verificar se os valores recomendados para os parmetros do
algoritmo ACO mudam com a variao do tamanho da instncia;
4. Verificar se o tempo mdio de resposta para a obteno de boas
solues para o problema razovel para utilizao do programa
YoYo como ferramenta de apoio deciso aplicvel em situaes
prticas no planejamento de operaes de um ptio de manobras
real.
Para se obter um conjunto de entrada e dados de tamanho razovel, o
programa SOGY foi usado para gerar 50 instncias de entrada, cada uma com
mais de 200 manobras a serem executadas em um horizonte de planejamento de 6
horas.
A Tabela 3 mostra os parmetros operacionais usados nos experimentos. O
horizonte de planejamento foi definido com durao igual de um turno de
trabalho do ptio real de referncia deste estudo. O nmero de manobras a serem
planejadas a varivel mais importante na determinao do tamanho da instncia
do problema. No caso real, observou-se uma mdia de 10 manobras por hora,
totalizando 60 manobras em um horizonte de planejamento de 6 horas, assim,
consideramos instncias de 20 manobras, para representar uma instncia de
tamanho pequeno, 60 manobras para representar um valor mdio para um grande

89

ptio de manobras (j que o caso real em estudo o maior ptio da Amrica


Latina) e 100 manobras para representar um ptio de grandes dimenses ou com
alta carga de trabalho.
A importncia do custo fixo foi definida como um valor estimado,
considerando o objetivo ttico de um ptio real, segundo estimativas feitas em
conjunto com profissionais da rea de planejamento operacional de ptios. O
nmero de locomotivas de manobras disponvel foi definido bem acima da mdia
utilizada para o ptio de referncia. Isto foi feito porque o interesse maior era em
determinar o nmero de locomotivas necessrias e no em testar a reao do
algoritmo a limitaes no nmero de locomotivas. A posio inicial das
locomotivas foi definida distribuindo-as aleatoriamente pelas reas do ptio em
linhas tambm definidas aleatoriamente. Para determinar a capacidade de trao

PUC-Rio - Certificao Digital N 0321287/CA

das locomotivas, tomou-se a capacidade dos cinco modelos de locomotivas mais


utilizados no caso real e um gerador de valores aleatrios uniformemente
distribudos definiu quantas locomotivas seriam de cada um destes modelos, de
modo que o total de locomotivas fosse o nmero dado.
Parmetro
Horizonte de planejamento (em horas)

otao
h

Valor(es)
6,0

Nmero de manobras a serem planejadas

n_orders

20; 60 e 100

Importncia relativa do custo fixo


Nmero de locomotivas disponveis no ptio

c1/c2

0,8

n_vehicles

40

Tabela 3: Parmetros operacionais utilizados nos experimentos computacionais

Os valores dos parmetros do algoritmo ACO utilizados nos experimentos


so mostrados na Tabela 4. O nmero inicial de formigas para ambas as colnias
no algoritmo CompetAnts foi 40, ento decidiu-se tomar trs valores maiores que
este para investigar at onde valia a pena investir em processamento adicional (i.e.
aumentando o nmero de formigas) visando a obteno de solues melhores.
Esta estratgia tambm serviu para validar se o nmero de formigas recomendado
em Dorigo & Sttzle (2004) para bom desempenho na soluo do Problema do
Caixeiro Viajante era bom tambm para o PPOLM. Vale notar que a orientao de
que o nmero de formigas deve ser igual ao nmero de cidades do Problema do
Caixeiro Viajante deve ser convertida na especificao do nmero de formigas

90

igual ao dobro do nmero de manobras a serem executadas no PPOLM, j que


cada manobra est associada a dois pontos de parada na rota de uma locomotiva.
O expoente do feromnio, o valor inicial do feromnio e o nmero de
formigas que depositam feromnio foram definidos de acordo com as
recomendaes de parmetros proposta em Dorigo & Sttzle (2004) para bom
desempenho do algoritmo Ant System na soluo do Problema do Caixeiro
Viajante. A importncia do feromnio da prpria colnia em relao ao feromnio
da outra colnia foi definida com o mesmo valor usado em Reimann (2002), ou
seja, de modo que as formigas dem a mesma importncia ao feromnio de ambas
as colnias.
Devido simplicidade de implementao e o menor tempo de execuo
esperado, optou-se por utilizar o custo varivel esttico no clculo do valor da

PUC-Rio - Certificao Digital N 0321287/CA

funo objetivo. Diante da impossibilidade de desenvolver um sistema eficiente


para estimar, com razovel preciso, os tempos de deslocamento e espera durante
a realizao das manobras, os eventuais conflitos de alocao de linhas pelos
comboios durante a execuo do plano de manobras proposto foram deixados para
tratamento em tempo real pelas equipes de operao do ptio.
Parmetro

otao
Nmero inicial de formigas (para ambas
m
colnias)

Valor(es)
40; 60; 100 e 200

Expoente do feromnio

Expoente heurstico

1; 3; 5 e 10

Fator de evaporao de feromnio

0,02; 0,10; 0,50; 0,9


e 0,98

Valor inicial do feromnio

0,1

Importncia do feromnio da prpria populao

0,5

Nmero de formigas que depositam feromnio


(apenas para a regra RNK)

Tabela 4: Parmetros do algoritmo ACO utilizados nos experimentos computacionais

As verses RNK e CME do algoritmo foram executadas uma nica vez


(Birattari, 2005) para 50 listas diferentes de manobras geradas pelo programa
SOGY. Para cada instncia de manobras foram testadas todas as combinaes
possveis dos valores de parmetros mencionados nas tabelas 3 e 4. Esta estratgia
de testes resultou em um conjunto de 240 combinaes de parmetros a serem

91

submetidas para cada algoritmo, produzindo 240 x 50 x 2 = 24000 resultados a


serem avaliados.
O programa termina depois de concluir a trigsima iterao do algoritmo
ACO. Este era o nico critrio de parada e, ao final, as seguintes informaes
eram registradas para anlise futura:


O valor da soluo, ou seja, o melhor valor encontrado para a funo


objetivo depois de 30 iteraes;

O tempo de CPU consumido at encontrar a melhor soluo. Vale


notar que este no , necessariamente, o tempo total de CPU
consumido aps as 30 iteraes, j que, na maioria das vezes, a
melhor soluo encontrada antes da ltima iterao.

PUC-Rio - Certificao Digital N 0321287/CA

O nmero de iteraes at o ponto em que a melhor soluo foi


encontrada. Este valor foi registrado apenas para tornar possvel
estimar o impacto da reduo do nmero de iteraes necessrias na
qualidade da soluo.

Os dados coletados foram sumariados utilizando uma medida de tendncia


central ao invs do melhor resultado encontrado (Birattari & Dorigo, 2007). Foi
usada anlise de varincia (ANOVA) com nvel de significncia de 5% para
comparar os resultados e avaliar se existia evidncia de diferena entre as mdias
das populaes. Os conjuntos de dados com valores do nmero de manobras
diferentes no foram consolidados porque eles representam as diferentes cargas de
trabalho submetidas ao ptio e, portanto, devem ser analisados separadamente.
Ambos os algoritmos foram implementados em ANSI C e o cdigo fonte foi
compilado com gcc verso 3.4.6. Todos os testes foram executados em ambiente
Red Hat Enterprise Linux, CentOS release 4.5 instalados em servidores AMD
opteron 244 com clock de 1,75 GHz, 1 Mb de memria L2 cache e 2 Gb de
memria RAM.
5.3.Resultados
A primeira anlise feita foi uma comparao direta entre a qualidade da
soluo obtida com a implementao das regras CME e RNK. A Figura 24 e a
Tabela 5 apresentam a mdia e o desvio padro do valor da soluo, considerando

92

todos os testes feitos para conjunto de dados de entrada contendo 20, 60 e 100
manobras. O histograma da Figura 24 mostra o resultado lado a lado e os
respectivos valores com preciso de 4 casas decimais so mostrados na Tabela 5.
Esta primeira anlise sugere que no h diferena significativa na qualidade da
soluo para nenhum dos valores de n_orders. A anlise de varincia suporta esta
hiptese intuitiva, j que a mesma no produz evidncias de diferena
estatisticamente significativa entre os resultados obtidos para os algoritmos que
utilizam as regras CME e RNK.
Qualidade da soluo por nmero de manobras
0,9
0,8
0,7

soluo

PUC-Rio - Certificao Digital N 0321287/CA

0,6
0,5
0,4

CME

0,3

RNK

0,2
0,1
0,0
Mdia

Desvio
Padro
20

Mdia

Desvio
Padro

Mdia

60

Desvio
Padro
100

n_orders

Figura 24: Comparao da qualidade da soluo para as regras CME e RNK

A primeira concluso foi, ento, que com base no sumrio de todos os


resultados obtidos, agrupados por nmero de manobras e sem considerar os
parmetros utilizados em cada caso, no possvel concluir que um dos dois
algoritmos testados apresenta melhor qualidade que o outro.

Algoritmo
n_orders Soluo
CME
20 Mdia
0,1246
Desvio Padro
0,0274
60 Mdia
0,4213
Desvio Padro
0,0366
100 Mdia
0,7789
Desvio Padro
0,0545

RNK
0,1270
0,0306
0,4212
0,0466
0,7719
0,0828

Tabela 5: Comparao da qualidade da soluo para as regras CME e RNK

93

Tambm o tempo de CPU, conforme apresentado na Tabela 6, apresentou


um desvio padro relativamente grande para os trs valores de nmero de
manobras testados, tornando, portanto, impossvel identificar qualquer diferena
estatisticamente significativa.
A concluso, baseada nos resultados gerais agrupados por nmero de
manobras, que nenhum dos dois algoritmos testados produz resultados melhores
que o outro no que se refere a qualidade e custo das solues.

Tempo de CPU (s)


20 Mdia
Desvio Padro
60 Mdia
Desvio Padro
100 Mdia
Desvio Padro

PUC-Rio - Certificao Digital N 0321287/CA

n_orders

Algoritmo
CME
RNK
1,29
1,17
2,55
2,35
29,89 23,08
33,81 33,94
79,71 71,62
78,43 100,40

Tabela 6: Tempo de CPU, em segundos, das solues CME e RNK

O prximo passo foi verificar a influncia dos parmetros ACO na


qualidade da soluo, sendo de particular interesse a identificao do valor
recomendado para os trs parmetros ACO que foram modificados: o nmero
inicial de formigas das duas colnias m, o expoente da atratividade e o fator de
evaporao de feromnio .
O histograma da Figura 25 compara a mdia das solues para cada valor de

m{40, 60, 100, 200} . As barras esto agrupadas de acordo com o nmero de
manobras do conjunto de dados de entrada.

94

Comparao da qualidade da soluo obtida


0,9
0,8
0,7

soluo

0,6
0,5
0,4

CME

0,3

RNK

0,2
0,1
0,0
40

60

100

200

40

60

20

100

200

40

60

60

100

200

100

m
n_orders

PUC-Rio - Certificao Digital N 0321287/CA

Figura 25: Comparao das solues CME e RNK variando n_orders e m

Percebe-se que no h diferena significativa na qualidade da soluo para


n_orders=20. Para n_orders=60 e n_orders=100, independente do algoritmo, a
soluo melhora medida que o valor de m aumenta. Alm disso, o algoritmo
baseado na regra RNK produz melhores resultados que o que utiliza a regra CME
para m = 100 e m = 200. Todas estas concluses so suportadas pelo teste
estatstico ANOVA. Por exemplo, na Tabela 7 o sumrio contendo o resultado da
anlise de varincia simples das amostras com m = 200 e n_orders=60,
considerando um nvel de significncia de 0,05 mostra que existe uma diferena
estatisticamente significativa entre os valores das solues quando se compara as
regras CME e RNK.
Anova: fator nico
RESUMO
Grupo
CME
RNK

Contagem Soma
Mdia
Varincia
1000 413,1341 0,413134 0,001293
1000
406,31 0,40631 0,001678

ANOVA
Fonte da variao
Entre grupos
Dentro dos grupos

SQ
0,023284
2,967564

Total

2,990848

gl

MQ
F
1 0,023284 15,67681
1998 0,001485

valor-P
F crtico
7,78E-05 3,846117

1999

Tabela 7: Resultados de ANOVA com fator nico para m =200 e n_orders=60

95

O fato de valores maiores de m levarem a resultados melhores uma


consequncia do nmero adicional de solues geradas quando se aumenta o valor
de m.
Quanto aos valores de e , chegou-se s seguintes concluses aps
analisar a mdia das solues encontradas para combinaes de m, e para cada
valor possvel de n_orders:


Para o algoritmo baseado na regra RNK, =0,5 produz as melhores


solues, especialmente para valores maiores de m e independente
do valor de . Isto vlido para qualquer valor de n_orders e a
melhor combinao =0,5 e =5;

Para o algoritmo CME, =0,98 e =3 a melhor combinao


considerando fixos n_orders=60 e n_orders=100. Os melhores

PUC-Rio - Certificao Digital N 0321287/CA

valores de e nem sempre so os mesmos. Por exemplo, para


n_orders=20 a melhor combinao =0,98 e =1;


A regra RNK com sua melhor combinao =0,5 e =5 produz uma


soluo melhor que qualquer combinao de parmetros testados
com a regra CME para n_orders=60 e n_orders=100.
Qualidade da soluo obtida com a regra RNK

0,46
0,45
0,44
0,43

soluo

0,42

0,02

0,41

0,1

0,40

0,5
0,9

0,39

0,98

0,38
0,37
0,36
1

10

96

Qualidade da soluo obtida com a regra CME


0,46
0,45
0,44
0,43

soluo

0,42

0,02

0,41

0,1

0,40

0,5
0,9

0,39

0,98

0,38
0,37
0,36
1

10

PUC-Rio - Certificao Digital N 0321287/CA

Figura 26: Comparao das regras RNK e CME variando e

Esta ltima concluso ilustrada com os dois histogramas da Figura 26 que


apresentam no eixo y a mdia das solues obtidas utilizado as regras CME e
RNK, mantendo fixos m=100 e n_orders=60. Cada cor de barra no eixo x
representa um valor de e cada conjunto agrupado de cinco barras representa um
valor de , assim, para cada um dos quatro valores de testados so mostrados os
valores correspondentes de dispostos lado a lado. As barras esto dispostas com
os valores de e classificados em ordem crescente da esquerda para a direita.
Como os dois grficos utilizam a mesma escala para o eixo y fcil
observar que os melhores resultados so obtidos com o algoritmo RNK com
parmetros =0,5 e =5.
Uma anlise mais detalhada das caractersticas das regras CME e RNK
indica uma possvel razo para o melhor desempenho da regra RNK: Como a
lgica da regra CME no repassa as informao sobre o desempenho da iteraes
anteriores para as iteraes seguintes, a regra RNK explora mais agressivamente a
melhor soluo obtida at ento e portanto guiada mais diretamente para as
melhores solues.

97

Nmero mdio de iteraes


0,90

0,80

nmero mdio de iteraes

0,70

0,60

0,50

CME

0,40

RNK

0,30

0,20

0,10

0,00
40

60

100

PUC-Rio - Certificao Digital N 0321287/CA

20

200

40

60

100
60

200

40

60

100

200

100

m
n_orders

Figura 27: Nmero mdio de iteraes para CME e RNK variando n_orders e m

A Figura 27 mostra, para os valores de m e n_orders testados, a mdia do


nmero de iteraes necessrias at encontrar a melhor soluo, considerando
=0,5 e =5. As barras correspondentes aos resultados obtidos com as regras
CME e RNK esto emparelhadas para cada valor de n_orders e agrupadas por
valor de m. fcil observar que o nmero de iteraes necessrias para encontrar
a melhor soluo aumenta com o valor de n_orders. Como o desvio padro do
nmero de iteraes necessrias at encontrar a melhor soluo relativamente
alto em todos os casos testados, no foi possvel obter diferena estatisticamente
significativa entre o nmero de iteraes para os valores testados de n_orders e m.
De uma forma geral, o nmero de iteraes e, portanto, o tempo de CPU
necessrio para se chegar soluo do problema foram to dispersos que ficou
impossvel de se chegar a alguma concluso sobre a comparao do custo
computacional para obteno das solues. O grfico da Figura 28 d uma idia
de quo dirpersos esto os valores de tempo de CPU necessrio considerando
todas as combinaes dos parmetros testados mantendo fixo n_orders=60. No
grfico do tipo boxplot as extremidades superior e inferior das barras verticais
indicam a posio do primeiro e do terceiro quartil de dados respectivamente. As
extenses pontilhadas vo at o valor que que corresponde a 1,5 vezes a faixa

98

interquartil indicada pela barra. Os valores atpicos, ou seja, que apresentam um


grande afastamento dos restantes, so indicados como pequenos crculos.

100
0

50

CPU Needed

150

200

CPU Needed for # SO = 60

PUC-Rio - Certificao Digital N 0321287/CA

rnkparm000049

rnkparm000057

rnkparm000065

rnkparm000073

rnkparm000081

rnkparm000089

sample

Figura 28: Boxplot do tempo de CPU para todas as combinaes de parmetros


considerando n_orders=60

Para verificar a possibilidade de utilizao do algoritmo proposto para


resolver instncias reais, foi avaliado o tempo de resposta das 50 execues com o
algoritmo RNK utilizando a melhor combinao de parmetros e considerando
n_orders=60, que o tamanho de instncia mais realista testada. O valor mdio
deste tempo de resposta foi 82 segundos, com um desvio padro de 0,5 segundos.
Este resultado corresponde s expectativas para aplicao prtica, j que neste
tempo possvel refazer o planejamento de manobras mais de 100 vezes durante
um horizonte de planejamento padro de 6 horas de durao. O nmero mdio de
locomotivas de manobras necessrias para a soluo destas instncias de tamanho
real foi 4, o mnimo foi 3 e o mximo foi 7. Estes valores esto abaixo do
esperado para um ptio com esta carga de trabalho, segundo opinio de
profissionais da rea. Estes resultados sugerem que a implementao do algoritmo
RNK para suporte deciso de planejamento operacional de ptios pode reduzir,
inclusive, o nmero de locomotivas de manobras necessrias para a operao do
ptio.

6
Concluso

Sempre em movimento o futuro est.


GUERRA NAS ESTRELAS V O IMPRIO CONTRA-ATACA, LUCASFILM, 1980

Este trabalho desenvolveu uma anlise sistemtica da operao de um ptio

PUC-Rio - Certificao Digital N 0321287/CA

ferrovirio, classificando-a em trs etapas, apresentou a modelagem da terceira


etapa deste planejamento e props e implementou um algoritmo de soluo do
problema identificado nesta etapa. Foi desenvolvido tambm um simulador de
manobras com o objetivo de gerar instncias de teste para ajuste finos dos
parmetros do algoritmo proposto e para anlise da aplicabilidade dos resultados.
Com os testes computacionais desenvolvidos, os quais utilizaram dados de
entrada gerados pelo simulador de ptio, foi possvel concluir que o algoritmo
YoYo capaz de resolver o problema proposto, considerando as suas restries
mais importantes e com muito poucas simplificaes do caso real. Foram obtidas
boas solues para instncias com 60 ordens de servio, consumindo, nestes
casos, menos de 2 minutos de tempo de CPU de um computador pessoal AMD
opteron 244 com clock de 1,75 GHz e produzindo uma soluo completa em
menos de 3 minutos.
Comparado com os demais trabalhos publicados sobre este assunto e
adicionando a este grupo o trabalho em Reimann (2002), esta pesquisa apresenta
algumas contribuies importantes sob o ponto de vista acadmico, metodolgico
e prtico.
Considerando as pesquisas acadmicas relacionadas:


Charnes & Miller (1956) foi o primeiro trabalho (e durante dcadas


foi tambm o nico) do qual se tem conhecimento sobre

100

programao de tarefas em ptios de manobras e, embora o autor


apresente detalhes prticos muito importantes, sua abordagem de
meados do sculo passado pode ser considerada apenas como uma
pesquisa preliminar do modelo complexo de planejamento de rotas
apresentado neste trabalho.


A soluo desenvolvida no presente trabalho se baseia nas idias


propostas em Reimann (2002) para planejamento de transporte de
cargas. A partir destas idias, foram mapeados objetos similares na
rotina de ptios ferrovirios e adicionadas novas estruturas,
parmetros e procedimentos para tratar as caractersticas e restries
especficas do PPOLM. Alm disso, foi proposta uma nova regra de
atualizao de feromnios que se mostrou mais eficiente para tratar o

PUC-Rio - Certificao Digital N 0321287/CA

PPOLM.


Comparado tese de doutorado Lbbecke (2001), o presente


trabalho introduz uma nova abordagem para modelagem do
problema, adiciona os requisitos operacionais e restries que so
prprias do ptio utilizado como referncia para o estudo de caso e
prope um mtodo de soluo original para tratar desta classe de
problemas. Particularmente, at o momento de concluso desta tese
no havia nenhuma outra aplicao conhecida de algoritmos ACO
para resolver o PPOLM, a menos da pesquisa em Sabino (2004).

Comparada modelagem apresentada na dissertao de mestrado em


Sabino (2004), este estudo estendeu a anlise do PPOLM a mais que
um problema de atribuio de locomotivas a manobras, pois
considera os potenciais conflitos de alocao de linhas nas rotas das
locomotivas

de

manobras.

Alm disso,

fase

de testes

computacionais recebeu uma contribuio significativa com o


advento do programa gerador de manobras, o qual possibilitou uma
anlise mais detalhada dos resultados.
Sob o ponto de vista metodolgico, esta pesqui sa apresenta as seguintes
contribuies:

101

Em extenso tradicional classificao hierrquica do planejamento


ferrovirio,

este

trabalho

analisa

mais

detalhadamente

planejamento operacional de ptios e prope a decomposio do


mesmo em trs etapas.


Com relao ao mtodo usado para resolver o PPOLM, sabido que


muitas implementaes de ACO tratam de abstraes de problemas
do mundo real, como o problema do caixeiro viajante, mas esta
pesquisa foi motivada e realmente produz uma soluo para um
problema da vida real.

Sobre a determinao das rotas mnimas, embora o mtodo utilizado


seja o conhecido algoritmo de Dijkstra, a modelagem e estrutura de
dados utilizada, bem como a criao do conceito de distncia

PUC-Rio - Certificao Digital N 0321287/CA

varivel no tempo e o tratamento dos conflitos de alocao de linhas


constitui, por si s, uma das contribuies deste trabalho.
Finalmente, sob o aspecto prtico, o projeto de aplicao do algoritmo aqui
proposto

atualmente

uma

realidade.

Encontra-se

em

andamento

implementao do YoYo como ncleo de uma ferramenta de suporte deciso


para o planejamento operacional de ptio ferrovirio. A concluso deste projeto
conceder a este trabalho a oportunidade de implementao na vida real,
contribuindo para a melhoria dos processos de negcio.
As seguintes iniciativas so possibilidades de extenso futura desta
pesquisa:


Refinamento da estimativa da velocidade de deslocamento da


locomotiva, o que aumentaria a preciso da previso de conflito por
alocao de linhas nas rotas das locomotivas;

Implementao e testes do algoritmo proposto para clculo de rotas


mnimas utilizando o custo varivel dinmico;

Implementao de uma verso do algoritmo proposto utilizando


processamento paralelo. Desta forma, provvel que seja possvel
obter solues melhores em menor tempo de processamento e sem
aumento considervel do custo dos recursos computacionais

102

necessrios, j que nota-se uma proliferao de computadores com


processadores de dois ncleos no mercado;


Aperfeioamento do algoritmo do programa SOGY, com a


introduo de variveis aleatrias independentes para controlar o
fluxo de vages por cada rea do ptio;

Desenvolvimento de um mtodo de aferio do grau de similaridade


dos resultados do programa SOGY com

manobras reais,

possibilitando assim a avaliao da qualidade da simulao e


fornecendo, portanto, uma referncia para aprimoramento do
programa;


Verificao da viabilidade de modelagem do PPOLM como


problema de programao inteira e implementao de novo

PUC-Rio - Certificao Digital N 0321287/CA

algoritmo de soluo para o mesmo, utilizando as melhores tcnicas


de obteno de soluo exata para este tipo de problema. O objetivo,
neste caso, seria verificar se possvel obter a soluo do PPOLM
em um tempo razovel o bastante para a sua aplicao na vida real.


Desenvolvimento de uma anlise de impacto da implantao do


algoritmo YoYo em um sistema ferrovirio em operao, j que a
melhoria das operaes de um ptio, isoladamente, pode provocar
gargalos em outros ptios ou em trechos da ferrovia. Esta anlise de
impacto pode identificar a necessidade de outras ferramentas para
tornar vivel a implantao da soluo proposta em um ptio real.

7
Referncias Bibliogrficas

[1] AHUJA, R.K.; JHA, K.C. New Approaches for Solving the Block-to-Train
Assignment Problem, Department of Industrial & Systems Engineering,
University of Florida, Gainesville, FL, 2004. Relatrio Tcnico.
[2] AHUJA, R.K.; JHA, K.C.; LIU J. Solving real-life railroad blocking
problems. Department of Industrial & Systems Engineering, University of
Florida, Gainesville, FL, USA, 2004. Relatrio Tcnico,

PUC-Rio - Certificao Digital N 0321287/CA

[3] AHUJA, R.K.; LIU J.; ORLON, J.B.; SHARMA, D.; SHUGHART, L.A.
Solving real-life locomotive scheduling problems. Transportation Science, v.
32, p. 358-369, 2002.
[4] ALBUQUERQUE, M.C. Indicadores de desempenho no transporte ferrovirio
de carga. Dissertao de mestrado. Pontifcia Universidade Catlica do Rio de
Janeiro, Rio de Janeiro, 2006.
[5] ASSAD, A. A., Modeling of rail networks: Toward a routing/makeup model,
Transportation Research, v. 14B, p. 101-114, 1980.
[6] BALDACCI, R.; MANIEZZO, V. ; MINGOZZI, A. An exact method for the
car pooling problem based on Lagrangean column generation. Operations
Research, v. 52, p.422-439, 2004.
[7] BARCUS, L. et al. Routing Design for Less-Than-Truckload Motor Carriers
Using Ant Colony Techniques. Departamento de Economa de la Empresa,
Universidad Carlos III de Madrid, 2004. Relatrio Tcnico.
[8] BEKTAS, T.; CRAINIC, T.G.; MORENCY, V. Improving performance of
rail

yards through dynamic

reassignments

of empty

cars. Centre

Interuniversitaire de Recherche sur les Rseaux dEntreprise, la Logistique et


le

Transport

(CIRRELT).

Relatrio

Tcnico.

Disponvel

em :

<http://www.forac.ulaval.ca:1037/Publications/Documents%20de%20travail
%202007/CIRRELT-2007-19.pdf >. Acesso em 12/12/2007.

104

[9] BIANCHI, L. Ant Colony Optimization and Local Search for the Probabilistic
Traveling Salesman Problem: A Case Study in Stochastic Combinatorial
Optimization. Tese de Doutorado, ULB Universit Libre de Bruxelles, 2006.
[10]

BIRATTARI, M., DORIGO, M., How to assess and report the

performance of a stochastic algorithm on a benchmark problem: Mean or best


result on a number of runs? Optimization Letters, v. 1, n. 3, p. 309-311,
2007.
[11]

BIRATTARI, M. On the estimation of the expected performance of a

metaheuristic on a class of instances. How many instances, how many runs?,


Technical Report. IRIDIA, Universit Libre de Bruxelles, Brussels, Belgium,
2004.
[12]

BLACK, Paul E. Dijkstra's algorithm. Dictionary of Algorithms and

PUC-Rio - Certificao Digital N 0321287/CA

Data Structures [online], Paul E. Black, ed., U.S. National Institute of


Standards and Technology. 2006. Publicao Online. Disponvel em:
<http://www.nist.gov/dads/HTML/dijkstraalgo.html>. Acesso em: 6/2/2008.
[13]

BLUM, Christian; ROLI, Andrea. Metaheuristics in Combinatorial

Optimization: Overview and Conceptual Comparison. ACM Computing


Surveys, v. 35, n. 3, p. 268308, 2003.
[14]

BULLNHEIMER, B., HARTL, R.F., STRAUSS, C.: A new rank-based

version of the Ant System: A computational study. Central European


Journal for Operations Research and Economics, v. 7, p. 2538, 1999.
[15]

BUSSIECK, M. R., WINTER, T., ZIMMERMANN, U. T. Discrete

Optimization in Public Rail Transport. Mathematical Programming, v. 79,


p. 415-444, 1997.
[16]

CASTELLO BRANCO, J. E. (Ed.); FERREIRA, R. (Ed.). Tratado de

estradas de ferro: material rodante. 438 p, Rio de Janeiro, 2000.


[17]

CHARNES, A. & MILLER, M. H.: A model for the optimal programming

of railway freight train movements, Management Science, 3, 7492, 1956.


[18]

COLORNI, A.; DORIGO, M.; MANIEZZO, V. Distributed optimization

by ant colonies. Proceedings of the First European Conference on


Artificial Life. p. 134-142, Cambridge, MA, MIT Press, 1992.

105

[19]

CORDEAU, J.-F. A branch-and-cut algorithm for the dial-a-ride problem.

Operations Research. n. 54, p. 573586, 2006.


[20]

CORDEAU J-F; LAPORTE G. A tabu search heuristic for the static multi-

vehicle dial-a-ride problem. Transportation Research Part B, n. 37, p. 579594, 2003.


[21]

CRAINIC, Teodor Gabriel; KIM Intermodal Transportation. Handbooks

In Operations Research & Management Science: Transportation, n. 14, p.


467-529. C. Barnhart, G. Laporte (eds.). North Holland. Oxford, UK, 2007.
[22]

CRAINIC, Teodor Gabriel. Long Haul Freight Transportation. Handbook

of Transportation Science. R.W. Hall (Ed.), 2nd Edition, Kluwer, 2002.


[23]

CRAINIC, Teodor Gabriel; LAPORTE, Gilbert. Planning models for

PUC-Rio - Certificao Digital N 0321287/CA

freight transportation. European Journal of Operational Research. n. 97, p.


409-438, 1997.
[24]

CRAINIC, Teodor Gabriel; ROY, Jacques. OR tools for tactical freight

transportation planning. European Journal of Operational Research. n. 33,


p. 290-297, 1988.
[25]

CRAINIC, Teodor Gabriel; FERLAND, Jacques A.; ROUSSEAU, Jean

Marc. A Tactical Planning Model for Rail Freight Transportation.


Transportation Science, v.18, n. 2, p. 165-184, 1984.
[26]

CRAINIC, Teodor Gabriel; FERLAND, Jacques A.; ROUSSEAU, Jean

Marc. Un modle de planification pour le transport ferroviaire des


merchandises. Centre de Recherche sur les Transports. Publication # 195.
Universit de Montral. Montreal, Canad, 1980.
[27]

DAGANZO, Carlos F.; DOWLING, Richard G.; HALL, Randolph W.

Railroad Classification Yard Throughput: The Case of Multistage Triangular


Sorting. Transportation Research, vol. 17A, n. 2, p. 95-106, University of
California, Berkeley (CA), EUA, 1983.
[28]

DELLAMICO, M. ; RIGHINI, G.; SALANI, M. A Branch-and-Price

Approach to the Vehicle Routing Problem with Simultaneous Distribution and


Collection. Transportation Science, v. 40, n. 2, p. 235-247, 2006.

106

[29]

DELLAMICO, M. ; MONACI, M.; PAGANI, C; VIGO, D. Heuristic

approaches for the Fleet Size and Mix Vehicle Routing Problem with Time
Windows. Transportation Science, v. 41, n. 4, p. 516-526. 2007.
[30]

DIESTEL, REINHARD. Graph Theory. 3.Ed. Heidelberg, Alemanha:

Springer-Verlag, 2005. 411p.


[31]

DIGENES, G. S. Uma contribuio ao estudo dos indicadores de

desempenho operacional de ferrovias de carga: O caso da Companhia


Ferroviria do Nordeste. Dissertao de mestrado. COPPE/UFRJ, Rio de
Janeiro, 2002
[32]

DIRNBERGER, J. R.; BARKAN, C. P. L. Lean railroading: Improving

railroad classification terminal performance through bottleneck management


methods.

Transportation

Research

Record

Journal

of

the

PUC-Rio - Certificao Digital N 0321287/CA

Transportation Research Board, n. 1995, p. 52-61. 2007. Disponvel em:


<http://cee.uiuc.edu/railroad/CEE/pdf/Dirnberger%20&%20Barkan%202007.
pdf>. Acesso em: 31/5/2008.
[33]

DORIGO, M., BIRATTARI, M., STTZLE, T. Ant colony optimization:

Artificial

ants

as

computational

intelligence

technique.

IEEE

Computational Intelligence Magazine, v. 1, n. 4, p. 28-39, 2006.


[34]

DORIGO , M. ; BLUM, C. Ant colony optimization theory: A survey.

Theoretical Computer Science, v. 344, n 2-3, p. 243-278, 2005.


[35]

DORIGO, M., STTZLE, T.: Ant Colony Optimization. 7.ed.

Cambridge, MA, EUA: MIT Press, 2004. 305p.


[36]

DORIGO, M.; STTZLE, T. The Ant Colony Optimization Metaheuristic:

Algorithms, Applications, and Advances. Universit Libre de Bruxelles,


IRIDIA, Brussels, Belgium, 2000. Relatrio Tcnico.
[37]

DORIGO, M., Optimization, Learning and Natural Algorithms, Tese de

Doutorado Politecnico di Milano, 1992.


[38]

DORIGO M., MANIEZZO V., COLORNI, A. Positive Feedback as a

Search Strategy. Politecnico di Milano, Dipartimento di Elettronica, Itlia,


1991. Relatrio Tcnico.

107

[39]

DUMAS, Y., DESROSIERS, J. e SOUMIS, F. The pickup and delivery

problem with time windows. European Journal of Operational Research, v.


54, p. 7-22, 1991.
[40]

DYKE, Carl Van. Asset Velocity, Terminal Performance and Network

Fluidity. In: MULTIRAIL, 2006, Princeton, NJ, EUA. Disponvel em: <
http://www.railplanning.com/MR2006docs/Carl%20Van%20Dyke_Network
%20Performance.pdf>. Acesso em: 31/5/2008.
[41]

FOSTER, I. Designing and Building Parallel Programs. Online Publishing

Project of Addison-Wesley Inc., Argonne National Laboratory and the NSF


Center for Research on Parallel Computation. Publicao Online. 2005.
Disponvel em: <http://www-unix.mcs.anl.gov/dbpp/>, Acesso em: 1/12/2006.
[42]

FRANZESE, L. A. G. FIORONI, M. M. BOTTER, R. C.

Railroad

PUC-Rio - Certificao Digital N 0321287/CA

Simulator on Closed Loop, Anais do Proceedings of the 2003 Winter


Simulation Conference; v. 2, p. 1602-1606, New Orleans, LA, EUA. 2003.
[43]

GAMBARDELLA,

L.

M.;

RIZZOLI,

A.

E.;

OLIVERIO,

F.;

CASAGRANDE, N.; DONATI, A. V.; MONTEMANNI, R.; LUCIBELLO,


E. Ant Colony Optimization for vehicle routing in advanced logistics systems.
MAS2003 - The International Workshop on Modeling & Applied
Simulation, p. 3-9, Ed. A. G. Bruzzone e R. Mosca, 2003.
[44]

GARCIA, I.; GUTIERREZ, G. A simulation model for strategic planning

in rail freight transport systems. Institute of Transportation Engineers. ITE


Journal.

v.

73,

n.

9,

2003.

Publicao

Online. Disponvel

em:

<http://findarticles.com/p/articles/mi_qa3734/is_200309/ai_n9269474>.
Acesso em: 21/12/2007.
[45]

GUALDA, N.D.F., MURGEL, L. M. F. G., A Model for the Train

Formation Problem, Third International Meeting for Research in Logistics,


Trois-Rivires, Qubec, Canada, 2000.
[46]

GUTJAHR, WALTER J. First Steps to the Runtime Complexity Analysis

of Ant Colony Optimization. Technical Report. Department of Statistics and


Decision Support Systems, University of Vienna, ustria, 2007.

108

[47]

JIN, Y.; MURIEL, A. Single-Warehouse Multi-Retailer Inventory

Systems with Full TruckLoad Shipments. Relatrio Tcnico. Supply Chain


Management Lab, University of Massachussetts Amherst, MA, EUA, 2005.
Disponvel em: <http://scmlab.ecs.umass.edu/jin/NRLJun05.pdf>. Acesso em:
4/3/2008.
[48]

KEATON, M. H., Designing Optimal Railroad Operating Plans:

Lagrangian Relaxation and Heuristic Approaches, Transportation Research. v.


23B. n. 6, p. 415-431. Pergamon Press, Great Britain, 1989.
[49]

KRAFT, E. R. A Reservations-Based Railway Network Operations

Management System. 244p. Tese de Doutorado. Department of Systems


Engineering, University of Pennsylvania, Philadelphia, PA, EUA, 1998.
[50]

KUO, Ching-Chung; NICHOLLS, Gillian M. A mathematical modeling

PUC-Rio - Certificao Digital N 0321287/CA

approach to improving locomotive utilization at a freight railroad. Omega:


The International Journal of Management Science. v. 35, p. 472-485.
2007.
[51]

LEE Y. H., KIM J. I., KANG K. H; KIM, K. H. A heuristic for vehicle

fleet mix problem using tabu search and set partitioning, Journal of the
Operational Research Society. 2007. Publicao Online. Disponvel em:
<http://www.palgravejournals.com/jors/journal/vaop/ncurrent/abs/2602421a.html>.

Acesso

em:

18/11/2007.
[52]

LI, Haibing; LIM Andrew. A Metaheuristic for the Pickup and Delivery

Problem with Time WindowS. International Journal on Artificial


Intelligence Tools, v. 12, n. 2. p. 173-186, 2003.
[53]

LINDNER, Thomas. Train Schedule Optimization in Public Rail

Transport. 139p. Tese de Doutorado Departamento de Matemtica e


Informtica. Universidade de Braunschweig, Alemanha, 2000.
[54]

LU, Quan; DESSOUKY, Maged M. A new insertion-based construction

heuristic for solving the pickup and delivery problem with time windows.
European Journal of Operational Research, v. 175, n. 2, p. 672-687, 2006.

109

[55]

LU, Q, DESSOUKY, M. An Exact Algorithm for the Multiple Vehicle

Pickup and Delivery Problem. Transportation Science, v. 38(4), p. 503-514,


2004.
[56]

LBBECKE, Marco. Engine Schedule by Column Generation. 181p. Tese

de Doutorado. Braunnschweig University of Technology, Alemanha, 2001.


[57]

MANIEZZO, V., CARBONARO, A. Ant Colony Optimization: An

Overview. 20p. Scienze dellInformazione, University of Bologna, Bologna,


Italy, 1999. Relatrio Tcnico.
[58]

MARIN, A.; SALMERON, J. Tactical design of rail freight networks. Part

I: Exact and heuristic methods. European Journal of Operational Research.


n. 90, p. 26-44, 1996a.

PUC-Rio - Certificao Digital N 0321287/CA

[59]

MARIN, A.; SALMERON, J. Tactical design of rail freight networks. Part

II: Local search methods with statistical analysis. European Journal of


Operational Research. n. 94, p. 43-53, 1996b.
[60]

MARTINELLI, D.R.; HUALIANG, T., Optimization of Railway

Operations Using Neural Networks, Transportation Research, vol. 4, n. 1,


pp 33-49, United Kingdom, 1996.
[61]

MITROVIC-MINIC, S. Pickup and Delivery Problem with Time

Windows: A Survey. Burnaby, BC, Canada. 43p. Technical report: SFU


CMPT TR 1998-12 School of Computing Science, Simon Fraser University,
1998.
[62]

MITROVIC-MINIC, S.; LAPORTE, G. Waiting Strategies for the

Dynamic Pickup and Delivery Problem with Time Windows. Technical


report: SFU CMPT TR 1998-12 School of Computing Science, Simon
Fraser University, 2003.
[63]

NANRY, W.P.; BARNES, J.W. Solving the Pickup and Delivery Problem

with Time Windows using Tabu Search, Transportation Research Part B, n.


34, p. 107-121, 2000.
[64]

OBITKO, Marek. Uma introduo aos Algoritmos Genticos com Java

applets. 1998. Traduo Hermelindo Pinheiro Manoel. Publicao Online.

110

Disponvel

em:

<http://www.professor.webizu.org/ga/>.

Acesso

em:

23/02/2008.
[65]

PACHL, J.: Railway Operation and Control. VTD Publishing. 2002.

[66]

PARRAGH, S. N.; DOERNER, K. F.; HARTL R. F. A survey on pickup

and delivery models Part II: Transportation between pickup and delivery
locations, Faculty of Business, Economic and Statistics, Department of
Business Studies, University of Vienna, Vienna, Austria, 2006. Relatrio
Tcnico.
[67]

REIMANN, Marc. Ant Based Optimization in Goods Transportation.

141p. Tese de Doutorado University of Vienna, Austria, 2002.


[68]

REIS Jr., W.O. Um Otimizador Branch & Bound Paralelo para Manobras

PUC-Rio - Certificao Digital N 0321287/CA

em Ptios Ferrovirios. Dissertao de Mestrado Departamento de


Informtica, Centro Tecnolgico, Universidade Federal do Esprito Santo,
Vitria (ES), Brasil, 2003.
[69]

ROPKE, Stefan; CORDEAU, Jean-Franois; LAPORTE, Gilbert. Models

and branch-and-cut algorithms for pickup and delivery problems with time
windows. 0etworks. v. 49, n. 4, p. 258-272, 2007.
[70]

SABINO, J. A.; STTZLE T.; BIRATTARI, M.; LEAL, J. E. ACO

Applied to Switch Engine Scheduling in a Railroad Yard. In:__ Proceedings


of the 5th International Workshop on Ant Colony Optimization and
Swarm Intelligence - A0TS 2006, Brussels, Belgium, 2006. p. 502-503.
[71]

SABINO, J. A. Competio Entre Colnias de Formigas Aplicada

Designao de Locomotivas de Manobras em Ptios Ferrovirios. Dissertao


de Mestrado Departamento de Informtica, Centro Tecnolgico,
Universidade Federal do Esprito Santo, Vitria (ES), Brasil, 2004.
[72]

SABINO, J. A. Ant Colony Systems Applied to Switch Engine

Assignment and Routing in a Railroad Yard, Student Paper Award on


Management Science in Railroad Applications from RASIG, I0FORMS
(Institute for Operations Research and Management Science) Annual
Meeting, San Jose, CA, USA, 2002.

111

[73]

SAVELSBERGH, M.W.P.; SOL, M. The General Pickup and Delivery

Problem. Transportation Research. v. 29, p. 17-29, 1995.


[74]

SIGURD, M., PISINGER, D., SIG, M. The pickup and delivery problem

with time windows and precedences. Technical report, University of


Copenhagen, 2000.
[75]

TARANTILIS, C.D.; IOANNOU, G.; PRASTACOS, G. Advanced

vehicle routing algorithms for complex operations management problems.


Journal of Food Engineering. v.70, p.455471, 2005.
[76]

TOTH, P.; VIGO, D. The Vehicle Routing Problem. 1. Ed. Philadelphia,

PA, EUA: SIAM, 2002. 367p.


[77]

TOTH, P.; VIGO, D. An Exact Algorithm for the Vehicle Routing

PUC-Rio - Certificao Digital N 0321287/CA

Problem with Backhauls. Transportation Science. v. 31, n. 4, p. 372385,


1997.
[78]

VAIDYANATHAN, Balachandran; AHUJA, Ravindra K.; LIU, Jian;

SHUGHART, Larry A. Real-life locomotive planning: New formulations and


computational results. Transportation Research Part B: Methodological. v.
42, n. 2, p. 147-168, 2008.
[79]

WINTER, T. Online and Real-Time Dispatching Problems. PhD thesis,

Braunschweig University of Technology, Braunschweig, Germany, 1999.


[80]

YOURDON, E.; COAD, P. Object-Oriented Analysis, 2nd Edition,

Englewood Cliffs, NJ: Prentice-Hall, 1991.


[81]

ZHOU, C., TAN, Y., LIAO, L., LIU, Y. Solving the Multi-vehicle Pick-up

and Delivery Problem with Time Widows by New Construction Heuristic.


Proceedings of the Sixth international Conference on intelligent Systems
Design and Applications (ISDA'06), n. 2, Washington, DC, p. 1035-1042,
2006.

Você também pode gostar