TazzSoni / SimuladorTrafegoMalhaViaria

Simulador de Tráfego em Malha Viária, atividade desenvolvida para a disciplina de Desenv. de Sist. Paralel. e Distrib. UDESC.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo da UDESC Alto Vale


Simulador de Malha viária

Atividade desenvolvida para a disciplina de Desenvolvimento de Sistemas Paralelos e Distribuídos do Centro de Educação Superior do Alto Vale do Itajaí (CEAVI/UDESC)

Sumário

Desenvolver um simulador de tráfego. Neste simulador há veículos que se movem pelas vias de uma malha viária. A malha é informada através de arquivo.

Especificação dos Veículos

a) Cada veículo deve ser um thread.
b) O veículo se movimenta pela malha, uma posição por vez, respeitando o sentido de fluxo dapista. O veículo só pode se mover caso a posição à frente esteja livre.
c) Ao se deparar com um cruzamento:

  • Deve escolher, aleatoriamente, uma das vias de saída do cruzamento para seguir. Aescolha deve ser feita antes do veículo ingressar no cruzamento.

d) Só deve se mover pelo cruzamento se todas as posições por onde vai passar estiverem totalmente livres (exclusão mútua).
e) Não deve bloquear o cruzamento de outros veículos (ficar parado no cruzamento).
f) Novos veículos são inseridos nos pontos de entrada da malha (ver especificação da malha).
g) Ao atingir um ponto de saída (ver especificação da malha), o veículo deve ser encerrado.
h) Veículos possuem velocidades de movimentação diferente (tempo de sleep a cada passo).

Especificação da Malha Viária

a) Deve ser carregada de um arquivo texto.
b) Nas duas primeiras linhas estão a quantidade de linhas e colunas da malha, respectivamente.
c) As próximas linhas especificam o tipo de cada segmento (célula) da malha:

image

d) Características gerais das vias:

  • São sempre horizontais ou verticais (não haverá vias em diagonal).
  • São de mão dupla (ou seja, possuem duas pistas).
  • Nas bordas, só haverá vias perpendiculares.
  • Entre vias paralelas, haverá sempre ao menos uma linha ou coluna em branco (ou seja,não haverá vias “grudadas” umas nas outras).
    e) Identificação de pontos de entrada e de saída de veículos:
  • Entrada: posição inicial da pista que está em uma das bordas da malha.
  • Saída: posição final da pista que está em uma das bordas da malha.
    f) Exemplo de malha e arquivo:

image

Especificação Geral do Sistema

a) A malha e os veículos devem ser visualizados em uma interface gráfica.
b) Deve possuir opções para:

  1. limitar quantidade de veículos: usuário informar a quantidade máxima de veículos que poderão estar circulando simultaneamente na malha. O sistema fica inserindo veículos até atingir esta quantidade. Assim que veículos sairem da malha, novos veículos devem ser inseridos para manter a quantidade máxima de circulando simultaneamente.
    [opcional] usuário informar um intervalo de inserção de veículos (de quanto em quanto tempo um veículo é inserido).
  2. iniciar simulação: fica inserindo veículos, que se movimentam na malha, respeitando a quantidade descrita anteriormente no item (1).
  3. encerrar simulação: para de inserir e encerra imediatamente todos os veículos.
    [opcional] encerrar e aguardar veículos saírem da malha.

c) Deve suportar tanto semáforos quanto monitores. Deve haver uma opção para o usuário escolher qual destes mecanismos será utilizado.

About

Simulador de Tráfego em Malha Viária, atividade desenvolvida para a disciplina de Desenv. de Sist. Paralel. e Distrib. UDESC.


Languages

Language:Java 100.0%