Example #1
0
        private void EjecutarILS()
        {
            QAP qap = new QAP(bestSolution);

            ES es = new ES(qap);

            qap = es.GetQAP();
            QAP best = new QAP(qap);

            for (int i = 0; i < 24; i++)
            {
                Mutar(qap);
                es  = new ES(qap);
                qap = es.GetQAP();

                if (qap.GetCoste() < best.GetCoste())
                {
                    best = new QAP(qap);
                }
                else
                {
                    qap = new QAP(best);
                }
            }


            bestSolution = new QAP(best);
        }
        static void Main(string[] args)
        {
            Stopwatch sw = new Stopwatch();

            Console.WriteLine("Introduzca ruta del archivo.");
            string ruta = Console.ReadLine();

            QAP qap = new QAP(ruta);

            sw.Start();
            ES es = new ES(qap);

            sw.Stop();

            Console.WriteLine("ES: " + es.GetQAP().GetCoste() + " - tiempo: " + sw.Elapsed);

            sw.Restart();
            BMB bmb = new BMB(25, ruta);

            sw.Stop();

            Console.WriteLine("BMB: " + bmb.GetQAP().GetCoste() + " - tiempo: " + sw.Elapsed);

            sw.Restart();
            GRASP g = new GRASP(ruta);

            sw.Stop();

            Console.WriteLine("GRASP: " + g.GetQAP().GetCoste() + " - tiempo: " + sw.Elapsed);

            sw.Restart();
            ILS ils = new ILS(ruta);

            sw.Stop();

            Console.WriteLine("ILS: " + ils.GetQAP().GetCoste() + " - tiempo: " + sw.Elapsed);

            sw.Restart();
            ILS_ES ie = new ILS_ES(ruta);

            sw.Stop();

            Console.WriteLine("ILS-ES: " + ie.GetQAP().GetCoste() + " - tiempo: " + sw.Elapsed);

            Console.WriteLine();
            Console.WriteLine("Listo ;)");
            Console.ReadKey();
        }