diff --git a/trunk/paradiseo-peo/src/peoAsyncIslandMig.h b/trunk/paradiseo-peo/src/peoAsyncIslandMig.h index 2964fb914..f813ae03d 100644 --- a/trunk/paradiseo-peo/src/peoAsyncIslandMig.h +++ b/trunk/paradiseo-peo/src/peoAsyncIslandMig.h @@ -61,7 +61,7 @@ //! @see Cooperative eoUpdater //! @version 2.0 //! @date january 2008 -template< class EOT, class TYPE > class peoAsyncIslandMig : public Cooperative, public eoUpdater +template< class TYPESELECT, class TYPEREPLACE > class peoAsyncIslandMig : public Cooperative, public eoUpdater { public: @@ -73,8 +73,8 @@ template< class EOT, class TYPE > class peoAsyncIslandMig : public Cooperative, //! @param Topology& __topology peoAsyncIslandMig( continuator & __cont, - selector & __select, - replacement & __replace, + selector & __select, + replacement & __replace, Topology& __topology ); @@ -95,27 +95,27 @@ template< class EOT, class TYPE > class peoAsyncIslandMig : public Cooperative, private: //! @param continuator & cont - //! @param selector & select - //! @param replacement & replace + //! @param selector & select + //! @param replacement & replace //! @param Topology& topology - //! @param std :: queue< TYPE > imm - //! @param std :: queue< TYPE > em + //! @param std :: queue< TYPEREPLACE > imm + //! @param std :: queue< TYPESELECT > em //! @param std :: queue< Cooperative* > coop_em continuator & cont; - selector & select; - replacement & replace; + selector & select; + replacement & replace; Topology& topology; - std :: queue< TYPE > imm; - std :: queue< TYPE > em; + std :: queue< TYPEREPLACE > imm; + std :: queue< TYPESELECT > em; std :: queue< Cooperative* > coop_em; }; -template< class EOT , class TYPE> peoAsyncIslandMig< EOT, TYPE > :: peoAsyncIslandMig( +template< class TYPESELECT , class TYPEREPLACE> peoAsyncIslandMig< TYPESELECT, TYPEREPLACE > :: peoAsyncIslandMig( continuator & __cont, - selector & __select, - replacement & __replace, + selector & __select, + replacement & __replace, Topology& __topology ) : select( __select ), replace( __replace ), topology( __topology ), cont(__cont) @@ -125,7 +125,7 @@ template< class EOT , class TYPE> peoAsyncIslandMig< EOT, TYPE > :: peoAsyncIsla } -template< class EOT , class TYPE> void peoAsyncIslandMig< EOT, TYPE > :: pack() +template< class TYPESELECT , class TYPEREPLACE> void peoAsyncIslandMig< TYPESELECT, TYPEREPLACE > :: pack() { lock (); ::pack( coop_em.front()->getKey() ); @@ -136,19 +136,19 @@ template< class EOT , class TYPE> void peoAsyncIslandMig< EOT, TYPE > :: pack() } -template< class EOT , class TYPE> void peoAsyncIslandMig< EOT , TYPE> :: unpack() +template< class TYPESELECT, class TYPEREPLACE> void peoAsyncIslandMig< TYPESELECT , TYPEREPLACE> :: unpack() { lock (); - TYPE mig; + TYPEREPLACE mig; mig.unpack(); imm.push( mig ); unlock(); } -template< class EOT , class TYPE> void peoAsyncIslandMig< EOT, TYPE > :: packSynchronizeReq() +template< class TYPESELECT , class TYPEREPLACE> void peoAsyncIslandMig< TYPESELECT, TYPEREPLACE > :: packSynchronizeReq() {} -template< class EOT , class TYPE> void peoAsyncIslandMig< EOT , TYPE> :: emigrate() +template< class TYPESELECT , class TYPEREPLACE> void peoAsyncIslandMig< TYPESELECT , TYPEREPLACE> :: emigrate() { std :: vector< Cooperative* >in, out; topology.setNeighbors( this, in, out ); @@ -156,7 +156,7 @@ template< class EOT , class TYPE> void peoAsyncIslandMig< EOT , TYPE> :: emigrat for ( unsigned i = 0; i < out.size(); i++ ) { - TYPE mig; + TYPESELECT mig; select(mig); em.push( mig ); coop_em.push( out[i] ); @@ -166,7 +166,7 @@ template< class EOT , class TYPE> void peoAsyncIslandMig< EOT , TYPE> :: emigrat } -template< class EOT , class TYPE> void peoAsyncIslandMig< EOT , TYPE> :: immigrate() +template< class TYPESELECT, class TYPEREPLACE> void peoAsyncIslandMig< TYPESELECT , TYPEREPLACE> :: immigrate() { lock (); @@ -183,7 +183,7 @@ template< class EOT , class TYPE> void peoAsyncIslandMig< EOT , TYPE> :: immigra } -template< class EOT , class TYPE> void peoAsyncIslandMig< EOT, TYPE > :: operator()() +template< class TYPESELECT , class TYPEREPLACE> void peoAsyncIslandMig< TYPESELECT , TYPEREPLACE > :: operator()() { if (cont.check()) diff --git a/trunk/paradiseo-peo/src/peoSyncIslandMig.h b/trunk/paradiseo-peo/src/peoSyncIslandMig.h index 7bcd3e383..fc9dc183b 100644 --- a/trunk/paradiseo-peo/src/peoSyncIslandMig.h +++ b/trunk/paradiseo-peo/src/peoSyncIslandMig.h @@ -68,20 +68,20 @@ //! @see Cooperative eoUpdater //! @version 2.0 //! @date january 2008 -template< class EOT, class TYPE > class peoSyncIslandMig : public Cooperative, public eoUpdater +template< class TYPESELECT, class TYPEREPLACE > class peoSyncIslandMig : public Cooperative, public eoUpdater { public: //! @brief Constructor //! @param unsigned __frequency - //! @param selector & __select - //! @param replacement & __replace + //! @param selector & __select + //! @param replacement & __replace //! @param Topology& __topology peoSyncIslandMig( unsigned __frequency, - selector & __select, - replacement & __replace, + selector & __select, + replacement & __replace, Topology& __topology ); @@ -110,11 +110,11 @@ template< class EOT, class TYPE > class peoSyncIslandMig : public Cooperative, private: //! @param eoSyncContinue cont - //! @param selector & select - //! @param replacement & replace + //! @param selector & select + //! @param replacement & replace //! @param Topology& topology - //! @param std :: queue< TYPE > imm - //! @param std :: queue< TYPE > em + //! @param std :: queue< TYPEREPLACE > imm + //! @param std :: queue< TYPESELECT > em //! @param std :: queue< Cooperative* > coop_em //! @param sem_t sync //! @param bool explicitPassive @@ -122,11 +122,11 @@ template< class EOT, class TYPE > class peoSyncIslandMig : public Cooperative, //! @param std :: vector< Cooperative* > in, out, all //! @param unsigned nbMigrations eoSyncContinue cont; - selector & select; - replacement & replace; + selector & select; + replacement & replace; Topology& topology; - std :: queue< TYPE > imm; - std :: queue< TYPE > em; + std :: queue< TYPEREPLACE > imm; + std :: queue< TYPESELECT > em; std :: queue< Cooperative* > coop_em; sem_t sync; bool explicitPassive; @@ -136,11 +136,11 @@ template< class EOT, class TYPE > class peoSyncIslandMig : public Cooperative, }; -template< class EOT, class TYPE > peoSyncIslandMig< EOT,TYPE > :: peoSyncIslandMig( +template< class TYPESELECT, class TYPEREPLACE > peoSyncIslandMig< TYPESELECT,TYPEREPLACE > :: peoSyncIslandMig( unsigned __frequency, - selector & __select, - replacement & __replace, + selector & __select, + replacement & __replace, Topology& __topology ) : cont( __frequency ), select( __select ), replace( __replace ), topology( __topology ) { @@ -150,7 +150,7 @@ template< class EOT, class TYPE > peoSyncIslandMig< EOT,TYPE > :: peoSyncIslandM } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT, TYPE > :: pack() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT, TYPEREPLACE > :: pack() { ::pack( coop_em.front()->getKey() ); em.front().pack(); @@ -158,27 +158,27 @@ template< class EOT, class TYPE > void peoSyncIslandMig< EOT, TYPE > :: pack() em.pop(); } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT, TYPE > :: unpack() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT, TYPEREPLACE > :: unpack() { - TYPE mig; + TYPEREPLACE mig; mig.unpack(); imm.push( mig ); explicitPassive = true; } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT,TYPE > :: packSynchronizeReq() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT,TYPEREPLACE > :: packSynchronizeReq() { packSynchronRequest( all ); } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: emigrate() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT , TYPEREPLACE > :: emigrate() { for ( unsigned i = 0; i < out.size(); i ++ ) { - TYPE mig; + TYPESELECT mig; select( mig ); em.push( mig ); coop_em.push( out[ i ] ); @@ -187,7 +187,7 @@ template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: emigrat } } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: immigrate() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT , TYPEREPLACE > :: immigrate() { assert( imm.size() ); @@ -200,7 +200,7 @@ template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: immigra printDebugMessage( "peoSyncIslandMig: receiving some immigrants." ); } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: operator()() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT , TYPEREPLACE > :: operator()() { if ( cont.check() ) @@ -222,12 +222,12 @@ template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: operato } } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: notifySending() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT , TYPEREPLACE > :: notifySending() { if ( !explicitPassive ) getOwner()->setPassive(); } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: notifyReceiving() +template< class TYPESELECT, class TYPEREPLACE > void peoSyncIslandMig< TYPESELECT , TYPEREPLACE > :: notifyReceiving() { nbMigrations++; @@ -239,13 +239,13 @@ template< class EOT, class TYPE > void peoSyncIslandMig< EOT , TYPE > :: notifyR } } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT, TYPE > :: notifySendingSyncReq () +template< class TYPESELECT, class TYPE > void peoSyncIslandMig< TYPESELECT, TYPE > :: notifySendingSyncReq () { getOwner()->setPassive(); } -template< class EOT, class TYPE > void peoSyncIslandMig< EOT, TYPE > :: notifySynchronized () +template< class TYPESELECT, class TYPE > void peoSyncIslandMig< TYPESELECT, TYPE > :: notifySynchronized () { standbyMigration = true; diff --git a/trunk/paradiseo-peo/test/t-EAAsyncIsland.cpp b/trunk/paradiseo-peo/test/t-EAAsyncIsland.cpp index 17018ccd7..1e2849622 100644 --- a/trunk/paradiseo-peo/test/t-EAAsyncIsland.cpp +++ b/trunk/paradiseo-peo/test/t-EAAsyncIsland.cpp @@ -35,7 +35,7 @@ int main (int __argc, char *__argv[]) eoReplace > mig_replace (replace,pop); eoPeriodicContinue< Indi > mig_cont( 2 ); eoContinuator cont(mig_cont, pop); - peoAsyncIslandMig > mig(cont,mig_select,mig_replace,topology); + peoAsyncIslandMig, peoPop > mig(cont,mig_select,mig_replace,topology); checkpoint.add(mig); eoEasyEA< Indi > eaAlg( checkpoint, eval, select, transform, replace ); peoWrapper parallelEA( eaAlg, pop); @@ -62,7 +62,7 @@ int main (int __argc, char *__argv[]) eoReplace > mig_replace2 (replace2,pop2); eoPeriodicContinue< Indi > mig_cont2( 2 ); eoContinuator cont2(mig_cont2, pop2); - peoAsyncIslandMig > mig2(cont2,mig_select2,mig_replace2,topology); + peoAsyncIslandMig, peoPop > mig2(cont2,mig_select2,mig_replace2,topology); checkpoint2.add(mig2); eoEasyEA< Indi > eaAlg2( checkpoint2, eval2, select2, transform2, replace2 ); peoWrapper parallelEA2( eaAlg2, pop2); diff --git a/trunk/paradiseo-peo/test/t-EASyncIsland.cpp b/trunk/paradiseo-peo/test/t-EASyncIsland.cpp index 94275355f..514c371f3 100644 --- a/trunk/paradiseo-peo/test/t-EASyncIsland.cpp +++ b/trunk/paradiseo-peo/test/t-EASyncIsland.cpp @@ -33,7 +33,7 @@ int main (int __argc, char *__argv[]) eoRandomSelect mig_select_one; eoSelector > mig_select (mig_select_one,2,pop); eoReplace > mig_replace (replace,pop); - peoSyncIslandMig > mig(2,mig_select,mig_replace,topology); + peoSyncIslandMig, peoPop > mig(2,mig_select,mig_replace,topology); checkpoint.add(mig); eoEasyEA< Indi > eaAlg( checkpoint, eval, select, transform, replace ); peoWrapper parallelEA( eaAlg, pop); @@ -58,7 +58,7 @@ int main (int __argc, char *__argv[]) eoRandomSelect mig_select_one2; eoSelector > mig_select2 (mig_select_one2,2,pop2); eoReplace > mig_replace2 (replace2,pop2); - peoSyncIslandMig > mig2(2,mig_select2,mig_replace2,topology); + peoSyncIslandMig, peoPop > mig2(2,mig_select2,mig_replace2,topology); checkpoint2.add(mig2); eoEasyEA< Indi > eaAlg2( checkpoint2, eval2, select2, transform2, replace2 ); peoWrapper parallelEA2( eaAlg2, pop2); diff --git a/trunk/paradiseo-peo/test/t-PSOGlobalBest.cpp b/trunk/paradiseo-peo/test/t-PSOGlobalBest.cpp index bde9f2fcb..2ff0efa70 100644 --- a/trunk/paradiseo-peo/test/t-PSOGlobalBest.cpp +++ b/trunk/paradiseo-peo/test/t-PSOGlobalBest.cpp @@ -61,9 +61,9 @@ int main (int __argc, char *__argv[]) eoContinuator cont2(mig_cont2,pop2); eoSelector > mig_select2 (mig_selec2,1,pop2); eoReplace > mig_replace2 (mig_replac2,pop2); - peoAsyncIslandMig< Indi, peoPop > mig(cont,mig_select, mig_replace, topologyMig); + peoAsyncIslandMig< peoPop, peoPop > mig(cont,mig_select, mig_replace, topologyMig); checkpoint.add( mig ); - peoAsyncIslandMig< Indi, peoPop > mig2(cont2,mig_select2, mig_replace2, topologyMig); + peoAsyncIslandMig< peoPop, peoPop > mig2(cont2,mig_select2, mig_replace2, topologyMig); checkpoint2.add( mig2 ); eoSyncEasyPSO psa(init,checkpoint,eval, velocity, flight); peoWrapper parallelPSO( psa, pop); diff --git a/trunk/paradiseo-peo/test/t-PSOWorstPosition.cpp b/trunk/paradiseo-peo/test/t-PSOWorstPosition.cpp index 818f8cc86..85f3d0f15 100644 --- a/trunk/paradiseo-peo/test/t-PSOWorstPosition.cpp +++ b/trunk/paradiseo-peo/test/t-PSOWorstPosition.cpp @@ -61,9 +61,9 @@ int main (int __argc, char *__argv[]) eoContinuator cont2(mig_cont2,pop2); eoSelector > mig_select2 (mig_selec2,1,pop2); eoReplace > mig_replace2 (mig_replac2,pop2); - peoAsyncIslandMig< Indi, peoPop > mig(cont,mig_select, mig_replace, topologyMig); + peoAsyncIslandMig< peoPop, peoPop > mig(cont,mig_select, mig_replace, topologyMig); checkpoint.add( mig ); - peoAsyncIslandMig< Indi, peoPop > mig2(cont2,mig_select2, mig_replace2, topologyMig); + peoAsyncIslandMig< peoPop, peoPop > mig2(cont2,mig_select2, mig_replace2, topologyMig); checkpoint2.add( mig2 ); eoSyncEasyPSO psa(init,checkpoint,eval, velocity, flight); peoWrapper parallelPSO( psa, pop); diff --git a/trunk/paradiseo-peo/tutorial/Lesson3/mainEA.cpp b/trunk/paradiseo-peo/tutorial/Lesson3/mainEA.cpp index 87afcf059..b66ff3c79 100644 --- a/trunk/paradiseo-peo/tutorial/Lesson3/mainEA.cpp +++ b/trunk/paradiseo-peo/tutorial/Lesson3/mainEA.cpp @@ -90,7 +90,7 @@ int main (int __argc, char *__argv[]) eoRandomSelect mig_select_one; eoSelector > mig_select (mig_select_one,MIG_SIZE,pop); eoReplace > mig_replace (replace,pop); - peoSyncIslandMig > mig(MIG_FREQ,mig_select,mig_replace,topology); + peoSyncIslandMig, peoPop > mig(MIG_FREQ,mig_select,mig_replace,topology); checkpoint.add(mig); eoEasyEA< Indi > eaAlg( checkpoint, eval, select, transform, replace ); peoWrapper parallelEA( eaAlg, pop); @@ -121,7 +121,7 @@ int main (int __argc, char *__argv[]) eoRandomSelect mig_select_one2; eoSelector > mig_select2 (mig_select_one2,MIG_SIZE,pop2); eoReplace > mig_replace2 (replace2,pop2); - peoSyncIslandMig > mig2(MIG_FREQ,mig_select2,mig_replace2,topology); + peoSyncIslandMig, peoPop > mig2(MIG_FREQ,mig_select2,mig_replace2,topology); checkpoint2.add(mig2); eoEasyEA< Indi > eaAlg2( checkpoint2, eval2, select2, transform2, replace2 ); peoWrapper parallelEA2( eaAlg2, pop2); diff --git a/trunk/paradiseo-peo/tutorial/Lesson3/mainPSO.cpp b/trunk/paradiseo-peo/tutorial/Lesson3/mainPSO.cpp index 9e0e70d23..56dc29a5b 100644 --- a/trunk/paradiseo-peo/tutorial/Lesson3/mainPSO.cpp +++ b/trunk/paradiseo-peo/tutorial/Lesson3/mainPSO.cpp @@ -137,9 +137,9 @@ int main (int __argc, char *__argv[]) // Island model - peoAsyncIslandMig< Indi, peoPop > mig(cont,mig_select, mig_replace, topologyMig); + peoAsyncIslandMig< peoPop, peoPop > mig(cont,mig_select, mig_replace, topologyMig); checkpoint.add( mig ); - peoAsyncIslandMig< Indi, peoPop > mig2(cont2,mig_select2, mig_replace2, topologyMig); + peoAsyncIslandMig< peoPop, peoPop > mig2(cont2,mig_select2, mig_replace2, topologyMig); checkpoint2.add( mig2 );