Example #1
0
        public Program()
        {
            this.Mochila = new Mochila(25);
            this.Grafo   = new Grafo();

            var objeto1 = new Objeto(1, 3, 5);
            var objeto2 = new Objeto(2, 3, 4);

            this.Objetos = new List <Objeto>();
            this.Objetos.Add(objeto1);
            this.Objetos.Add(objeto2);
            this.Objetos.Add(new Objeto(3, 2, 7));
            this.Objetos.Add(new Objeto(4, 4, 8));
            this.Objetos.Add(new Objeto(5, 2, 4));
            this.Objetos.Add(new Objeto(6, 3, 4));
            this.Objetos.Add(new Objeto(7, 5, 6));
            this.Objetos.Add(new Objeto(8, 2, 8));

            foreach (var itemOrigem in this.Objetos)
            {
                foreach (var itemDestino in this.Objetos)
                {
                    this.Grafo.AddRota(itemOrigem, itemDestino);
                }
            }

            this.formiga = new Formiga(this.Grafo, objeto1, this.Mochila, 3, 20);
        }
Example #2
0
        public void GerarIteracao()
        {
            for (int i = 0; i < QuantidadeInteracao; i++)
            {
                foreach (var cidade in Cidade.GetCidade())
                {
                    var formiga = new Formiga(cidade);
                    var caminho = formiga.Caminhar();

                    this.RotasFeitas.Add(caminho);
                    Cidade.ResetRotas();
                }

                this.MostrarRotasFormigas();
                this.AddFeromonioCaminhos();
                Rota.EvaporarFeromonio();
            }

            MostrarMelhorRota();
            MostrarFeromonioRotas();
        }