O projeto contará com uma classe abstrata que deve conter os métodos e atributos mínimos necessários para a construção de algoritmo de colônia de formigas. Uma classe herdará da classe abstrata e implementará esses métodos e mais outros que possam surgir dependendo do tipo de problema alvo. Será realizada uma composição com a classe Formiga que deve descrever tudo aquilo que uma formiga deve fazer no algoritmo. Uma classe que gere um modo de encontrar vértices e arestas em um grid qualquer e assim criar grafo de visibilidade reduzido para que o algoritmo possa executar.