Simulador ficando muito lento

Pessoal, estou fazendo um simuladorzinho do transito de uma cidade. Dai estava controlando o movimentos dos carros com um timer. Cada Carro eh um Objeto, como ja pensei que a criacao dos objetos aleatoriamente ia ser pesado, criei 100 carros que aperecem ou nao no mapa, so preciso mudar o atributo deles ativado/desativado. A posição que o carro ocupa foi também abstraída e transformada em um objeto, que entra numa lista ligada e essa lista representa o caminho. O carro quer se mover, ele pega o objeto posição que ele possui e chama o método proximaPosicao(); e então ele se move.

O engraçado é que como os objetos estão todos criados logo no início, achei que o peso da computação ia ser o mesmo depois de inicializar tudo, mas é com o tempo que o simulador vai ficando mais lento, ou seja, a medida que vai passando o tempo.

Bom, o resultado é que ficou lento, talvez porque usei objeto d+. De cara alguém já tem um palpite do que seja. Se não amanha posto aqui o código.

Pare de perder tempo tentando adivinhar o problema. Use um profiler:
https://visualvm.dev.java.net/

Seria uma boa você seguir também os tutoriais do meu site, e usar Java2D para sua simulação. Ao invés do timer, controle o loop de animação seguindo as dicas do game loop. Também use escrita direta. Tudo isso permitirá uma simulação com muito mais performance (já fiz brincadeira com mais de 2000 bots).

Veja:
Ponto V! - Uma visão rápida do Java 2D
Ponto V! - Pintando no Java 2D!
Ponto V! - O fantasma do Pacman
Ponto V! - Trabalhando com imagens

Seja 100 ou 1000 objetos não é para deixar sua aplicação lenta.
Provavelemte você tem algum gargalo no seu código, ou está fazendo muito processamento desnecessário, ou não está limpando o que não é mais usado.

Tenta usar algum profiler, o netbeans (se não me engano) tem um nativo.

Se postar o cóigo fica mais fácil de ajudar