Addition of the function PSO : Parallel evaluation

git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@650 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
canape 2007-10-08 08:06:19 +00:00
commit 43fbde1096
9 changed files with 161 additions and 23 deletions

View file

@ -57,7 +57,6 @@ void Communicable :: unlock () {
}
void Communicable :: stop () {
sem_wait (& sem_stop);
}

View file

@ -1,5 +1,4 @@
// "eoVector_comm.h"
// (c) OPAC Team, LIFL, August 2005
/*
@ -35,4 +34,36 @@ template <class F, class T> void unpack (eoVector <F, T> & __v) {
unpack (__v [i]);
}
template <class F, class T, class V> void pack (const eoVectorParticle <F, T, V> & __v) {
pack (__v.fitness ()) ;
pack (__v.best());
unsigned len = __v.size ();
pack (len);
for (unsigned i = 0 ; i < len; i ++)
pack (__v [i]);
for (unsigned i = 0 ; i < len; i ++)
pack (__v.bestPositions[i]);
for (unsigned i = 0 ; i < len; i ++)
pack (__v.velocities[i]);
}
template <class F, class T, class V> void unpack (eoVectorParticle <F, T, V> & __v) {
F fit;
unpack(fit);
__v.fitness (fit);
unpack(fit);
__v.best(fit);
unsigned len;
unpack (len);
__v.resize (len);
for (unsigned i = 0 ; i < len; i ++)
unpack (__v [i]);
for (unsigned i = 0 ; i < len; i ++)
unpack (__v.bestPositions[i]);
for (unsigned i = 0 ; i < len; i ++)
unpack (__v.velocities[i]);
}
#endif

View file

@ -54,9 +54,10 @@ template <class U, class V> void pack (const std :: pair <U, V> & __pair) {
pack (__pair.second);
}
//
/* Float */
/* Char */
extern void unpack (char & __c);
/* Float */
@ -101,4 +102,5 @@ template <class U, class V> void unpack (std :: pair <U, V> & __pair) {
unpack (__pair.second);
}
#endif