コード例 #1
0
        static void Main(string[] args)
        {
            string jobString = "JobFiles/jobs10.txt";

            Stopwatch sw = new Stopwatch();

            IHybridAlgProcessor hybridAlg = new HybridAlgProcessor();
            IJobFileReader      reader    = new JobFileReader();
            IGenAlgProcessor    GA        = new GenAlgProcessor(10, 10);

            reader.ReadFile(jobString);
            List <Job>            originalJobList        = reader.Jobs;
            List <CompletionNode> originalCompletionList = GA.CalculateCompletionList(originalJobList);

            Console.WriteLine("Beginning Schedule");
            Console.WriteLine("\tTotal Delay: " + GA.CalculateTotalDelay(originalCompletionList));
            Console.WriteLine("\tSchedule:");
            Console.WriteLine("\t\tjobID\t\texecTime\tdueTime");

            foreach (var job in originalJobList)
            {
                Console.WriteLine("\t\t" + job.jobID + "\t\t" + job.execTime + "\t\t" + job.dueTime);
            }

            Console.WriteLine("\nRunning Hybrid Algorithm...\n");

            sw.Start();
            hybridAlg.RunHybridAlg(jobString);
            sw.Stop();

            Console.WriteLine("Optimal Schedule");
            Console.WriteLine("\tElapsed Time (ms): " + sw.ElapsedMilliseconds);
            Console.WriteLine("\tTotal Delay: " + hybridAlg.OpSchedTotalDelay);
            Console.WriteLine("\tCalculated Schedule:");
            Console.WriteLine("\t\tjobID\t\texecTime\tdueTime");

            foreach (var job in hybridAlg.OpSched)
            {
                Console.WriteLine("\t\t" + job.jobID + "\t\t" + job.execTime + "\t\t" + job.dueTime);
            }

            Console.ReadLine();
        }