[Libreoffice-commits] core.git: nlpsolver/src nlpsolver/ThirdParty

Todor Balabanov (via logerrit) logerrit at kemper.freedesktop.org
Mon Jun 3 13:54:24 UTC 2019


 nlpsolver/ThirdParty/EvolutionarySolver/src/net/adaptivebox/deps/behavior/DEGTBehavior.java |    7 +++++--
 nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/DEPSSolverImpl.java                          |    9 ++++++---
 nlpsolver/src/locale/NLPSolverCommon_en_US.properties                                       |    3 ++-
 3 files changed, 13 insertions(+), 6 deletions(-)

New commits:
commit 90ace7be71d41257e29a28fa2e7c0adf8f84050d
Author:     Todor Balabanov <todor.balabanov at gmail.com>
AuthorDate: Wed May 15 19:54:21 2019 +0300
Commit:     Tomaž Vajngerl <quikee at gmail.com>
CommitDate: Mon Jun 3 15:53:30 2019 +0200

    Range for DE scaling factor was implemented.
    
    Change-Id: I5b8d3cd69a6138d7eebf37c299626019b32d639a
    Reviewed-on: https://gerrit.libreoffice.org/72373
    Reviewed-by: Tomaž Vajngerl <quikee at gmail.com>
    Tested-by: Tomaž Vajngerl <quikee at gmail.com>

diff --git a/nlpsolver/ThirdParty/EvolutionarySolver/src/net/adaptivebox/deps/behavior/DEGTBehavior.java b/nlpsolver/ThirdParty/EvolutionarySolver/src/net/adaptivebox/deps/behavior/DEGTBehavior.java
index 645318341108..0e68f856d912 100644
--- a/nlpsolver/ThirdParty/EvolutionarySolver/src/net/adaptivebox/deps/behavior/DEGTBehavior.java
+++ b/nlpsolver/ThirdParty/EvolutionarySolver/src/net/adaptivebox/deps/behavior/DEGTBehavior.java
@@ -41,7 +41,10 @@ public class DEGTBehavior extends AbsGTBehavior implements ILibEngine {
   private static final int DVNum = 2;
 
   //scale constant: (0, 1.2], normally be 0.5
-  public double FACTOR = 0.5;
+  public double MIN_FACTOR = 0.5;
+
+  //scale constant: (0, 1.2], normally be 0.5
+  public double MAX_FACTOR = 0.5;
 
   //crossover constant: [0, 1], normally be 0.1 or 0.9
   public double CR = 0.9;
@@ -70,7 +73,7 @@ public class DEGTBehavior extends AbsGTBehavior implements ILibEngine {
       delta += (i % 2 == 0 ? +1D : -1D) * differenceVectors[i].getLocation()[index];
     }
 
-    trialVector[index] = globalVector[index] + FACTOR * delta;
+    trialVector[index] = globalVector[index] + RandomGenerator.doubleRangeRandom(MIN_FACTOR, MAX_FACTOR) * delta;
   }
 
   @Override
diff --git a/nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/DEPSSolverImpl.java b/nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/DEPSSolverImpl.java
index 716a79b79438..2e5c38d0d179 100644
--- a/nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/DEPSSolverImpl.java
+++ b/nlpsolver/src/com/sun/star/comp/Calc/NLPSolver/DEPSSolverImpl.java
@@ -59,7 +59,8 @@ public final class DEPSSolverImpl extends BaseEvolutionarySolver
         super(context, "DEPS Evolutionary Algorithm");
 
         registerProperty(m_agentSwitchRate);
-        registerProperty(m_factor);
+        registerProperty(m_minFactor);
+        registerProperty(m_maxFactor);
         registerProperty(m_CR);
         registerProperty(m_c1);
         registerProperty(m_c2);
@@ -102,7 +103,8 @@ public final class DEPSSolverImpl extends BaseEvolutionarySolver
 
     private final PropertyInfo<Double> m_agentSwitchRate = new PropertyInfo<Double>("AgentSwitchRate", 0.5, "Agent Switch Rate (DE Probability)");
     // --DE
-    private final PropertyInfo<Double> m_factor = new PropertyInfo<Double>("DEFactor", 0.5, "DE: Scaling Factor (0-1.2)");
+    private final PropertyInfo<Double> m_minFactor = new PropertyInfo<Double>("DEFactorMin", 0.5, "DE: Min Scaling Factor (0-1.2)");
+    private final PropertyInfo<Double> m_maxFactor = new PropertyInfo<Double>("DEFactorMax", 0.5, "DE: Max Scaling Factor (0-1.2)");
     private final PropertyInfo<Double> m_CR = new PropertyInfo<Double>("DECR", 0.9, "DE: Crossover Probability (0-1)");
     // --PS
     private final PropertyInfo<Double> m_c1 = new PropertyInfo<Double>("PSC1", 1.494, "PS: Cognitive Constant");
@@ -126,7 +128,8 @@ public final class DEPSSolverImpl extends BaseEvolutionarySolver
             agents[i].setPbest(m_library.getSelectedPoint(i));
 
             DEGTBehavior deGTBehavior = new DEGTBehavior();
-            deGTBehavior.FACTOR = m_factor.getValue();
+            deGTBehavior.MIN_FACTOR = m_minFactor.getValue();
+            deGTBehavior.MAX_FACTOR = m_maxFactor.getValue();
             deGTBehavior.CR = m_CR.getValue();
 
             PSGTBehavior psGTBehavior = new PSGTBehavior();
diff --git a/nlpsolver/src/locale/NLPSolverCommon_en_US.properties b/nlpsolver/src/locale/NLPSolverCommon_en_US.properties
index 3f8baf0d43d7..84262674ddb9 100644
--- a/nlpsolver/src/locale/NLPSolverCommon_en_US.properties
+++ b/nlpsolver/src/locale/NLPSolverCommon_en_US.properties
@@ -15,7 +15,8 @@ NLPSolverCommon.Properties.EnhancedSolverStatus=Show enhanced solver status
 
 #DEPS
 NLPSolverCommon.Properties.AgentSwitchRate=Agent Switch Rate (DE Probability)
-NLPSolverCommon.Properties.DEFactor=DE: Scaling Factor (0-1.2)
+NLPSolverCommon.Properties.DEFactorMin=DE: Min Scaling Factor (0-1.2)
+NLPSolverCommon.Properties.DEFactorMax=DE: Max Scaling Factor (0-1.2)
 NLPSolverCommon.Properties.DECR=DE: Crossover Probability (0-1)
 NLPSolverCommon.Properties.PSC1=PS: Cognitive Constant
 NLPSolverCommon.Properties.PSC2=PS: Social Constant


More information about the Libreoffice-commits mailing list