From ee8036cd600a71c71f3628a4389ec4f5b0eef6d1 Mon Sep 17 00:00:00 2001
From: Jean-Christophe <jean-christophe.routier@univ-lille.fr>
Date: Wed, 8 Jul 2020 12:33:00 +0200
Subject: [PATCH] update isTerminated with increasing objective

---
 .../solver/decentralized/agent/VariableAgent.scala        | 6 +++---
 .../solver/decentralized/supervisor/Supervisor.scala      | 8 ++++----
 .../decentralized/supervisor/SupervisorStatus.scala       | 2 +-
 3 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/main/scala/org/scadcop/solver/decentralized/agent/VariableAgent.scala b/src/main/scala/org/scadcop/solver/decentralized/agent/VariableAgent.scala
index fdb5447..fb92fb1 100755
--- a/src/main/scala/org/scadcop/solver/decentralized/agent/VariableAgent.scala
+++ b/src/main/scala/org/scadcop/solver/decentralized/agent/VariableAgent.scala
@@ -21,9 +21,9 @@ import scala.language.postfixOps
 abstract class VariableAgent(val variable: Variable,
                              val neighbours : Set[Variable],
                              val constraints: Set[Constraint]) extends Actor {
-  var trace: Boolean = true
-  var debug: Boolean = true
-  var debugState: Boolean = true
+  var trace: Boolean = false
+  var debug: Boolean = false
+  var debugState: Boolean = false
 
   var supervisor: ActorRef = context.parent
   var directory: Directory = new Directory()
diff --git a/src/main/scala/org/scadcop/solver/decentralized/supervisor/Supervisor.scala b/src/main/scala/org/scadcop/solver/decentralized/supervisor/Supervisor.scala
index 2fb2e0f..60dd936 100755
--- a/src/main/scala/org/scadcop/solver/decentralized/supervisor/Supervisor.scala
+++ b/src/main/scala/org/scadcop/solver/decentralized/supervisor/Supervisor.scala
@@ -15,9 +15,9 @@ import akka.actor.{Actor, ActorRef, FSM, Props, Stash, PoisonPill}
 class Supervisor(val pb : DCOP, val algorithm: Algorithm, val initialContext: Context) extends Actor with Stash
     with FSM[SupervisorState, SupervisorStatus] {
 
-  var debug = true
-  var debugState = true
-  var trace = true
+  var debug = false
+  var debugState = false
+  var trace = false
 
   var solver: ActorRef = context.parent // Reference to the distributed solver
   var directory = new Directory() // White page for the peers
@@ -141,6 +141,7 @@ class Supervisor(val pb : DCOP, val algorithm: Algorithm, val initialContext: Co
           if (trace) println(s"Supervisor -> $anyVariable : ContinueAlgo")
           directory.addressOf(anyVariable) ! ContinueAlgo
         }
+        updatedStatus = updatedStatus.updateObjectiveValue(newObjectiveValue)
         if (trace) println(s"Supervisor -> self : ContinueAlgo")
         self ! ContinueAlgo
       }
@@ -151,7 +152,6 @@ class Supervisor(val pb : DCOP, val algorithm: Algorithm, val initialContext: Co
           directory.addressOf(anyVariable) ! Query
         }
         if (trace) println(s"Supervisor -> self : StopAlgo")
-        updatedStatus = updatedStatus.updateObjectiveValue(newObjectiveValue)
         self ! StopAlgo
         }
         goto(Deciding) using updatedStatus
diff --git a/src/main/scala/org/scadcop/solver/decentralized/supervisor/SupervisorStatus.scala b/src/main/scala/org/scadcop/solver/decentralized/supervisor/SupervisorStatus.scala
index 0e03fef..c375edd 100755
--- a/src/main/scala/org/scadcop/solver/decentralized/supervisor/SupervisorStatus.scala
+++ b/src/main/scala/org/scadcop/solver/decentralized/supervisor/SupervisorStatus.scala
@@ -41,7 +41,7 @@ class SupervisorStatus(val readyVariables: Set[Variable] = Set(),
     * Returns true if the algorithm ends
     * @todo modify it
     */
-  def isTerminated(newObjectiveValue : Double) : Boolean = newObjectiveValue > previousObj
+  def isTerminated(newObjectiveValue : Double) : Boolean = newObjectiveValue <= previousObj
 
   /*Returns the updated supervisor's status when resetting the context*/
   def resetContext(): SupervisorStatus = {
-- 
GitLab