Merge branch 'master' of ssh://eodev.git.sourceforge.net/gitroot/eodev/eodev

This commit is contained in:
Caner Candan 2011-05-07 22:47:01 +02:00
commit f8202d238a
496 changed files with 8734 additions and 8186 deletions

View file

@ -1,4 +1,3 @@
The Evolving Distribution Objects framework (EDO) is a template-based, The Evolving Distribution Objects framework (EDO) is a template-based,
ANSI-C++ evolutionary computation library which helps you to write your ANSI-C++ evolutionary computation library which helps you to write your
own estimation of distribution algorithms. own estimation of distribution algorithms.

View file

@ -1,5 +1,14 @@
############################################################################
##########
### 1) If you want to set your own variables in install.cmake and avoid the cmd line
###################################################################################### ######################################################################################
### 1) Set the application properties
INCLUDE(install.cmake OPTIONAL)
######################################################################################
######################################################################################
### 2) Project properties
###################################################################################### ######################################################################################
# Checks cmake version compatibility # Checks cmake version compatibility
@ -16,15 +25,12 @@ SET(PROJECT_VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT
###################################################################################### ######################################################################################
### 2) Include useful features ### 3) Include useful features
###################################################################################### ######################################################################################
INCLUDE(FindDoxygen) INCLUDE(FindDoxygen)
INCLUDE(FindPkgConfig) INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(EO eo REQUIRED)
PKG_CHECK_MODULES(MO mo REQUIRED)
FIND_PACKAGE(Boost 1.33.0) FIND_PACKAGE(Boost 1.33.0)
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
@ -34,11 +40,16 @@ INCLUDE_DIRECTORIES(
# /Dev/ometah-0.3/common # /Dev/ometah-0.3/common
) )
LINK_DIRECTORIES(
${EO_LIBRARY_DIRS}
${MO_LIBRARY_DIRS}
)
###################################################################################### ######################################################################################
###################################################################################### ######################################################################################
### 3) Include header files path ### 4) Include header files path
###################################################################################### ######################################################################################
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
@ -49,7 +60,7 @@ INCLUDE_DIRECTORIES(
###################################################################################### ######################################################################################
### 4) Set compiler definitions ### 5) Set compiler definitions
###################################################################################### ######################################################################################
IF(UNIX) IF(UNIX)
@ -63,7 +74,7 @@ ENDIF()
###################################################################################### ######################################################################################
### 5) Prepare some variables for CMAKE usage ### 6) Prepare some variables for CMAKE usage
###################################################################################### ######################################################################################
SET(SAMPLE_SRCS) SET(SAMPLE_SRCS)
@ -72,7 +83,7 @@ SET(SAMPLE_SRCS)
###################################################################################### ######################################################################################
### 6) Now where we go ? ### 7) Now where we go ?
###################################################################################### ######################################################################################
ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(src)
@ -85,7 +96,7 @@ ADD_SUBDIRECTORY(doc)
###################################################################################### ######################################################################################
### 7) Create executable, link libraries and prepare target ### 8) Create executable, link libraries and prepare target
###################################################################################### ######################################################################################
SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib) SET(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}/lib)
@ -99,7 +110,7 @@ INSTALL(TARGETS edo ARCHIVE DESTINATION lib COMPONENT libraries)
###################################################################################### ######################################################################################
### 8) Install pkg-config config file for EO ### 9) Install pkg-config config file for EO
###################################################################################### ######################################################################################
INSTALL(FILES edo.pc DESTINATION lib/pkgconfig COMPONENT headers) INSTALL(FILES edo.pc DESTINATION lib/pkgconfig COMPONENT headers)
@ -108,7 +119,7 @@ INSTALL(FILES edo.pc DESTINATION lib/pkgconfig COMPONENT headers)
###################################################################################### ######################################################################################
### 9) Include packaging ### 10) Include packaging
###################################################################################### ######################################################################################
INCLUDE(Packaging.cmake) INCLUDE(Packaging.cmake)

View file

@ -10,6 +10,6 @@ FOREACH(file ${RESOURCES})
EXECUTE_PROCESS( EXECUTE_PROCESS(
COMMAND ${CMAKE_COMMAND} -E copy_if_different COMMAND ${CMAKE_COMMAND} -E copy_if_different
${CMAKE_CURRENT_SOURCE_DIR}/${file} ${CMAKE_CURRENT_SOURCE_DIR}/${file}
${DO_BINARY_DIR}/${file} ${EDO_BINARY_DIR}/${file}
) )
ENDFOREACH(file) ENDFOREACH(file)

20
edo/install.cmake-dist Normal file
View file

@ -0,0 +1,20 @@
# Variables to set
# directory we need to build project
SET(EO_DIR "<<PATH_TO_EO>>" CACHE PATH "EO directory" FORCE)
SET(MO_DIR "<<PATH_TO_MO>>" CACHE PATH "MO directory" FORCE)
# automagically set parameters, do not edit
SET(EO_INCLUDE_DIRS "${EO_DIR}/src" CACHE PATH "EO include directory" FORCE)
SET(EO_LIBRARY_DIRS "${EO_DIR}/release/lib" CACHE PATH "EO library directory" FORCE)
SET(EO_LIBRARIES "eoutils eo es ga cma gcov")
SET(MO_INCLUDE_DIRS "${MO_DIR}/src" CACHE PATH "MO include directory" FORCE)
SET(MO_LIBRARY_DIRS "${MO_DIR}/release/lib" CACHE PATH "MO library directory" FORCE)
SET(MO_LIBRARIES "mo")
# ... or rather use pkg-config (dont forget to comment the code above)
#PKG_CHECK_MODULES(EO eo REQUIRED)
#PKG_CHECK_MODULES(MO mo REQUIRED)

View file

@ -25,4 +25,3 @@ Authors:
*/ */
#include "edo" #include "edo"

View file

@ -60,4 +60,3 @@ private:
}; };
#endif // !_edoBounderRng_h #endif // !_edoBounderRng_h

View file

@ -73,7 +73,7 @@ public:
//------------------------------------------------------------- //-------------------------------------------------------------
_varcovar.resize(s_size, s_size); _varcovar.resize(s_size);
//------------------------------------------------------------- //-------------------------------------------------------------

View file

@ -38,4 +38,3 @@ public:
}; };
#endif // !_edoModifier_h #endif // !_edoModifier_h

View file

@ -42,4 +42,3 @@ public:
}; };
#endif // !_edoModifierMass_h #endif // !_edoModifierMass_h

View file

@ -44,4 +44,3 @@ public:
}; };
#endif // !_edoNormalMonoCenter_h #endif // !_edoNormalMonoCenter_h

View file

@ -53,7 +53,7 @@ public:
assert( Vl == Vc ); assert( Vl == Vc );
_L.resize(Vl, Vc); _L.resize(Vl);
unsigned int i,j,k; unsigned int i,j,k;

View file

@ -41,7 +41,7 @@ Authors:
#include <edo> #include <edo>
#include <boost/numeric/ublas/vector.hpp> #include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/symmetric_matrix.hpp> #include <boost/numeric/ublas/symmetric.hpp>
#include "Rosenbrock.h" #include "Rosenbrock.h"
#include "Sphere.h" #include "Sphere.h"

View file

@ -44,6 +44,12 @@ ENABLE_LANGUAGE(C)
### 2) Include required modules / configuration files ### 2) Include required modules / configuration files
##################################################################################### #####################################################################################
FIND_PACKAGE(OpenMP REQUIRED)
IF(OPENMP_FOUND)
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
ENDIF()
INCLUDE(CMakeBackwardCompatibilityCXX) INCLUDE(CMakeBackwardCompatibilityCXX)
INCLUDE(FindDoxygen) INCLUDE(FindDoxygen)
@ -103,7 +109,7 @@ ENDIF (ENABLE_CMAKE_TESTING)
### 5) Where must cmake go now ? ### 5) Where must cmake go now ?
###################################################################################### ######################################################################################
ADD_SUBDIRECTORY(app) #ADD_SUBDIRECTORY(app)
ADD_SUBDIRECTORY(doc) ADD_SUBDIRECTORY(doc)
ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(src)
ADD_SUBDIRECTORY(test) ADD_SUBDIRECTORY(test)

View file

@ -1,4 +1,3 @@
# NOTE: only add something here if it is really needed by EO # NOTE: only add something here if it is really needed by EO
include(CheckIncludeFile) include(CheckIncludeFile)
@ -28,6 +27,3 @@ check_include_files(stdint.h "stdint.h" HAVE_STDINT_H)
# check is to be added to get the proper set of headers. Example : # check is to be added to get the proper set of headers. Example :
#check_symbol_exists(asymbol "symbole.h" HAVE_SYMBOLE) #check_symbol_exists(asymbol "symbole.h" HAVE_SYMBOLE)

View file

@ -233,4 +233,3 @@ operates.
`configure' also accepts some other, not widely useful, options. Run `configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details. `configure --help' for more details.

View file

@ -500,5 +500,3 @@ necessary. Here is a sample; alter the names:
Ty Coon, President of Vice Ty Coon, President of Vice
That's all there is to it! That's all there is to it!

View file

@ -39,4 +39,3 @@
* release 0.9.3z.1 (1. Oct. 2005) * release 0.9.3z.1 (1. Oct. 2005)
- Support gcc-3.4 and gcc.4.x. - Support gcc-3.4 and gcc.4.x.
- Provide full automake/autoconf/configure support. - Provide full automake/autoconf/configure support.

View file

@ -1,4 +1,3 @@
EO README FILE EO README FILE
======================================================================= =======================================================================

View file

@ -29,4 +29,3 @@ IF(NOT WIN32 OR CYGWIN)
ENDIF(NOT WIN32 OR CYGWIN) ENDIF(NOT WIN32 OR CYGWIN)
###################################################################################### ######################################################################################

View file

@ -211,4 +211,3 @@ template<class T> T euclidean_distance(const std::vector<T>& v1,
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#endif #endif

View file

@ -36,4 +36,3 @@ SET_TARGET_PROPERTIES(gpsymreg PROPERTIES VERSION "${GPSYMREG_VERSION}")
TARGET_LINK_LIBRARIES(gpsymreg eo eoutils) TARGET_LINK_LIBRARIES(gpsymreg eo eoutils)
###################################################################################### ######################################################################################

View file

@ -225,4 +225,3 @@ class RegFitness: public eoEvalFunc< eoParseTree<FitnessType, Node> >
}; };
#endif #endif

View file

@ -335,10 +335,3 @@ int main(int argc, char *argv[])
} }

View file

@ -36,4 +36,3 @@ SET_TARGET_PROPERTIES(mastermind PROPERTIES VERSION "${MASTERMIND_VERSION}")
TARGET_LINK_LIBRARIES(mastermind eo eoutils) TARGET_LINK_LIBRARIES(mastermind eo eoutils)
###################################################################################### ######################################################################################

2
eo/config.guess vendored
View file

@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
# 2000, 2001, 2002, 2003 Free Software Foundation, Inc. # 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
timestamp='2004-03-03' timestamp='2011-05-05'
# This file is free software; you can redistribute it and/or modify it # This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by # under the terms of the GNU General Public License as published by

View file

@ -71,5 +71,3 @@
/* Define to `unsigned int' if <sys/types.h> does not define. */ /* Define to `unsigned int' if <sys/types.h> does not define. */
#cmakedefine size_t #cmakedefine size_t

View file

@ -57,14 +57,3 @@
#include <boost/config/suffix.hpp> #include <boost/config/suffix.hpp>
#endif // BOOST_CONFIG_HPP #endif // BOOST_CONFIG_HPP

View file

@ -19,5 +19,3 @@
#ifdef BOOST_HAS_ABI_HEADERS #ifdef BOOST_HAS_ABI_HEADERS
# include BOOST_ABI_SUFFIX # include BOOST_ABI_SUFFIX
#endif #endif

View file

@ -342,13 +342,3 @@ BOOST_LIB_VERSION: The Boost version, in the form x_y, for Boost version x.y.
#if defined(BOOST_AUTO_LINK_NOMANGLE) #if defined(BOOST_AUTO_LINK_NOMANGLE)
# undef BOOST_AUTO_LINK_NOMANGLE # undef BOOST_AUTO_LINK_NOMANGLE
#endif #endif

View file

@ -1,4 +1,3 @@
// (C) Copyright John maddock 1999. // (C) Copyright John maddock 1999.
// (C) David Abrahams 2002. Distributed under the Boost // (C) David Abrahams 2002. Distributed under the Boost
// Software License, Version 1.0. (See accompanying file // Software License, Version 1.0. (See accompanying file

View file

@ -106,4 +106,3 @@ class eoAged: public Object
}; };
#endif EOAGE_H #endif EOAGE_H

View file

@ -33,7 +33,7 @@ using namespace std;
// eoDrawable // eoDrawable
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
/** eoDrawable is a template class that adds a drawing interface to an object.\\ /** eoDrawable is a template class that adds a drawing interface to an object.
Requisites for template instantiation are that the object must admit a default ctor Requisites for template instantiation are that the object must admit a default ctor
and a copy ctor. The Object must be an eoObject, thus, it must have its methods: className, and a copy ctor. The Object must be an eoObject, thus, it must have its methods: className,
eoDrawables can be drawn on any two-dimensional surface; it can be added to any eoDrawables can be drawn on any two-dimensional surface; it can be added to any
@ -61,4 +61,4 @@ class eoDrawable
}; };
#endif EODRAWABLE_H #endif //! EODRAWABLE_H

View file

@ -11,13 +11,14 @@ INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
SET(EO_LIB_OUTPUT_PATH ${EO_BINARY_DIR}/lib) SET(EO_LIB_OUTPUT_PATH ${EO_BINARY_DIR}/lib)
SET(LIBRARY_OUTPUT_PATH ${EO_LIB_OUTPUT_PATH}) SET(LIBRARY_OUTPUT_PATH ${EO_LIB_OUTPUT_PATH})
SET (EO_SOURCES eoFunctorStore.cpp SET(EO_SOURCES
eoFunctorStore.cpp
eoPersistent.cpp eoPersistent.cpp
eoPrintable.cpp eoPrintable.cpp
eoCtrlCContinue.cpp eoCtrlCContinue.cpp
eoScalarFitnessAssembled.cpp eoScalarFitnessAssembled.cpp
eoSIGContinue.cpp) eoSIGContinue.cpp
)
ADD_LIBRARY(eo STATIC ${EO_SOURCES}) ADD_LIBRARY(eo STATIC ${EO_SOURCES})
INSTALL(TARGETS eo ARCHIVE DESTINATION lib COMPONENT libraries) INSTALL(TARGETS eo ARCHIVE DESTINATION lib COMPONENT libraries)
@ -42,6 +43,6 @@ ADD_SUBDIRECTORY(ga)
ADD_SUBDIRECTORY(gp) ADD_SUBDIRECTORY(gp)
ADD_SUBDIRECTORY(other) ADD_SUBDIRECTORY(other)
ADD_SUBDIRECTORY(utils) ADD_SUBDIRECTORY(utils)
ADD_SUBDIRECTORY(pyeo)
###################################################################################### ######################################################################################

View file

@ -171,4 +171,3 @@ private:
#endif #endif
/** @} */ /** @} */

View file

@ -26,8 +26,12 @@
#ifndef _apply_h #ifndef _apply_h
#define _apply_h #define _apply_h
#include <utils/eoParallel.h>
#include <utils/eoParser.h>
#include <utils/eoLogger.h>
#include <eoFunctor.h> #include <eoFunctor.h>
#include <vector> #include <vector>
#include <omp.h>
/** /**
Applies a unary function to a std::vector of things. Applies a unary function to a std::vector of things.
@ -37,7 +41,76 @@
template <class EOT> template <class EOT>
void apply(eoUF<EOT&, void>& _proc, std::vector<EOT>& _pop) void apply(eoUF<EOT&, void>& _proc, std::vector<EOT>& _pop)
{ {
for (unsigned i = 0; i < _pop.size(); ++i) size_t size = _pop.size();
#ifdef _OPENMP
double t1 = 0;
if ( eo::parallel.enableResults() )
{
t1 = omp_get_wtime();
}
if (!eo::parallel.isDynamic())
{
#pragma omp parallel for if(eo::parallel.isEnabled()) //default(none) shared(_proc, _pop, size)
for (size_t i = 0; i < size; ++i) { _proc(_pop[i]); }
}
else
{
#pragma omp parallel for schedule(dynamic) if(eo::parallel.isEnabled())
//doesnot work with gcc 4.1.2
//default(none) shared(_proc, _pop, size)
for (size_t i = 0; i < size; ++i) { _proc(_pop[i]); }
}
if ( eo::parallel.enableResults() )
{
double t2 = omp_get_wtime();
eoLogger log;
log << eo::file(eo::parallel.prefix()) << t2 - t1 << ' ';
}
#else // _OPENMP
for (size_t i = 0; i < size; ++i) { _proc(_pop[i]); }
#endif // !_OPENMP
}
/**
This is a variant of apply<EOT> which is called in parallel
thanks to OpenMP.
@ingroup Utilities
*/
template <class EOT>
void omp_apply(eoUF<EOT&, void>& _proc, std::vector<EOT>& _pop)
{
size_t size = _pop.size();
#pragma omp parallel for if(eo::parallel.isEnabled())
//doesnot work with gcc 4.1.2
//default(none) shared(_proc, _pop, size)
for (size_t i = 0; i < size; ++i)
{
_proc(_pop[i]);
}
}
/**
And now we are using the dynamic scheduling.
@ingroup Utilities
*/
template <class EOT>
void omp_dynamic_apply(eoUF<EOT&, void>& _proc, std::vector<EOT>& _pop)
{
size_t size = _pop.size();
#pragma omp parallel for if(eo::parallel.isEnabled()) schedule(dynamic)
//doesnot work with gcc 4.1.2
//default(none) shared(_proc, _pop, size)
for (size_t i = 0; i < size; ++i)
{ {
_proc(_pop[i]); _proc(_pop[i]);
} }

View file

@ -570,4 +570,3 @@ eoCheckPoint<EOT>& do_make_checkpoint(eoParser& _parser, eoState& _state, eoValu
#endif #endif

View file

@ -201,7 +201,7 @@
#include <utils/eoParserLogger.h> #include <utils/eoParserLogger.h>
//----------------------------------------------------------------------------- #include <utils/eoParallel.h>
#endif #endif

View file

@ -80,4 +80,3 @@ virtual bool operator()(EOT& , EOT& ) {return false;}
#endif #endif
/** @} */ /** @} */

View file

@ -90,4 +90,3 @@ private:
}; };
#endif #endif

View file

@ -90,4 +90,3 @@ std::vector<double> rates;
}; };
#endif #endif

View file

@ -207,4 +207,3 @@ protected:
}; };
#endif /*EOCONSTRICTEDVARIABLEWEIGHTVELOCITY_H*/ #endif /*EOCONSTRICTEDVARIABLEWEIGHTVELOCITY_H*/

View file

@ -197,4 +197,3 @@ protected:
#endif /*EOCONSTRICTEDVELOCITY_H */ #endif /*EOCONSTRICTEDVELOCITY_H */

View file

@ -68,4 +68,3 @@ public:
}; };
#endif #endif

View file

@ -84,4 +84,3 @@ public:
#endif #endif
/** @} */ /** @} */

View file

@ -71,4 +71,3 @@ template <class EOT> class eoDetTournamentSelect: public eoSelectOne<EOT>
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#endif #endif

View file

@ -314,4 +314,3 @@ protected:
/** @} */ /** @} */
#endif // _eoDualFitness_h_ #endif // _eoDualFitness_h_

View file

@ -44,4 +44,3 @@ template<class EOT> class eoEDA: public eoUF<eoDistribution<EOT>&, void>
}; };
#endif #endif

View file

@ -81,6 +81,25 @@ template<class EOT> class eoEasyEA: public eoAlgo<EOT>
replace(_replace) replace(_replace)
{} {}
/** Ctor taking a breed and merge, an overload of ctor to define an offspring size */
eoEasyEA(
eoContinue<EOT>& _continuator,
eoEvalFunc<EOT>& _eval,
eoBreed<EOT>& _breed,
eoReplacement<EOT>& _replace,
unsigned _offspringSize
) : continuator(_continuator),
eval (_eval),
loopEval(_eval),
popEval(loopEval),
selectTransform(dummySelect, dummyTransform),
breed(_breed),
mergeReduce(dummyMerge, dummyReduce),
replace(_replace)
{
offspring.reserve(_offspringSize); // This line avoids an incremental resize of offsprings.
}
/* /*
eoEasyEA(eoContinue <EOT> & _continuator, eoEasyEA(eoContinue <EOT> & _continuator,
eoPopEvalFunc <EOT> & _pop_eval, eoPopEvalFunc <EOT> & _pop_eval,
@ -191,7 +210,9 @@ template<class EOT> class eoEasyEA: public eoAlgo<EOT>
/// Apply a few generation of evolution to the population. /// Apply a few generation of evolution to the population.
virtual void operator()(eoPop<EOT>& _pop) virtual void operator()(eoPop<EOT>& _pop)
{ {
eoPop<EOT> offspring, empty_pop; _pop.reserve(offspring.capacity());
eoPop<EOT> empty_pop;
popEval(empty_pop, _pop); // A first eval of pop. popEval(empty_pop, _pop); // A first eval of pop.
@ -270,6 +291,8 @@ template<class EOT> class eoEasyEA: public eoAlgo<EOT>
eoMergeReduce<EOT> mergeReduce; eoMergeReduce<EOT> mergeReduce;
eoReplacement<EOT>& replace; eoReplacement<EOT>& replace;
eoPop<EOT> offspring;
// Friend classes // Friend classes
friend class eoIslandsEasyEA <EOT> ; friend class eoIslandsEasyEA <EOT> ;
friend class eoDistEvalEasyEA <EOT> ; friend class eoDistEvalEasyEA <EOT> ;
@ -280,4 +303,3 @@ Example of a test program building an EA algorithm.
*/ */
#endif #endif

View file

@ -84,4 +84,3 @@ private :
}; };
#endif // __eoEvalCounterThrowException_h__ #endif // __eoEvalCounterThrowException_h__

View file

@ -65,4 +65,3 @@ struct eoEvalFuncPtr: public eoEvalFunc<EOT> {
}; };
#endif #endif

View file

@ -211,4 +211,3 @@ protected:
* Example of a test program using this class: * Example of a test program using this class:
*/ */
#endif /*eoExtendedVelocity_H */ #endif /*eoExtendedVelocity_H */

View file

@ -53,4 +53,3 @@ private :
}; };
#endif #endif

View file

@ -189,4 +189,3 @@ protected:
#endif /*EOFIXEDINERTIAWEIGHTEDVELOCITY_H */ #endif /*EOFIXEDINERTIAWEIGHTEDVELOCITY_H */

View file

@ -112,4 +112,3 @@ private:
}; };
#endif #endif

View file

@ -69,14 +69,14 @@ class eoGenOp : public eoOp<EOT>, public eoUF<eoPopulator<EOT> &, void>
virtual unsigned max_production(void) = 0; virtual unsigned max_production(void) = 0;
virtual std::string className() const = 0; virtual std::string className() const = 0;
void operator()(eoPopulator<EOT>& _pop) void operator()(eoPopulator<EOT>& _pop)
{ {
_pop.reserve( max_production() ); _pop.reserve( max_production() );
apply(_pop); apply(_pop);
} }
//protected :
protected :
/** the function that will do the work /** the function that will do the work
*/ */
virtual void apply(eoPopulator<EOT>& _pop) = 0; virtual void apply(eoPopulator<EOT>& _pop) = 0;

View file

@ -105,4 +105,3 @@ class eoGeneralBreeder: public eoBreed<EOT>
}; };
#endif #endif

View file

@ -145,4 +145,3 @@ class eoDummy : public eoUF<POT&, void>
#endif #endif
/** @} */ /** @} */

View file

@ -193,4 +193,3 @@ protected:
#endif /*EOINTEGERVELOCITY_H */ #endif /*EOINTEGERVELOCITY_H */

View file

@ -215,11 +215,3 @@ protected:
}; };
#endif /*EOLINEARTOPOLOGY_H_ */ #endif /*EOLINEARTOPOLOGY_H_ */

View file

@ -55,14 +55,3 @@ public:
#endif /* EONEIGHBORHOOD_H_ */ #endif /* EONEIGHBORHOOD_H_ */

View file

@ -73,4 +73,3 @@ class eoObject
}; };
#endif #endif

View file

@ -119,4 +119,3 @@ class eoOneToOneBreeder: public eoBreed<EOT>
}; };
#endif #endif

View file

@ -100,6 +100,8 @@ public:
void apply(eoPopulator<EOT>& _pop) { void apply(eoPopulator<EOT>& _pop) {
_pop.reserve( this->max_production() );
position_type pos = _pop.tellp(); position_type pos = _pop.tellp();
for (size_t i = 0; i < rates.size(); ++i) { for (size_t i = 0; i < rates.size(); ++i) {
_pop.seekp(pos); _pop.seekp(pos);
@ -108,7 +110,11 @@ public:
// try // try
// { // {
// apply it to all the guys in the todo std::list // apply it to all the guys in the todo std::list
(*ops[i])(_pop);
//(*ops[i])(_pop);
ops[i]->apply(_pop);
// } // }
// check for out of individuals and do nothing with that... // check for out of individuals and do nothing with that...
// catch(eoPopulator<EOT>::OutOfIndividuals&) // catch(eoPopulator<EOT>::OutOfIndividuals&)
@ -160,4 +166,3 @@ public:
#endif #endif

View file

@ -80,4 +80,3 @@ public:
#endif /*_EOPARTICLEBESTINIT_H */ #endif /*_EOPARTICLEBESTINIT_H */
/** @} */ /** @} */

View file

@ -153,4 +153,3 @@ template <class POT> class eoParticleInitializer : public eoInitializerBase <POT
#endif /*_eoParticleFullInitializer_H*/ #endif /*_eoParticleFullInitializer_H*/
/** @} */ /** @} */

View file

@ -53,4 +53,3 @@ private:
}; };
#endif #endif

View file

@ -337,4 +337,3 @@ public:
}; };
#endif #endif

View file

@ -105,4 +105,3 @@ private:
}; };
#endif #endif

View file

@ -209,4 +209,3 @@ private:
}; };
#endif #endif

View file

@ -19,4 +19,3 @@ std::ostream & operator << ( std::ostream& _os, const eoPrintable& _o ) {
} }
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------

View file

@ -60,4 +60,3 @@ class eoPrintable
std::ostream & operator << ( std::ostream& _os, const eoPrintable& _o ); std::ostream & operator << ( std::ostream& _os, const eoPrintable& _o );
#endif #endif

View file

@ -91,4 +91,3 @@ private:
}; };
#endif #endif

View file

@ -270,7 +270,7 @@ public:
{ {
if (t_rate <= 0.5) if (t_rate <= 0.5)
{ {
eo::log << eo:warnings << "Warning, Rate for eoStochTournamentTruncateSplit adjusted to 0.51" << std::endl; eo::log << eo::warnings << "Warning, Rate for eoStochTournamentTruncateSplit adjusted to 0.51" << std::endl;
t_rate = 0.51; t_rate = 0.51;
} }
if (t_rate > 1) if (t_rate > 1)

View file

@ -121,4 +121,3 @@ class eoSTLBF : public std::binary_function<A1, A2, R>
/** @} */ /** @} */
#endif #endif

View file

@ -36,6 +36,3 @@
// need to allocate the static variables of class eoScalarFitnessAssembledTraits // need to allocate the static variables of class eoScalarFitnessAssembledTraits
std::vector<std::string> eoScalarFitnessAssembledTraits::TermDescriptions; std::vector<std::string> eoScalarFitnessAssembledTraits::TermDescriptions;

View file

@ -282,4 +282,3 @@ std::istream& operator>>(std::istream& is, eoScalarFitnessAssembled<F, Cmp, Fitn
/** @} */ /** @} */
#endif #endif

View file

@ -74,4 +74,3 @@ public:
*/ */
#endif #endif

View file

@ -229,4 +229,3 @@ private:
}; };
#endif #endif

View file

@ -89,4 +89,3 @@ template<class EOT> class eoShiftMutation: public eoMonOp<EOT>
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#endif #endif

View file

@ -104,4 +104,3 @@ template<class EOT> class eoSimpleEDA: public eoEDA<EOT>
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#endif #endif

View file

@ -123,4 +123,3 @@ protected:
#endif /* EOSOCIALNEIGHBORHOOD_H_ */ #endif /* EOSOCIALNEIGHBORHOOD_H_ */

View file

@ -193,4 +193,3 @@ protected:
#endif /*EOSTANDARDVELOCITY_H */ #endif /*EOSTANDARDVELOCITY_H */

View file

@ -139,11 +139,3 @@ protected:
}; };
#endif /*EOSTARTOPOLOGY_H_ */ #endif /*EOSTARTOPOLOGY_H_ */

View file

@ -117,4 +117,3 @@ private:
}; };
#endif #endif

View file

@ -65,4 +65,3 @@ private:
}; };
#endif #endif

View file

@ -195,4 +195,3 @@ private :
/** @} */ /** @} */
#endif #endif

View file

@ -80,4 +80,3 @@ template<class Chrom> class eoSwapMutation: public eoMonOp<Chrom>
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
#endif #endif

View file

@ -84,11 +84,3 @@ public:
#endif /*EOTOPOLOGY_H_ */ #endif /*EOTOPOLOGY_H_ */

View file

@ -196,4 +196,3 @@ protected:
}; };
#endif /*EOVARIABLEINERTIAWEIGHTEDVELOCITY_H*/ #endif /*EOVARIABLEINERTIAWEIGHTEDVELOCITY_H*/

View file

@ -350,4 +350,3 @@ private:
/** @} */ /** @} */
#endif #endif

View file

@ -158,4 +158,3 @@ private:
/** @} */ /** @} */
#endif #endif

View file

@ -78,4 +78,3 @@ public:
}; };
#endif /*EOVELOCITY_H_H */ #endif /*EOVELOCITY_H_H */

View file

@ -144,4 +144,3 @@ private:
#endif /*EOVELOCITYINIT_H */ #endif /*EOVELOCITYINIT_H */
/** @} */ /** @} */

View file

@ -1,4 +1,3 @@
/* /*
* C++ification of Nikolaus Hansen's original C-source code for the * C++ification of Nikolaus Hansen's original C-source code for the
* CMA-ES * CMA-ES

View file

@ -49,4 +49,3 @@ class CMAParams {
} // namespace eo } // namespace eo
#endif #endif

View file

@ -362,4 +362,3 @@ bool CMAState::updateEigenSystem(unsigned max_tries, unsigned max_iters) { retur
} // namespace eo } // namespace eo

View file

@ -1,4 +1,3 @@
/* /*
* C++ification of Nikolaus Hansen's original C-source code for the * C++ification of Nikolaus Hansen's original C-source code for the
* CMA-ES. * CMA-ES.

View file

@ -1,4 +1,3 @@
/* /*
* C++ification of Nikolaus Hansen's original C-source code for the * C++ification of Nikolaus Hansen's original C-source code for the
* CMA-ES. These are the eigenvector calculations * CMA-ES. These are the eigenvector calculations

View file

@ -279,4 +279,3 @@ private:
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
//@} //@}
#endif #endif

View file

@ -68,4 +68,3 @@ class eoRealInitBounded : public eoInit<EOT>
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
//@} //@}
#endif #endif

Some files were not shown because too many files have changed in this diff Show more