ometah-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[oMetah-devel] ometah/problem CEC05/itsCEC05_SSRPO_Base.cpp CE...


From: NoJhan
Subject: [oMetah-devel] ometah/problem CEC05/itsCEC05_SSRPO_Base.cpp CE...
Date: Fri, 03 Jun 2005 09:37:48 -0400

CVSROOT:        /cvsroot/ometah
Module name:    ometah
Branch:         
Changes by:     NoJhan <address@hidden> 05/06/03 13:37:48

Modified files:
        problem/CEC05  : itsCEC05_SSRPO_Base.cpp itsCEC05_SSRPO_Base.hpp 
Removed files:
        problem        : itsRosenbrock.cpp itsRosenbrock.hpp 

Log message:
        * Rosenbrock problem moved in the CEC05 benchmark

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/ometah/ometah/problem/CEC05/itsCEC05_SSRPO_Base.cpp.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/ometah/ometah/problem/CEC05/itsCEC05_SSRPO_Base.hpp.diff?tr1=1.6&tr2=1.7&r1=text&r2=text

Patches:
Index: ometah/problem/CEC05/itsCEC05_SSRPO_Base.cpp
diff -u ometah/problem/CEC05/itsCEC05_SSRPO_Base.cpp:1.6 
ometah/problem/CEC05/itsCEC05_SSRPO_Base.cpp:1.7
--- ometah/problem/CEC05/itsCEC05_SSRPO_Base.cpp:1.6    Fri Jun  3 13:31:03 2005
+++ ometah/problem/CEC05/itsCEC05_SSRPO_Base.cpp        Fri Jun  3 13:37:47 2005
@@ -1,5 +1,5 @@
 /***************************************************************************
- * $Id: itsCEC05_SSRPO_Base.cpp,v 1.6 2005/06/03 13:31:03 nojhan Exp $
+ * $Id: itsCEC05_SSRPO_Base.cpp,v 1.7 2005/06/03 13:37:47 nojhan Exp $
  * Author: Johann Dréo <address@hidden>
  ****************************************************************************/
 
@@ -387,3 +387,55 @@
 {
     return new itsSphere();
 }
+
+
+
+/*******************************************************************************
+ * Rosenbrock
+ 
******************************************************************************/
+
+itsRosenbrock::itsRosenbrock()
+{
+    // informations 
+    setName("Rosenbrock");
+    setKey("Rosenbrock");
+    setDescription("Rosenbrock is a classical test problem");
+    setCitation("Unknown");
+    
setFormula("$R_{n}(\\overrightarrow{x})=\\sum_{i=1}^{n-1}\\left(100\\cdot\\left(x_{i}^{2}-x_{i+1}\\right)^{2}+\\left(x_{i}-1\\right)^{2}\\right)$");
+    
+    setDimension(1); // one dimension is the default, but one may change it 
after instanciation
+    
+    setBoundsMinimaAll(-5);
+    setBoundsMaximaAll(10);
+    
+    vector<itsPoint> optim;
+    itsPoint pt;
+    vector<double> sol(getDimension(),1);
+    pt.setSolution(sol); // a vector of 1
+    vector<double> val(1,0);
+    pt.setValues(val); // a value of 0
+    optim.push_back(pt);
+    setOptima(optim);
+}
+
+itsPoint itsRosenbrock::objectiveFunction(itsPoint point)
+{
+    double rosen=0.0;
+    int dim=getDimension();
+
+    for (int i=0;i<dim;i++) {
+        double X=point.getSolution()[i];
+        double Y=point.getSolution()[i+1];
+        rosen+=(100*(X*X-Y)*(X*X-Y)+(X-1)*(X-1));
+    }
+    
+    vector<double> val(1,rosen);
+    point.setValues(val);
+    
+    return point;
+}
+
+itsProblem * itsRosenbrockFactory::create()
+{
+    return new itsRosenbrock();
+}
Index: ometah/problem/CEC05/itsCEC05_SSRPO_Base.hpp
diff -u ometah/problem/CEC05/itsCEC05_SSRPO_Base.hpp:1.6 
ometah/problem/CEC05/itsCEC05_SSRPO_Base.hpp:1.7
--- ometah/problem/CEC05/itsCEC05_SSRPO_Base.hpp:1.6    Fri Jun  3 13:31:03 2005
+++ ometah/problem/CEC05/itsCEC05_SSRPO_Base.hpp        Fri Jun  3 13:37:47 2005
@@ -1,5 +1,5 @@
 /***************************************************************************
- * $Id: itsCEC05_SSRPO_Base.hpp,v 1.6 2005/06/03 13:31:03 nojhan Exp $
+ * $Id: itsCEC05_SSRPO_Base.hpp,v 1.7 2005/06/03 13:37:47 nojhan Exp $
  * Author: Johann Dréo <address@hidden>
  ****************************************************************************/
 
@@ -138,4 +138,20 @@
     itsProblem * create();
 };
 
+
+/***** Schwefel *****/
+
+class itsRosenbrock : public itsProblem
+{
+public:
+    itsRosenbrock();
+    itsPoint objectiveFunction(itsPoint point);
+};
+
+class itsRosenbrockFactory : public itsProblemFactory
+{
+public:
+    itsProblem * create();
+};
+
 #endif




reply via email to

[Prev in Thread] Current Thread [Next in Thread]