From 4cee4793f1f45f2075391e1471252aec96994495 Mon Sep 17 00:00:00 2001
From: rschoene <rene.schoene@tu-dresden.de>
Date: Tue, 19 Jun 2018 14:39:34 +0200
Subject: [PATCH] Ugly setting of parameters for ACO solver.

- the solver should make a better decision for population and iteration sizes based on model parameters
---
 .../src/main/java/ir/ac/ui/eng/ACOSolver.java | 22 +++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/jastadd-mquat-solver-aco/src/main/java/ir/ac/ui/eng/ACOSolver.java b/jastadd-mquat-solver-aco/src/main/java/ir/ac/ui/eng/ACOSolver.java
index 687bac3..6b7fbb7 100644
--- a/jastadd-mquat-solver-aco/src/main/java/ir/ac/ui/eng/ACOSolver.java
+++ b/jastadd-mquat-solver-aco/src/main/java/ir/ac/ui/eng/ACOSolver.java
@@ -107,6 +107,28 @@ public class ACOSolver implements BenchmarkableSolver {
     int numSoftwareSolutions = 0;
     int numTotalSoftwareSolutions = 0;
 
+    if (model.numComponents() == 3) {
+      if (model.numImplementations() == 62) {
+        // benchmark 1_small and 2_small_hw
+        setPopulation_size(80);
+        setIteration_size(1);
+      } else if (model.numImplementations() == 30) {
+        // benchmark 4_medium and 5_medium_hw
+        setPopulation_size(50000);
+        setIteration_size(50);
+      }
+    } else if (model.numComponents() == 31) {
+      if (model.numImplementations() == 62) {
+        // benchmark 3_small_sw
+        setPopulation_size(80);
+        setIteration_size(1);
+      } else if (model.numImplementations() == 155) {
+        // benchmark 6_medium_sw
+        setPopulation_size(50000);
+        setIteration_size(50);
+      }
+    }
+
     stopWatch = StopWatch.start();
     List<Solution> solutions = new ArrayList<>();
     List<Solution> currentSolutions = new ArrayList<>();
-- 
GitLab