private static void TestPMedWrapper_Large() { //risolviamo il Pmed1.txt in large!!! 10.000 PMed3 pmed3; uint nsol = 2; try { pmed3 = new PMed3(Console.Write, nsol, "TestWrap", false, false); } catch (Exception e) { Console.WriteLine("exception: {0}", e.Message); Console.WriteLine("{0}", Directory.GetCurrentDirectory()); return; } //#if DEBUG int m = 0; if (!pmed3.Load(@"..\..\..\pmed1.txt", ref m)) { Console.WriteLine("ERROR LOAD FILE!!!"); return; } pmed3.ComputeSolutions(false, false); //pmed3.InitProblem(); //#endif //pmed3.InitProblem(); //pmed3.BuildSolutionFromWrapper(); Console.ReadKey(); pmed3.ShowWrapperSolution(Console.Write); pmed3.CheckWrapperClusterSolution(); }
private static void TestWrapperCapacitated() { PMed3 pmed3; uint nsol = 1; int m = 1; try { pmed3 = new PMed3(Console.Write, nsol, "TestWrap", false, false); } catch (Exception e) { Console.WriteLine("exception: {0}", e.Message); Console.WriteLine("{0}", Directory.GetCurrentDirectory()); return; } if (!pmed3.Load(@"..\..\..\pmedcap1.txt", ref m, false)) { Console.WriteLine("ERROR LOAD FILE!!!"); return; } pmed3.ComputeSolutions(false, false); //pmed3.InitProblem(); //#endif //pmed3.InitProblem(); //pmed3.BuildSolutionFromWrapper(); //Console.ReadKey(); pmed3.ShowWrapperSolution(Console.Write); pmed3.CheckWrapperClusterSolution(); }
private static void TestPMedWrapper3CCS() { //Problema da testare : //ora proviamo con costo cluster... //Sol0 = {4,2} ; {1,0,3} //Sol1 = {3,1} ; {4,2,0} //C(Sol0) = {0,16}=16 ; {0,15,40}=55 = 71 //C(Sol1) = {0,40}=40 ; {0,16,24}=40 = 80 //min z = 16*S0c0 + 55*S0c1+ 40*s1c0 + 40*s1c1 //s.t. // s0c0 s0c1 s1c0 s1c1 //z 16 55 40 40 //0 0 1 0 1 //1 0 1 1 0 //2 1 0 0 1 //3 0 1 1 0 //4 1 0 0 1 PMed3 pmed3; uint nsol = 2; try { pmed3 = new PMed3(Console.Write, nsol, "TestWrap", true, false); } catch (Exception e) { Console.WriteLine("exception: {0}", e.Message); Console.WriteLine("{0}", Directory.GetCurrentDirectory()); return; } #if DEBUG //if (!pmed3.LoadTest(@"\\polocesena\polocesena\UtentiScienze\STUDENTI\raffaello.bertini\Desktop\AAA\Problems\pmedtest_verysmall.txt")) if (!pmed3.LoadTest(@"..\..\..\pmedtest_verysmall.txt")) { Console.WriteLine("ERROR LOAD FILE!!!"); return; } pmed3.ComputeSolutions(false, false); //pmed3.InitProblem(); #endif //ora modifico le soluzioni a piacimento... pmed3.SolutionsClusters[0][0].Clear(); pmed3.SolutionsClusters[0][0].Add(4); pmed3.SolutionsClusters[0][0].Add(2); pmed3.SolutionsClusters[0][1].Clear(); pmed3.SolutionsClusters[0][1].Add(1); pmed3.SolutionsClusters[0][1].Add(0); pmed3.SolutionsClusters[0][1].Add(3); pmed3.SolutionsClusters[1][0].Clear(); pmed3.SolutionsClusters[1][0].Add(3); pmed3.SolutionsClusters[1][0].Add(1); pmed3.SolutionsClusters[1][1].Clear(); pmed3.SolutionsClusters[1][1].Add(4); pmed3.SolutionsClusters[1][1].Add(2); pmed3.SolutionsClusters[1][1].Add(0); //da rendere publici per testare... //pmed3.InitProblem(); //pmed3.BuildSolutionFromWrapper(); pmed3.ShowWrapperSolution(Console.Write); //double obj = w.getObjectValue(prob); //double[] solvars = new double[4]; //Vettore deputato a contenere i valori della soluzione //w.getSolutionValues(prob, solvars, null, null, null); //for (int i = 0; i < solvars.Length; i++) // Console.WriteLine("{0} solvar {1}", solvars[i], i); //Console.WriteLine("VALORE OTTIMO TROVATO : {0} ", obj); }
private void showWrapperSolutionToolStripMenuItem_Click(object sender, EventArgs e) { pm.ShowWrapperSolution(ConsoleAppendText); }