Simulando o transporte público no SUMO

Acompanhando os desenvolvimentos anteriores com o SUMO (Introdução ao SUMO, Gerar diversas rotas, tipos de veículo e veículos no SUMO e Geração de fluxos de veículos no SUMO), foi visto a possibilidade de especificar ônibus para compor a simulação. A circulação de ônibus exige um elementos de infraestrutura, que são as paradas de ônibus. Para especificar as paradas de ônibus é preciso defini-las em um arquivo adicional para a criação da network.

O código abaixo especifica uma parada de ônibus. O primeiro parâmetro é o identificador da parada e deve ser único. O parâmetro seguinte é o nome da lane onde será colocada a  parada e de onde vem esse nome será explicado adiante. Os parâmetros startPos e endPos são as metragens inicial e final de onde estará localizada a parada na lane especificada (em que altura da via o ponto de ônibus começa e termina).  O último parâmetro são nomes para as linhas que utilizarão a parada e é opcional.

O nome da lane para colocar na configuração da parada de ônibus é composto pelo nome do edge, seguido de um caracter de underline e finalizado com o número da lane onde estará localizada a parada. No arquivo com extensão .net.xml gerado pelo Netconvert é possível conferir o nome das lanes existentes. As definição a seguir foi extraída da rede gerada nesse material e onde pode ser visto o identificar a line (atributo “id” que é visto na segunda linha).

Tendo especificado o arquivo adicional, é preciso salvá-lo com a extensão .add.xml e adicioná-lo ao arquivo de configuração da simulação. Considerando que o arquivo adicional foi salvo com o nome de “meu.add.xml”, o arquivo de configuração (arquivo com a extensão .sumo.cfg) adicionando a quinta linha.

A partir dessa inclusão é necessário novamente fazer uso do Netconvert (caso tenha esquecido como fazer o uso, ele está especificado em Introdução ao SUMO, no item “Criando efetivamente a network”). Caso tenha sido optado por utilizar o comando via terminal, o comando será acrescido desse novo arquivo nos parâmetros do comando ficando: netconvert –node-files=meu.nod.xml –edge-files=meu.edg.xml –additional-files=meu.add.xml –output-file=meu.net.xml

Tendo definido o arquivo de configuração já é possível abri-lo no SUMO e ver que foi adicionado  um novo elemento gráfico, ilustrado na figura abaixo. Os número mostrado são os valores especificados no parâmetro “lines” da configuração da parada.

busStopSe a simulação for executada, será visto que mesmo com a parada os ônibus não irão parar nela. É preciso vincular a parada na definição do veículo ônibus, dizendo para ele em que paradas ele precisa parar. Isso é feito com as linhas 7, 8 e 9 da especificação de rotas a seguir. Observe que a definição inicial de um veículo acontece normalmente, apenas sendo feita a inclusão de uma parada.

O novo veículo foi feito alterando sua cor individual. Observe que a cor de um veículo do tipo “Bus” é vermelha, mas na definição desse novo ônibus foi colocado que a cor dele deve ser azul (valor 0,0,1 para o parâmetro color). Na definição da parada (stop), na linha 8, é colocado o identificador da parada através do parâmetro “busStop” e uma duração, especificada em segundos e que corresponde a quanto tempo o veículo deve ficar parado alí. O identificar da parada é o nome do identificar utilizado na especificação do arquivo adicional.

Executando a simulação é possível ver agora que o carro e o primeiro ônibus da simulação continuam não parando no ponto especificado, mas o próximo ônibus (o veículo na cor verde) irá realmente parar por um tempo.

 

Share

Uma opinião sobre “Simulando o transporte público no SUMO

  1. Aly

    Esta parte foi a única que não funcionou de todo o seu material 🙁

    Quitting (on error).

    Loading of ‘meu.sumo.cfg’ failed!

     
    Reply

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.