Pular para o conteúdo

Scripting, API, SDK

O Aimsun Next é, do ponto de vista de um programador, um ambiente extensível no qual novas funcionalidades podem ser adicionadas.

Conceitualmente, ele é dividido em duas partes principais, kernel e UI:

  • Kernel – Esta é a parte não visível. Inclui um banco de dados extensível para conter qualquer tipo de informação, uma representação desse banco de dados em memória e uma coleção de classes e funções (chamadas de métodos em C++) para acessar e modificar essas informações.
  • Interface de usuário (UI) – A representação gráfica do kernel. Inclui vistas 2D e 3D, editores, suporte a impressão etc.

O Aimsun Next tem quatro meios diferentes de estender tanto o kernel quanto a UI, cada um com uma finalidade diferente:

  • Scripting: Scripting foi projetado para automatizar operações que, de outra forma, seriam feitas manualmente com a GUI. Scripts podem ser usados para importar dados do modelo ou para fornecer ferramentas personalizadas para automatizar a edição. Scripting está disponível em Python. Para escrever funções de custo tanto Lua quanto Python podem ser usados.

  • API: Usando a Application Programming Interface, é possível programar operações que atuam durante a simulação microscópica ou mesoscópica alterando tempos de controle semafórico, gerenciamento ITS ou parâmetros de veículos. A API é normalmente usada na simulação de ITS avançados ou semáforos personalizados. APIs podem ser escritas em C ou em Python.

  • MicroSDK: O Microsimulator Software Development Kit é usado para desenvolver novos modelos de simulação microscópica (car following, lane changing etc.) substituindo aqueles incluídos no Microsimulador do Aimsun Next. O microSDK usa C++.

  • External Agent Interface (EAI): Ele fornece um método simples para conectar um simulador de direção ou controlador CAV a uma microssimulação do Aimsun Next. A EAI usa C++.

  • V2X SDK: Projetado para fornecer uma plataforma extensível para incluir comunicações veículo-a-veículo e veículo-a-infraestrutura usando protocolos CAV padrão ou protocolos específicos por função, desenvolvidos sob medida, em uma microssimulação do Aimsun Next. O V2X SDK usa C++.