From 4c21c725100769768eab678374475ea0a5ed3600 Mon Sep 17 00:00:00 2001 From: liefooga Date: Mon, 15 Jan 2007 13:22:55 +0000 Subject: [PATCH] AUTHORS modification git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@152 331e1502-861f-0410-8da2-ba01fb791d7f --- trunk/paradiseo-moeo/AUTHORS | 1 + trunk/paradiseo-moeo/docs/html/annotated.html | 36 +- trunk/paradiseo-moeo/docs/html/classes.html | 32 +- .../docs/html/classmoeoArchive-members.html | 76 ++-- .../docs/html/classmoeoArchive.html | 208 +++++------ ...eoArchiveFitnessSavingUpdater-members.html | 18 +- .../classmoeoArchiveFitnessSavingUpdater.html | 74 ++-- .../html/classmoeoArchiveUpdater-members.html | 18 +- .../docs/html/classmoeoArchiveUpdater.html | 70 ++-- .../paradiseo-moeo/docs/html/classmoeoBM.html | 22 +- .../paradiseo-moeo/docs/html/classmoeoBM.png | Bin 1012 -> 3649 bytes ...moeoBinaryMetricSavingUpdater-members.html | 18 +- .../classmoeoBinaryMetricSavingUpdater.html | 80 ++-- .../html/classmoeoCombinedMOLS-members.html | 9 +- .../docs/html/classmoeoCombinedMOLS.html | 168 ++++----- .../classmoeoContributionMetric-members.html | 10 +- .../html/classmoeoContributionMetric.html | 234 +++++------- .../docs/html/classmoeoContributionMetric.png | Bin 3220 -> 1734 bytes ...eoDisctinctElitistReplacement-members.html | 9 +- .../classmoeoDisctinctElitistReplacement.html | 176 ++++----- .../classmoeoElitistReplacement-members.html | 9 +- .../html/classmoeoElitistReplacement.html | 122 +++--- .../html/classmoeoEntropyMetric-members.html | 10 +- .../docs/html/classmoeoEntropyMetric.html | 72 ++-- .../docs/html/classmoeoEntropyMetric.png | Bin 3206 -> 1724 bytes .../html/classmoeoHybridMOLS-members.html | 18 +- .../docs/html/classmoeoHybridMOLS.html | 88 ++--- .../docs/html/classmoeoMOLS.html | 12 +- .../docs/html/classmoeoMetric.html | 18 +- .../docs/html/classmoeoMetric.png | Bin 5192 -> 5840 bytes .../docs/html/classmoeoReplacement.html | 14 +- ...ssmoeoSelectOneFromPopAndArch-members.html | 13 +- .../classmoeoSelectOneFromPopAndArch.html | 158 ++++---- .../docs/html/classmoeoSolutionUM.html | 14 +- .../html/classmoeoSolutionVsSolutionBM.html | 20 +- .../html/classmoeoSolutionVsSolutionBM.png | Bin 1925 -> 1664 bytes .../paradiseo-moeo/docs/html/classmoeoUM.html | 14 +- .../paradiseo-moeo/docs/html/classmoeoUM.png | Bin 830 -> 830 bytes .../docs/html/classmoeoVectorUM.html | 14 +- .../html/classmoeoVectorVsSolutionBM.html | 20 +- .../docs/html/classmoeoVectorVsSolutionBM.png | Bin 1958 -> 1770 bytes .../docs/html/classmoeoVectorVsVectorBM.html | 20 +- .../docs/html/classmoeoVectorVsVectorBM.png | Bin 2164 -> 1711 bytes trunk/paradiseo-moeo/docs/html/doxygen.css | 80 +++- trunk/paradiseo-moeo/docs/html/files.html | 15 +- trunk/paradiseo-moeo/docs/html/functions.html | 323 +++++++++++----- .../docs/html/functions_func.html | 182 ++++++--- .../docs/html/functions_type.html | 20 +- .../docs/html/functions_vars.html | 135 ++++--- trunk/paradiseo-moeo/docs/html/hierarchy.html | 180 +++++---- .../docs/html/index_8h-source.html | 6 +- trunk/paradiseo-moeo/docs/html/installdox | 2 +- trunk/paradiseo-moeo/docs/html/main.html | 8 +- ...ArchiveFitnessSavingUpdater_8h-source.html | 8 +- .../html/moeoArchiveUpdater_8h-source.html | 8 +- .../docs/html/moeoArchive_8h-source.html | 20 +- ...eoBinaryMetricSavingUpdater_8h-source.html | 20 +- .../docs/html/moeoCombinedMOLS_8h-source.html | 6 +- .../moeoContributionMetric_8h-source.html | 6 +- .../html/moeoEntropyMetric_8h-source.html | 36 +- .../docs/html/moeoHybridMOLS_8h-source.html | 8 +- .../docs/html/moeoMOLS_8h-source.html | 8 +- .../docs/html/moeoMetric_8h-source.html | 12 +- .../docs/html/moeoReplacement_8h-source.html | 16 +- ...moeoSelectOneFromPopAndArch_8h-source.html | 10 +- .../docs/html/moeo_8h-source.html | 6 +- trunk/paradiseo-moeo/docs/html/pages.html | 2 +- trunk/paradiseo-moeo/docs/html/search.idx | Bin 352010 -> 353919 bytes trunk/paradiseo-moeo/docs/html/search.php | 6 +- trunk/paradiseo-moeo/docs/html/tree.html | 346 +++++++++--------- trunk/paradiseo-moeo/docs/html/webpages.html | 2 +- trunk/paradiseo-moeo/docs/latex/annotated.tex | 30 +- .../docs/latex/classmoeoArchive.tex | 20 +- .../paradiseo-moeo/docs/latex/classmoeoBM.eps | 66 +++- .../paradiseo-moeo/docs/latex/classmoeoBM.tex | 2 +- .../latex/classmoeoContributionMetric.eps | 12 +- .../latex/classmoeoContributionMetric.tex | 2 +- .../classmoeoDisctinctElitistReplacement.tex | 6 +- .../docs/latex/classmoeoEntropyMetric.eps | 12 +- .../docs/latex/classmoeoEntropyMetric.tex | 2 +- .../docs/latex/classmoeoMetric.eps | 21 +- .../docs/latex/classmoeoNDSorting__II.tex | 16 +- ...assmoeoNDSorting__II_1_1compare__nodes.tex | 11 +- .../docs/latex/classmoeoNSGA__II.tex | 20 +- .../classmoeoSelectOneFromPopAndArch.eps | 8 +- .../latex/classmoeoSolutionVsSolutionBM.eps | 12 +- .../latex/classmoeoSolutionVsSolutionBM.tex | 2 +- .../latex/classmoeoVectorVsSolutionBM.eps | 12 +- .../latex/classmoeoVectorVsSolutionBM.tex | 2 +- .../docs/latex/classmoeoVectorVsVectorBM.eps | 12 +- .../docs/latex/classmoeoVectorVsVectorBM.tex | 2 +- trunk/paradiseo-moeo/docs/latex/doxygen.sty | 22 +- trunk/paradiseo-moeo/docs/latex/hierarchy.tex | 106 +++--- trunk/paradiseo-moeo/docs/latex/main.tex | 2 +- trunk/paradiseo-moeo/docs/latex/refman.tex | 28 +- .../docs/man/man3/moeoArchive.3 | 14 +- .../man3/moeoArchiveFitnessSavingUpdater.3 | 2 +- .../docs/man/man3/moeoArchiveUpdater.3 | 2 +- trunk/paradiseo-moeo/docs/man/man3/moeoBM.3 | 4 +- .../man/man3/moeoBinaryMetricSavingUpdater.3 | 2 +- .../docs/man/man3/moeoCombinedMOLS.3 | 2 +- .../docs/man/man3/moeoContributionMetric.3 | 2 +- .../man3/moeoDisctinctElitistReplacement.3 | 4 +- .../docs/man/man3/moeoElitistReplacement.3 | 2 +- .../docs/man/man3/moeoEntropyMetric.3 | 2 +- .../docs/man/man3/moeoHybridMOLS.3 | 2 +- trunk/paradiseo-moeo/docs/man/man3/moeoMOLS.3 | 2 +- .../paradiseo-moeo/docs/man/man3/moeoMetric.3 | 4 +- .../docs/man/man3/moeoNDSorting_II.3 | 11 +- .../man/man3/moeoNDSorting_II_compare_nodes.3 | 14 +- .../docs/man/man3/moeoNSGA_II.3 | 4 +- .../docs/man/man3/moeoReplacement.3 | 2 +- .../man/man3/moeoSelectOneFromPopAndArch.3 | 2 +- .../docs/man/man3/moeoSolutionUM.3 | 2 +- .../docs/man/man3/moeoSolutionVsSolutionBM.3 | 4 +- trunk/paradiseo-moeo/docs/man/man3/moeoUM.3 | 2 +- .../docs/man/man3/moeoVectorUM.3 | 2 +- .../docs/man/man3/moeoVectorVsSolutionBM.3 | 4 +- .../docs/man/man3/moeoVectorVsVectorBM.3 | 4 +- trunk/paradiseo-moeo/docs/moeo.doxyfile | 2 +- trunk/paradiseo-moeo/src/moeoNDSorting.h | 125 ++++--- trunk/paradiseo-moeo/src/moeoNSGA_II.h | 130 +++---- trunk/paradiseo-moeo/src/old/make_algo_MOEO.h | 80 ++-- .../tutorials/lesson1/FlowShop.h | 27 +- .../lesson1/FlowShopBenchmarkParser.h | 41 +-- .../tutorials/lesson1/FlowShopEA.cpp | 28 +- .../tutorials/lesson1/FlowShopEval.h | 43 +-- .../tutorials/lesson1/FlowShopFitness.h | 27 +- .../tutorials/lesson1/FlowShopInit.h | 29 +- .../lesson1/FlowShopOpCrossoverQuad.h | 29 +- .../lesson1/FlowShopOpMutationExchange.h | 29 +- .../lesson1/FlowShopOpMutationShift.h | 29 +- .../tutorials/lesson1/make_eval_FlowShop.h | 29 +- .../lesson1/make_genotype_FlowShop.h | 27 +- .../tutorials/lesson1/make_op_FlowShop.h | 27 +- .../tutorials/lesson2/Makefile.am | 2 +- .../paradiseo-moeo/tutorials/lesson2/Sch1.cpp | 130 ++++--- 137 files changed, 2355 insertions(+), 2368 deletions(-) diff --git a/trunk/paradiseo-moeo/AUTHORS b/trunk/paradiseo-moeo/AUTHORS index 6ec6becf5..50787a3ef 100644 --- a/trunk/paradiseo-moeo/AUTHORS +++ b/trunk/paradiseo-moeo/AUTHORS @@ -1,3 +1,4 @@ Sébastien Cahon Arnaud Liefooghe Thomas Legrand +Abdelhakim Deneche diff --git a/trunk/paradiseo-moeo/docs/html/annotated.html b/trunk/paradiseo-moeo/docs/html/annotated.html index c8602d797..65dc0e43c 100644 --- a/trunk/paradiseo-moeo/docs/html/annotated.html +++ b/trunk/paradiseo-moeo/docs/html/annotated.html @@ -4,7 +4,7 @@ - +

ParadisEO-MOEO Class List

Here are the classes, structs, unions and interfaces with brief descriptions: - - - - - - - - - - - - + + + + - + + + + + - - + + + + + + @@ -66,8 +66,8 @@
eoAdditiveBinaryEpsilonIndicator< EOFitness >Functor Additive binary epsilon indicator for eoParetoFitness
eoBinaryHypervolumeIndicator< EOFitness >Functor Binary hypervolume indicator for eoParetoFitness
eoBinaryQualityIndicator< EOFitness >Functor Binary quality indicator Binary performance measure to use in the replacement selection process of IBEA (Indicator-Based Evolutionary Algorithm) Of course, EOFitness needs to be an eoParetoFitness object
eoBinaryQualityIndicator< EOFitness >::RangePrivate class to represent the bounds
eoIBEA< EOT, Fitness >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm)
eoIBEAAvgSorting< EOT, FitnessEval >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty using averaged values for each objective Follow the idea presented in the Deb & Gupta paper "Searching for Robust Pareto-Optimal Solutions in Multi-Objective Optimization", 2005 Of course, the fitness of an individual needs to be an eoStochasticParetoFitness object
eoIBEASorting< EOT, Fitness >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) without uncertainty Adapted from the Zitzler and Künzli paper "Indicator-Based Selection in Multiobjective Search" (2004) Of course, Fitness needs to be an eoParetoFitness object
eoIBEAStochSorting< EOT, FitnessEval >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty Adapted from the Basseur and Zitzler paper "Handling Uncertainty in Indicator-Based Multiobjective Optimization" (2006) Of course, the fitness of an individual needs to be an eoStochasticParetoFitness object
eoParetoEuclidDist< EOT, DistType >
eoParetoPhenDist< EOT, DistType >
eoParetoSharing< EOT, worthT >
eoParetoSharing< EOT, worthT >::dMatrix
moeoAdditiveBinaryEpsilonIndicator< EOFitness >Functor Additive binary epsilon indicator for eoParetoFitness
moeoArchive< EOT >An archive is a secondary population that stores non-dominated solutions
moeoArchiveFitnessSavingUpdater< EOT >This class allows to save the fitnesses of solutions contained in an archive into a file at each generation
moeoArchiveUpdater< EOT >This class allows to update the archive at each generation with newly found non-dominated solutions
moeoBinaryHypervolumeIndicator< EOFitness >Functor Binary hypervolume indicator for eoParetoFitness
moeoBinaryMetricSavingUpdater< EOT >This class allows to save the progression of a binary metric comparing the fitness values of the current population (or archive) with the fitness values of the population (or archive) of the generation (n-1) into a file
moeoBinaryQualityIndicator< EOFitness >Functor Binary quality indicator Binary performance measure to use in the replacement selection process of IBEA (Indicator-Based Evolutionary Algorithm) Of course, EOFitness needs to be an eoParetoFitness object
moeoBinaryQualityIndicator< EOFitness >::RangePrivate class to represent the bounds
moeoBM< A1, A2, R >Base class for binary metrics
moeoCombinedMOLS< EOT >This class allows to embed a set of local searches that are sequentially applied, and so working and updating the same archive of non-dominated solutions
moeoContributionMetric< EOT >The contribution metric evaluates the proportion of non-dominated solutions given by a Pareto set relatively to another Pareto set
moeoDisctinctElitistReplacement< EOT, WorthT >Same than moeoElitistReplacement except that distinct individuals are privilegied
moeoElitistReplacement< EOT, WorthT >Keep all the best individuals (almost cut-and-pasted from eoNDPlusReplacement, (c) Maarten Keijzer, Marc Schoenauer and GeNeura Team, 2002)
moeoElitistReplacement< EOT, WorthT >Keep all the best individuals (almost cut-and-pasted from eoNDPlusReplacement, (c) Maarten Keijzer, Marc Schoenauer and GeNeura Team, 2002)
moeoEntropyMetric< EOT >The entropy gives an idea of the diversity of a Pareto set relatively to another Pareto set
moeoHybridMOLS< EOT >This class allows to apply a multi-objective local search to a number of selected individuals contained in the archive at every generation until a stopping criteria is verified
moeoIBEA< EOT, Fitness >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm)
moeoIBEAAvgSorting< EOT, FitnessEval >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty using averaged values for each objective Follow the idea presented in the Deb & Gupta paper "Searching for Robust Pareto-Optimal Solutions in Multi-Objective Optimization", 2005 Of course, the fitness of an individual needs to be an eoStochasticParetoFitness object
moeoIBEASorting< EOT, Fitness >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) without uncertainty Adapted from the Zitzler and Künzli paper "Indicator-Based Selection in Multiobjective Search" (2004) Of course, Fitness needs to be an eoParetoFitness object
moeoIBEAStochSorting< EOT, FitnessEval >Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty Adapted from the Basseur and Zitzler paper "Handling Uncertainty in Indicator-Based Multiobjective Optimization" (2006) Of course, the fitness of an individual needs to be an eoStochasticParetoFitness object
moeoMetricBase class for performance metrics (also called quality indicators)
moeoMOLS< EOT >Abstract class for local searches applied to multi-objective optimization
moeoNDSorting_II< EOT >Fast Elitist Non-Dominant Sorting Genetic Algorithm
moeoNDSorting_II< EOT >::compare_nodes
moeoNDSorting_II< EOT >Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie Note : This is a corrected version of the original eoNDSorting_II class
moeoNDSorting_II< EOT >::compare_nodesA class to compare the nodes
moeoNSGA_II< EOT >
moeoParetoEuclidDist< EOT, DistType >
moeoParetoPhenDist< EOT, DistType >
moeoParetoSharing< EOT, worthT >
moeoParetoSharing< EOT, worthT >::dMatrix
moeoReplacement< EOT, WorthT >Replacement strategy for multi-objective optimization
moeoSelectOneFromPopAndArch< EOT >Elitist selection process that consists in choosing individuals in the archive as well as in the current population
moeoSolutionUM< EOT, R, EOFitness >Base class for unary metrics dedicated to the performance evaluation of a single solution's Pareto fitness
moeoVectorVsSolutionBM< EOT, R, EOFitness >Base class for binary metrics dedicated to the performance comparison between a Pareto set (a vector of Pareto fitnesses) and a single solution's Pareto fitness
moeoVectorVsVectorBM< EOT, R, EOFitness >Base class for binary metrics dedicated to the performance comparison between two Pareto sets (two vectors of Pareto fitnesses)
-
Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classes.html b/trunk/paradiseo-moeo/docs/html/classes.html index 775503a22..6e9003d1c 100644 --- a/trunk/paradiseo-moeo/docs/html/classes.html +++ b/trunk/paradiseo-moeo/docs/html/classes.html @@ -4,7 +4,7 @@ - +
-

ParadisEO-MOEO Class Index

A | B | C | D | E | H | M | N | R | S | U | V

+

ParadisEO-MOEO Class Index

A | B | C | D | E | H | I | M | N | P | R | S | U | V

  A  
-
eoBinaryHypervolumeIndicator   
  N  
-
moeoArchive   eoBinaryQualityIndicator   moeoNDSorting_II   
moeoArchiveFitnessSavingUpdater   eoBinaryQualityIndicator::Range   moeoNDSorting_II::compare_nodes   
moeoArchiveUpdater   eoIBEA   moeoNSGA_II   
  B  
-
eoIBEAAvgSorting   
  R  
-
moeoBinaryMetricSavingUpdater   eoIBEASorting   moeoReplacement   
moeoBM   eoIBEAStochSorting   
  S  
+
moeoElitistReplacement   moeoParetoEuclidDist   
moeoAdditiveBinaryEpsilonIndicator   moeoEntropyMetric   moeoParetoPhenDist   
moeoArchive   
  H  
+
moeoParetoSharing   
moeoArchiveFitnessSavingUpdater   moeoHybridMOLS   moeoParetoSharing::dMatrix   
moeoArchiveUpdater   
  I  
+
  R  
+
  B  
+
moeoIBEA   moeoReplacement   
moeoBinaryHypervolumeIndicator   moeoIBEAAvgSorting   
  S  
+
moeoBinaryMetricSavingUpdater   moeoIBEASorting   moeoSelectOneFromPopAndArch   
moeoBinaryQualityIndicator   moeoIBEAStochSorting   moeoSolutionUM   
moeoBinaryQualityIndicator::Range   
  M  
+
moeoSolutionVsSolutionBM   
moeoBM   moeoMetric   
  U  
  C  
-
eoParetoEuclidDist   moeoSelectOneFromPopAndArch   
moeoCombinedMOLS   eoParetoPhenDist   moeoSolutionUM   
moeoContributionMetric   eoParetoSharing   moeoSolutionVsSolutionBM   
  D  
-
eoParetoSharing::dMatrix   
  U  
-
moeoDisctinctElitistReplacement   
  H  
-
moeoUM   
  E  
-
moeoHybridMOLS   
  V  
-
moeoElitistReplacement   
  M  
-
moeoVectorUM   
moeoEntropyMetric   moeoMetric   moeoVectorVsSolutionBM   
eoAdditiveBinaryEpsilonIndicator   moeoMOLS   moeoVectorVsVectorBM   

A | B | C | D | E | H | M | N | R | S | U | V

-


Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +moeoMOLS   moeoUM   moeoCombinedMOLS   
  N  
+
  V  
+moeoContributionMetric   moeoNDSorting_II   moeoVectorUM   
  D  
+moeoNDSorting_II::compare_nodes   moeoVectorVsSolutionBM   moeoDisctinctElitistReplacement   moeoNSGA_II   moeoVectorVsVectorBM   
  E  
+
  P  
+

A | B | C | D | E | H | I | M | N | P | R | S | U | V

+


Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoArchive-members.html b/trunk/paradiseo-moeo/docs/html/classmoeoArchive-members.html index 0f4e8a982..416e07db6 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoArchive-members.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoArchive-members.html @@ -4,7 +4,7 @@ - +

moeoArchive< EOT > Member List

This is the complete list of members for moeoArchive< EOT >, including all inherited members.

- - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - -
append(unsigned _newPopSize, eoInit< EOT > &_chromInit)eoPop< EOT >
best_element() const eoPop< EOT >
className() const eoPop< EOT > [virtual]
contains(const EOFitness &_fit) const moeoArchive< EOT > [inline]
dominates(const EOFitness &_fit) const moeoArchive< EOT > [inline]
append(unsigned _newPopSize, eoInit< EOT > &_chromInit)eoPop< EOT >
best_element() consteoPop< EOT >
className() consteoPop< EOT > [virtual]
contains(const EOFitness &_fit) constmoeoArchive< EOT > [inline]
dominates(const EOFitness &_fit) constmoeoArchive< EOT > [inline]
EOFitness typedefmoeoArchive< EOT >
eoPop()eoPop< EOT >
eoPop(unsigned _popSize, eoInit< EOT > &_chromInit)eoPop< EOT >
eoPop(std::istream &_is)eoPop< EOT >
Fitness typedefeoPop< EOT >
fitness_traits typedefeoPop< EOT >
getPerf2Worth()eoPop< EOT >
invalidate()eoPop< EOT > [virtual]
it_best_element()eoPop< EOT >
it_worse_element()eoPop< EOT >
nth_element(int nth)eoPop< EOT >
nth_element(int which, std::vector< const EOT * > &result) const eoPop< EOT >
nth_element_fitness(int which) const eoPop< EOT >
printOn(std::ostream &_os) const eoPop< EOT > [virtual]
readFrom(std::istream &_is)eoPop< EOT > [virtual]
scale()eoPop< EOT >
setPerf2Worth(eoPerf2Worth< EOT > &_p2w)eoPop< EOT >
setPerf2Worth(eoPerf2Worth< EOT > *_p2w)eoPop< EOT >
shuffle(void)eoPop< EOT >
shuffle(std::vector< const EOT * > &result) const eoPop< EOT >
sort(void)eoPop< EOT >
sort(std::vector< const EOT * > &result) const eoPop< EOT >
sort()eoPop< EOT >
sortedPrintOn(std::ostream &_os) const eoPop< EOT > [virtual]
swap(eoPop< EOT > &other)eoPop< EOT >
swap(eoPop< EOT > &other)eoPop< EOT >
eoPop()eoPop< EOT >
eoPop(unsigned _popSize, eoInit< EOT > &_chromInit)eoPop< EOT >
eoPop(std::istream &_is)eoPop< EOT >
Fitness typedefeoPop< EOT >
fitness_traits typedefeoPop< EOT >
getPerf2Worth()eoPop< EOT >
invalidate()eoPop< EOT > [virtual]
it_best_element()eoPop< EOT >
it_worse_element()eoPop< EOT >
nth_element(int nth)eoPop< EOT >
nth_element(int which, std::vector< const EOT * > &result) consteoPop< EOT >
nth_element_fitness(int which) consteoPop< EOT >
printOn(std::ostream &_os) consteoPop< EOT > [virtual]
readFrom(std::istream &_is)eoPop< EOT > [virtual]
scale()eoPop< EOT >
setPerf2Worth(eoPerf2Worth< EOT > &_p2w)eoPop< EOT >
setPerf2Worth(eoPerf2Worth< EOT > *_p2w)eoPop< EOT >
shuffle(void)eoPop< EOT >
shuffle(std::vector< const EOT * > &result) consteoPop< EOT >
sort(void)eoPop< EOT >
sort(std::vector< const EOT * > &result) consteoPop< EOT >
sort()eoPop< EOT >
sortedPrintOn(std::ostream &_os) consteoPop< EOT > [virtual]
swap(eoPop< EOT > &other)eoPop< EOT >
swap(eoPop< EOT > &other)eoPop< EOT >
update(const EOT &_eo)moeoArchive< EOT > [inline]
update(const eoPop< EOT > &_pop)moeoArchive< EOT > [inline]
worse_element() const eoPop< EOT >
~eoObject()eoObject [virtual]
~eoPersistent()eoPersistent [virtual]
~eoPop()eoPop< EOT > [virtual]
~eoPrintable()eoPrintable [virtual]


Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  + worse_element() consteoPop< EOT > + ~eoObject()eoObject [virtual] + ~eoPersistent()eoPersistent [virtual] + ~eoPop()eoPop< EOT > [virtual] + ~eoPrintable()eoPrintable [virtual] +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoArchive.html b/trunk/paradiseo-moeo/docs/html/classmoeoArchive.html index 8acd720b2..086c3b81e 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoArchive.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoArchive.html @@ -4,7 +4,7 @@ - +
+


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater-members.html b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater-members.html index dde59cab5..ef776c99b 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater-members.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater-members.html @@ -4,7 +4,7 @@ - +

moeoArchiveFitnessSavingUpdater< EOT > Member List

This is the complete list of members for moeoArchiveFitnessSavingUpdater< EOT >, including all inherited members.

- + - + - + - - - -
archmoeoArchiveFitnessSavingUpdater< EOT > [private]
className(void) const eoUpdater [virtual]
className(void) consteoUpdater [virtual]
countermoeoArchiveFitnessSavingUpdater< EOT > [private]
filenamemoeoArchiveFitnessSavingUpdater< EOT > [private]
functor_category()eoF< void > [static]
functor_category()eoF< void > [static]
idmoeoArchiveFitnessSavingUpdater< EOT > [private]
lastCall()eoUpdater [virtual]
lastCall()eoUpdater [virtual]
moeoArchiveFitnessSavingUpdater(moeoArchive< EOT > &_arch, const std::string &_filename="Res/Arch", int _id=-1)moeoArchiveFitnessSavingUpdater< EOT > [inline]
operator()()moeoArchiveFitnessSavingUpdater< EOT > [inline, virtual]
result_type typedefeoF< void >
~eoF()eoF< void > [virtual]
~eoFunctorBase()eoFunctorBase [virtual]


Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  + result_type typedefeoF< void > + ~eoF()eoF< void > [virtual] + ~eoFunctorBase()eoFunctorBase [virtual] +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater.html b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater.html index d972dcbc2..2b2432e73 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveFitnessSavingUpdater.html @@ -4,7 +4,7 @@ - +
+


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater-members.html b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater-members.html index c8ce368cc..96f5a79b1 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater-members.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater-members.html @@ -4,7 +4,7 @@ - +

moeoArchiveUpdater< EOT > Member List

This is the complete list of members for moeoArchiveUpdater< EOT >, including all inherited members.

- - - + + + - - - -
archmoeoArchiveUpdater< EOT > [private]
className(void) const eoUpdater [virtual]
functor_category()eoF< void > [static]
lastCall()eoUpdater [virtual]
className(void) consteoUpdater [virtual]
functor_category()eoF< void > [static]
lastCall()eoUpdater [virtual]
moeoArchiveUpdater(moeoArchive< EOT > &_arch, const eoPop< EOT > &_pop)moeoArchiveUpdater< EOT > [inline]
operator()()moeoArchiveUpdater< EOT > [inline, virtual]
popmoeoArchiveUpdater< EOT > [private]
result_type typedefeoF< void >
~eoF()eoF< void > [virtual]
~eoFunctorBase()eoFunctorBase [virtual]


Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  + result_type typedefeoF< void > + ~eoF()eoF< void > [virtual] + ~eoFunctorBase()eoFunctorBase [virtual] +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater.html b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater.html index 7acae7d88..218b2ffa6 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoArchiveUpdater.html @@ -4,7 +4,7 @@ - +
+


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoBM.html b/trunk/paradiseo-moeo/docs/html/classmoeoBM.html index 97e782ef1..e4542d04a 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoBM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoBM.html @@ -4,7 +4,7 @@ - +
+


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement-members.html b/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement-members.html index c1115f8c1..2709e535a 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement-members.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement-members.html @@ -4,7 +4,7 @@ - +

moeoElitistReplacement< EOT, WorthT > Member List

This is the complete list of members for moeoElitistReplacement< EOT, WorthT >, including all inherited members.

- - - -
functor_category()eoBF< eoPop< EOT > &, eoPop< EOT > &, void > [static]
moeoElitistReplacement(eoPerf2Worth< EOT, WorthT > &_perf2worth)moeoElitistReplacement< EOT, WorthT > [inline]
operator()(eoPop< EOT > &_parents, eoPop< EOT > &_offspring)moeoElitistReplacement< EOT, WorthT > [inline, virtual]
perf2worthmoeoElitistReplacement< EOT, WorthT > [private]
~eoBF()eoBF< eoPop< EOT > &, eoPop< EOT > &, void > [virtual]
~eoFunctorBase()eoFunctorBase [virtual]


Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement.html b/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement.html index f203290b1..3426d034a 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoElitistReplacement.html @@ -4,7 +4,7 @@ - +
-

moeoElitistReplacement< EOT, WorthT > Class Template Reference

Keep all the best individuals (almost cut-and-pasted from eoNDPlusReplacement, (c) Maarten Keijzer, Marc Schoenauer and GeNeura Team, 2002). +

moeoElitistReplacement< EOT, WorthT > Class Template Reference

Keep all the best individuals (almost cut-and-pasted from eoNDPlusReplacement, (c) Maarten Keijzer, Marc Schoenauer and GeNeura Team, 2002). More...

#include <moeoReplacement.h> @@ -37,22 +37,22 @@

moeoReplacement< EOT, WorthT > -eoReplacement< EOT > -eoBF< eoPop< EOT > &, eoPop< EOT > &, void > -eoFunctorBase +eoReplacement< EOT > +eoBF< eoPop< EOT > &, eoPop< EOT > &, void > +eoFunctorBase List of all members. - + - + +eoPerf2Worth< EOT, WorthT > & 

Public Member Functions

 moeoElitistReplacement (eoPerf2Worth< EOT, WorthT > &_perf2worth)
 moeoElitistReplacement (eoPerf2Worth< EOT, WorthT > &_perf2worth)
 constructor
void operator() (eoPop< EOT > &_parents, eoPop< EOT > &_offspring)
void operator() (eoPop< EOT > &_parents, eoPop< EOT > &_offspring)
 replacement - result in _parents

Private Attributes

-eoPerf2Worth< EOT, WorthT > & perf2worth
perf2worth
 the functor object to transform raw fitnesses into fitness for selection
@@ -60,38 +60,28 @@

template<class EOT, class WorthT = double>
class moeoElitistReplacement< EOT, WorthT >

-Keep all the best individuals (almost cut-and-pasted from eoNDPlusReplacement, (c) Maarten Keijzer, Marc Schoenauer and GeNeura Team, 2002). +Keep all the best individuals (almost cut-and-pasted from eoNDPlusReplacement, (c) Maarten Keijzer, Marc Schoenauer and GeNeura Team, 2002).

Definition at line 35 of file moeoReplacement.h.


Constructor & Destructor Documentation

-

- - - - -
- + +
+
+
+template<class EOT, class WorthT = double>
+
- - - - - - - - - + + + + + +
-template<class EOT, class WorthT = double>
moeoElitistReplacement< EOT, WorthT >::moeoElitistReplacement eoPerf2Worth< EOT, WorthT > &  _perf2worth  )  [inline]moeoElitistReplacement< EOT, WorthT >::moeoElitistReplacement (eoPerf2Worth< EOT, WorthT > &  _perf2worth  )  [inline]
-
- - - - - -
-   - + +

constructor @@ -103,46 +93,36 @@ constructor

-Definition at line 43 of file moeoReplacement.h.

+Definition at line 43 of file moeoReplacement.h. + +


Member Function Documentation

-

- - - - -
- + +
+
+
+template<class EOT, class WorthT = double>
+
- + + + + - - - - + + + + - - - - - - - - - + + +
-template<class EOT, class WorthT = double> void moeoElitistReplacement< EOT, WorthT >::operator() (eoPop< EOT > &  _parents,
void moeoElitistReplacement< EOT, WorthT >::operator() eoPop< EOT > &  _parents, eoPop< EOT > &  _offspring 
eoPop< EOT > &  _offspring
[inline, virtual]) [inline, virtual]
-
- - - - - -
-   - + +

replacement - result in _parents @@ -155,15 +135,15 @@ replacement - result in _parents

-Implements eoBF< eoPop< EOT > &, eoPop< EOT > &, void >. +Implements eoBF< eoPop< EOT > &, eoPop< EOT > &, void >.

-Definition at line 54 of file moeoReplacement.h.

+Definition at line 54 of file moeoReplacement.h. + +


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoEntropyMetric-members.html b/trunk/paradiseo-moeo/docs/html/classmoeoEntropyMetric-members.html index c3fe4b3aa..1fa6541da 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoEntropyMetric-members.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoEntropyMetric-members.html @@ -4,7 +4,7 @@ - +


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoEntropyMetric.png b/trunk/paradiseo-moeo/docs/html/classmoeoEntropyMetric.png index ba78014c7d2bb6acb0ffaab7adf368798094768d..bcc3bdbfdb4a02c1793abe9f5112233919cb1fdf 100644 GIT binary patch literal 1724 zcmcJQdoa{%7{`B(Vv22x%AJm8$e}h-l(kz~xg@($NLaZ`NXpg^s~eJBjv7R4WG!V^ zD!J4y5vzpN5~3AicU@ZYW8HT5Z04MQ&dizqIy0Z|`+lEyo_S`T_jzaDB%GrSY`yw= z003ZiwiqV>kXe%Yg*CF$b^hl5Ch4Y%b2wowkw~OgBB>{lywjy_RrU4t(G8Ms(op82 zlcO_maI7}~0OXwPFo#ZDelV5id0}MR#+%g7kC6&tK=d{07lqMxLUcoeqOEPFZ-GwL zw1a+Mi)!?e@^8^vm-zGWlGB^J>hW-PcwwSC4s?qkyMo!*J`Xo%4`*t)Ph}3D=E3*k zPRF>vg;Bp(OiZlCPiw0cULhyFkCMwG_q|lr$fc$~e#gP%s|B{a z;z&Fm6ci#@!%c7zAd-wqxI0MIVV^OEr+?p%xc{u^4Tc|3d6q{h zg>!Ff0`d(BVNa3;#b(B(2RFP#f?F(`v@?0JhXjLGI#z1$(kUCAiYPd*58qD8?df5` z*JV3k6ZhF%ZPs2qQizXS2rn=*xR+sd;1jpM_>YXcie(ftgQ+HOI8=H*UuZaOmO`J! z@9LYcFZGN2W4Ik)S}|hGCa7qKNQ4Uo!_)2)A2m zAd`t_ICX{S5Kc$hN@9w7ciCd|W-N+DQE|@|prYF-Yui(YkgZk6I3=B8A?QzkzrCC+ z1Y2_eSH@@%iHKi)TQcNC>8#pD4#Cd#2-}&0tzEzi^Uqf&F*)bJz9iE==$We}nYsSw z%)#~U5fl_{0)ZxPTGGV^(lSM7MBw1<2nIyv6cw@ho6GVV8F`;|2p+;jp<_IgyJ2{iC52Q7+#) zu8@wUO7{Aa{Mc2ov{A35VoB|zkvq2Uid7in26T^KQt60To?JT=NZYYmbXhmVuJ8jV$U;Td0+~b20Atmww?|utwl%p3+wxb!ucbCjo@|?$0l`7SA09srQhsUpM?N}@UdQX@9_^|bE(DV} zGx=WyJ{*0J=$0?MyBFONO&Gm`FI(Jir-OLR3?ZJiZ_GgizDL0I%9F}gKs3YtM~-0f zWX}p4(#@OigUYWbk&a31f6iNqBmnFr1qqxd;@W!k`=CPQ;Aeb){f~ZZ1^nDSFWN70 zrw9}sE!D-JWI_xrUF_2`KKfRsqKsGydCQPV*k*boHcNZnfyxpl=gGSFs1UN~7E5y` zgZ}(w)W9aMbPKDxp!3Ii#}Cx1HSdivjtw#`h#P2ukCAAnK(@7bm#RbEur0GKzoMqH zZq%zZJ}q8N#C{}s23;c;r74?-W-j{`Q8JO6s)gqB9n%P`4kvZ2g2ZOV`5-vPn2zZ* z8?o|AD_i-kk|hk;IqNyv+riJ(TK3_nKzf~N1mWz@n+t7U_G#;wMbVWYy`i~*)^9Ku zB0W5+O>#=~NgjoQx#aTUPdU3pndfA`r9>3^2U+!+Kk){fyZ(ys=vvv$PL I4trn!3)ft9`2YX_ literal 3206 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 Q`)S~_vOt=bow@$-Up6H`k^lez diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS-members.html b/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS-members.html index 44753d0e1..bf2af2d7b 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS-members.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS-members.html @@ -4,7 +4,7 @@ - +

moeoHybridMOLS< EOT > Member List

This is the complete list of members for moeoHybridMOLS< EOT >, including all inherited members.

- + - - + + - + - - -
archmoeoHybridMOLS< EOT > [private]
className(void) const eoUpdater [virtual]
className(void) consteoUpdater [virtual]
eoHybridMOLS(eoContinue< EOT > &_term, eoSelect< EOT > &_select, moeoMOLS< EOT > &_mols, moeoArchive< EOT > &_arch)moeoHybridMOLS< EOT > [inline]
functor_category()eoF< void > [static]
lastCall()eoUpdater [virtual]
functor_category()eoF< void > [static]
lastCall()eoUpdater [virtual]
molsmoeoHybridMOLS< EOT > [private]
operator()()moeoHybridMOLS< EOT > [inline, virtual]
result_type typedefeoF< void >
result_type typedefeoF< void >
selectmoeoHybridMOLS< EOT > [private]
termmoeoHybridMOLS< EOT > [private]
~eoF()eoF< void > [virtual]
~eoFunctorBase()eoFunctorBase [virtual]


Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  + ~eoF()eoF< void > [virtual] + ~eoFunctorBase()eoFunctorBase [virtual] +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS.html b/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS.html index c04763be9..6d6016f44 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoHybridMOLS.html @@ -4,7 +4,7 @@ - +
  • Main Page
  • @@ -36,14 +36,14 @@

    Inheritance diagram for moeoHybridMOLS< EOT >:

    -eoUpdater -eoF< void > -eoFunctorBase +eoUpdater +eoF< void > +eoFunctorBase List of all members. - + +eoContinue< EOT > &  +eoSelect< EOT > &  + +

    Public Member Functions

     eoHybridMOLS (eoContinue< EOT > &_term, eoSelect< EOT > &_select, moeoMOLS< EOT > &_mols, moeoArchive< EOT > &_arch)
     eoHybridMOLS (eoContinue< EOT > &_term, eoSelect< EOT > &_select, moeoMOLS< EOT > &_mols, moeoArchive< EOT > &_arch)
     Ctor.
    @@ -52,11 +52,11 @@ void  Applies the multi-objective local search to selected individuals contained in the archive if the stopping criteria is not verified.

    Private Attributes

    -eoContinue< EOT > & term
    term
     stopping criteria
    -eoSelect< EOT > & select
    select
     selector
    @@ -77,54 +77,44 @@ This class allows to apply a multi-objective local search to a number of selecte

    Definition at line 27 of file moeoHybridMOLS.h.


    Member Function Documentation

    -

    - - - - -
    - + +
    +
    +
    +template<class EOT>
    +
    - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - - - - - - - + + +
    -template<class EOT> moeoHybridMOLS< EOT >::eoHybridMOLS (eoContinue< EOT > &  _term,
    moeoHybridMOLS< EOT >::eoHybridMOLS eoContinue< EOT > &  _term, eoSelect< EOT > &  _select,
    eoSelect< EOT > &  _select, moeoMOLS< EOT > &  _mols,
    moeoMOLS< EOT > &  _mols, moeoArchive< EOT > &  _arch 
    moeoArchive< EOT > &  _arch
    [inline]) [inline]
    -
    - - - - - -
    -   - + +

    Ctor. @@ -139,13 +129,13 @@ Ctor.

    -Definition at line 38 of file moeoHybridMOLS.h.

    +Definition at line 38 of file moeoHybridMOLS.h. + +


    The documentation for this class was generated from the following file: -
    Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoMOLS.html b/trunk/paradiseo-moeo/docs/html/classmoeoMOLS.html index 948ce1b0d..244de8d2b 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoMOLS.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoMOLS.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -36,11 +36,11 @@

      Inheritance diagram for moeoMOLS< EOT >:

      -eoBF< const EOT &, moeoArchive< EOT > &, void > -eoFunctorBase +eoBF< const EOT &, moeoArchive< EOT > &, void > +eoFunctorBase moeoCombinedMOLS< EOT > -List of all members. +

      Detailed Description

      @@ -55,8 +55,8 @@ Starting from only one solution, it produces a set of new non-dominated solution

      Definition at line 23 of file moeoMOLS.h.


      The documentation for this class was generated from the following file: -
      Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
      Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
      +doxygen 1.5.1
      diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoMetric.html b/trunk/paradiseo-moeo/docs/html/classmoeoMetric.html index ebde26554..a9a364bb2 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoMetric.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoMetric.html @@ -4,7 +4,7 @@ - +
      • Main Page
      • @@ -36,17 +36,17 @@

        Inheritance diagram for moeoMetric:

        -eoFunctorBase +eoFunctorBase moeoBM< A1, A2, R > -moeoBM< const EOFitness &, const EOFitness &, R > -moeoBM< const std::vector< EOFitness > &, const EOFitness &, R > -moeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R > -moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double > +moeoBM< const const EOFitness &, EOFitness &, R > +moeoBM< const const std::vector< EOFitness > &, EOFitness &, R > +moeoBM< const const std::vector< EOFitness > &, std::vector< EOFitness > &, R > +moeoBM< const const std::vector< typename EOT::Fitness > &, std::vector< typename EOT::Fitness > &, double > moeoUM< A, R > moeoUM< const EOFitness &, R > moeoUM< const std::vector< EOFitness > &, R > -List of all members. +

        Detailed Description

        @@ -56,8 +56,8 @@ Base class for performance metrics (also called quality indicators).

        Definition at line 21 of file moeoMetric.h.


        The documentation for this class was generated from the following file: -
        Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
        Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
        +doxygen 1.5.1
        diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoMetric.png b/trunk/paradiseo-moeo/docs/html/classmoeoMetric.png index 38339c0e29da76229cf2570ad2af30d0fc3c9deb..a11119d0a79ec6c21480499dbd22da994def8c0e 100644 GIT binary patch literal 5840 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 literal 5192 zcmdT|c~BGC-o;^Na8v}u1!NnH8rfwt9oA8lMI?Y>2SH@XARvY)TL_tXgBbQvc4){j z2$5X`6OmN~A|$rTzM}~cH7v4A5O^(b=Bs+|S@r$%re3|OU!U&2)m_zf@9A^S@5b6- z%tUt_+#w_+Bx+%P`n-_PH-M1PSK?m_!y}GVSvmM5WpmE%%;x4Me7U*VOr>7@6~5X! znwy)6Pd3Nl+ilm*W3WO$O!oT<2}zDxoIYt622PLoUE!Mle&&tNj=N(?{U@VQA3j8w zh#r2uu8}V-DI!V_@QBUmU43+4DfainztaA8N5yAjRm^TC0LG74v|3SoNo`wggAC7%yGpnqPRqUkc2TlUC2Cu3#^)Po8QREWbfMr^*x zSRLXX!sv2R75^W2(9mSP7B9}j3PNYagxpNPdrKQ*4aVE9euIC~(= z+V_^_e=NKaquASS$$BtME{EUz=|Ff?38LDqK!faF+3Kt?H!i46Vg)Bc_?Va3k+~bu zKY-S4!HMb!9`y*+XH2Fn)H+qX>KYMHyJU#u=6D0+o?FfpuMYCw2Q;i}bayF2y;Ko@ zyBPc8wu5P&_9a!OK2B+u%WS0`3J-pHcyM%#wtj}PpfqQ>@AHK6*PDpsuU_xqM3<7s z##T1AH~X}F=K+d8-j9FspQ_%UIiGmOHUmW0(MfZ>FQtCEK`qDxd_nm)YO8X0DNX`b z+^~xzWE!$YUn%+~na-zRpKC$DKENkqQod`Lt5eOknx3<7T0>xTlL4=Q)j}I&28Ue= zXyc<4@KLtrM_%X@_9BaQoV3c;rXQuuO4DttXM2Z4Q%L&wlJFMvk=mqcc|tGQB@~A* zimFo}M08t#m)-FgdkDd+(MWE1w1+Q?`z}~J&NoFbc@J;R^V0}1#ewxK3x%h@?-ab% z>cyeBw(%##BzdC>uS47sJV9plG}|(i+WPL*QGCa0ORb)3kTEZTHCl)3Cl5=rDhz#~ z-liMCtk;E0j|626;_x+|>I8NBmDVHN+{#xN@bXHWcG}U-?n`o=5NC>TDJxZm;9E6n zu2|R@=HZK(TC?1PI|HIyZAvIgEA5NOG;f06HTHKtd(7M|FBOhA4)+L~}dE8eZjFw|Kc6CG$tLZh))-1|v zyY1u-rJmq=NXwakp-`7LxzRgkv=l06S&fn+&sOIvJt2)MD|NEu0%#|0$UbX2R>i(Pkj;{|F!>+^4F#UGqmSq?hF{-(}#JkhI2e*^PRF5jj3N!$WN#>8r2(e+DKFBXAvj zfUk*Lr(Idt^K|(2-J;PE_K*0aTjlb~lXI8ejele6hPRj+m!_&2YYZf#_g#nmQVUXw z4j(_)MWweoPTUFEmC2FiE!ODh#RV?5;XK3pPAk zPNZ={lkwQG(p%a=90M6NQ57A?VWX*uUC)~Ec_~^a5bUX0Q{<4^Ymf97O zha++!eEjY}0z2zP5}JRX^{J5^3BMG`e7;ka3Hr&Kz8K@AOk^BEPc9b5!A3k91xfR| zUPmd9#Qlil*XETo(@m*kP%l%9%S%dlqgXcE7$CjHhh zqdo!X*{#4^5iuJ0bwGkP_=dZ961?1^^mHuR5rIiVaqJM7eT^oE&A>xJElMy(uANV= z{FXlj>p9^!U@m|nN&o9=_g-X^fdg(fFgyp*TDwwNx?%Wm_pL9<=HLs?ImHB4x<_X1 zIgI+ty4svm4K5L7sLme$)fi^Oneb&4EWl!1P}zL$=0uIzdGbb@x;pYYl|dP++Y6fn zNfWZ8U(9wXd-~EDBwT^{@o9IlO^$HIkb}uT_qyvUM?7=w=8>+C!CL5%sLiwj zCo-$s22S_{6gaZzNZZ-Tr380OWxkxqoX`xO zl){evYKgARRqC-&!9}>_A=*E)FI=lE4Xs$QT$|q*9QoR{=G_6l!C7$j=G=-UpR5}^ zX$9gCI1R-W-bye>w*9hGoedOL1w3(15>}Yszw|AFHyZWO)kE1yfsn+lo%rb<@;>@| zHf!6PNab9*#ywf_HqAD}aW!DF=0h&vh~qCwUHL@uMWWw7(P@~#_?6XZy9jsR zPvZ9*qcW{)8MIDMS;x^$HNX{xzq@&Av7DM{Jf*fJcTxTZ#9?^qU? zZ7S6eCv}PJPNMF#e;AoyXKYFwiO2zFC#a7aS^F)0BpDXUu8e@!gFjHUpQ~)vi0-p& z!ap#tGc>!PAUb40&PY*C@0)tzUum?-(%ezCD&<)}6vi9wmBe?fYX?n)OZIs|0_$fB z%Y17okpj|Mg>TKYPE1bVRA9(K%d}q_mVUJ#JDywL{#FsP&x}l1An%LFZ7HTFRbMGH z3NE7S4?El%EHcMe97>aOb+UhDmI=)CW=((v4VK&cmT7(lqycJ?;J#8gDIpM?b}Q)( zPX)%rxU;_F>>S{QDYOh4ZLsafBR!v$cm*Z#=hPF08Db@GtGf)m3&Vv7t5P%s@5hDX z_?h)>S3*4*@;tSA^duW6LaYrM=#f`X`lTVnPTYFG`|joWcE8|rw52=p7xgMH^(DVb zMhi2+P!z`vZcnI$HqB!RUE}nh2mOL8Xzf*rNK%x(l{~Av$`@SEa7^Z2a4^0&492$L zI~okFc6(jBwkkEf%kU~aiX6J8aoW$~^qh;xN2#soQE)F#q5h??@wc$KsX&XXZIRJt zQM)*HT#cw_A5d@L;53o=Ipf}#6>pcIJ(IzANYJ*AHFk4LAL|i=SVOYMFa|Q5Xtlqr z%7t6oHIjS&NZvE+{1UQQg~=ULP^+c*U%*!m$6i-{%M!NV@up)B5$@gA0NSoDiuRI9 zo{Glr6(*k(avN~{K+#c?TydV9I1hEhZeDe59u~ZodFzU`x&E9feD?HEEcUqyq}0yB z(|7ZLHBFi$Op-}y+;&T_tI=S22kj=mhV3slwTRZx+mfcxS*u4?31GM+uJrhX`~)m6 zm;YF09y+)plplz5*E2}$Dz)OIE^Kw0r)2T_{ia@`T{pLJ>ZvubN5;Xnb%6HfAD+co zJo8yh;P3qsMCv+iIf!s;EDr89&-`U|{WoBBqUs;ZtOPZXotI`GSB^L!Fw&o0^q+u0 z(eBwc%Ls{5KS@2Sd>BOF^wJtI)KAdA&;DtGs z5>9SvaXvf4N+f-H_NX;$d4M5F8#KaChM}Q!dpQ**h-VLQcIB(p=ee43iWCSlSR}q= zT87s>NYQ3yM%Y<`=<#?2PTCPp&ipQI=Iy{ombqrJ3+u->X725C{J-E_w}elX9vXNR zd3PY_cyQEDw-&rILip2ektDV>iU}?ZL<~ZKI~RY!B%zJXKm~u&b2zHVTO=v$Rm1TE z8S;I`yt17)1>;Kt5pVUcLA~%p`u%gvS$Gp;JsSv>)zatKt?A-tlD9g@rtd0ELFJ&& zlva+sX`Td}8Kq!h{J2~w|6l8!9M_3g8CzE=BwOq` z?}t+bu8Zqy4Sz-w$Ti^4NRq5ZvjWl7WH<>=Y4jE?NMqecE{+?37huwyCX)WhzTpJ6 zwBr_ghU=Sy*;$jGsa{Y)ggIDRy|kCJz5G3nUtSnO&*Kk71lTUEP6v=wwWFW`P6D?q zib$6i2(bqQp6fH4r>;%oehY<@ZIeF4+?6E - +
    ~eoFunctorBase()eoFunctorBase [virtual]
    ~eoUF()eoUF< A1, R > [virtual]

    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1 diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoSelectOneFromPopAndArch.html b/trunk/paradiseo-moeo/docs/html/classmoeoSelectOneFromPopAndArch.html index 085f9b702..e1519cce8 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoSelectOneFromPopAndArch.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoSelectOneFromPopAndArch.html @@ -4,7 +4,7 @@ - +
    +


The documentation for this class was generated from the following file: -
Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
+doxygen 1.5.1
diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoSolutionUM.html b/trunk/paradiseo-moeo/docs/html/classmoeoSolutionUM.html index 5722adcff..d2b0aa84f 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoSolutionUM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoSolutionUM.html @@ -4,7 +4,7 @@ - +
  • Main Page
  • @@ -37,12 +37,12 @@

    moeoUM< const EOFitness &, R > -eoUF< const EOFitness &, R > +eoUF< const EOFitness &, R > moeoMetric -eoFunctorBase -eoFunctorBase +eoFunctorBase +eoFunctorBase -List of all members. +

    Detailed Description

    @@ -55,8 +55,8 @@ Base class for unary metrics dedicated to the performance evaluation of a single

    Definition at line 47 of file moeoMetric.h.


    The documentation for this class was generated from the following file: -
    Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoSolutionVsSolutionBM.html b/trunk/paradiseo-moeo/docs/html/classmoeoSolutionVsSolutionBM.html index aa166fd1a..98c741a4a 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoSolutionVsSolutionBM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoSolutionVsSolutionBM.html @@ -4,7 +4,7 @@ - + -

    moeoSolutionVsSolutionBM< EOT, R, EOFitness > Class Template Reference

    Base class for binary metrics dedicated to the performance comparison between two solutions's Pareto fitnesses. +

    moeoSolutionVsSolutionBM< EOT, R, EOFitness > Class Template Reference

    Base class for binary metrics dedicated to the performance comparison between two solutions's Pareto fitnesses. More...

    #include <moeoMetric.h> @@ -36,13 +36,13 @@

    Inheritance diagram for moeoSolutionVsSolutionBM< EOT, R, EOFitness >:

    -moeoBM< const EOFitness &, const EOFitness &, R > -eoBF< const EOFitness &, const EOFitness &, R > -moeoMetric -eoFunctorBase -eoFunctorBase +moeoBM< A1, A2, R > +eoBF< A1, A2, R > +moeoMetric +eoFunctorBase +eoFunctorBase -List of all members. +

    Detailed Description

    @@ -55,8 +55,8 @@ Base class for binary metrics dedicated to the performance comparison between tw

    Definition at line 70 of file moeoMetric.h.


    The documentation for this class was generated from the following file: -
    Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoSolutionVsSolutionBM.png b/trunk/paradiseo-moeo/docs/html/classmoeoSolutionVsSolutionBM.png index 8fc196b41d982def0948cff02370d57c403f68b3..c739cd66aa37ccb8a3860c37a803d06fdcb1f811 100644 GIT binary patch literal 1664 zcmbVNc~H|w7!A@Q1PBo@+(p8vq$HwHAR@OR2;m5qa{1#_E)7vmBLWFj0YN}WML>ih z2qXlMQw1g|H;k5B3D|PVa0wJ?I838cr%v0McKXM@ec#*NnQz|r?d~lH97Y^04+eoi z;#g}-ClKhs1wL>8N|29^oh&u}B{+MFDkl_$!DKNdwY8vi#N*;1+F^b z@F3Iq@jwtr2!^#ZbB=znQs5O)Vgx-?9PUzhH}c4;P}%C_%Tocov$Dg%Q-|RO7nT>wLEgn0C0SK4L0xjihWu*8$Z~AuhsAIhBheH zE(3AEVon-~9_e4P3T!U0W~0h+AM#?y_nJ|QTdn%s#%@3d(;zcylJa$t;H1dz2SwMk zth%8zd34KW2!uElrL3N0e;Me9=-Sxa7S_4W)8dYBwrqHPe|Yi95I)o(s&4KILwvKiMTakNHHp{F)ACdnzC!nlTK!pO7NGZh5jdOz*({J zrYq1sLRHW#EmDz!&8duinMGI>etdVeEfJ!2cGnRgCkl{@UUm0i5+l`;v zJ`|bB{s3RzC60IDH-O^%uN?=QYm>W<*&@5l!&mifguX@9-&y2KI?hAyZQ_F#di7rH zGk(oDs^rxxT@A02`_fn6bM9*st|{)V1EY6jn(t0P_|-C$GWM+#6Qm?C#RP>Z#i+$3 z2U%fC!r!2KXZ8{kwvOkS*fSxNsb=)czZwh$;XaWs<%LhhIFNJy2B1q5}vVU)5{!WJM$;+ zL-dPL(i)`Cd;dK3-&v;2p?QSvR>OvfhTjRf9A91iY_p?(r4i74qDS9J7#g=gC-~<# z&=h8Nn)a$JrphH!6$XhvQdZXE#e2mvYSJsyNp)a!m{Ljy%V2K7dLo&?E1e+P#GehV3>9BZKb#=Gi%{+4{F=-b1zRLbmH7u+G7GLt@9N8I4OoEN3N0 zkyfN?>pD|}2Wa$j)c4F^Ug4cG^1D)$N7%{hNhmk4!nGIdQLOy}JjM994J?C4Fbq{t zA9Bg^=Mi2Ku8lagEa|`{OV*+5i9m literal 1925 zcma)-c{JPU8pqSoQ$taVDz)UcJ-vw1QMHw+imgH-tDQ(Y3Ar;hK_)3lwI()2m$fd+v-%i7Y-+f}yqlZ3hUt-}E6hxJq{m0MD&Y%VH_Oy5!;S95bS zqeVHnb=^iqBQT&7Q!hv$kgAc7ha2{6fuaBv$8*&7EGdVK*3te(Qo-07Ed(w%r923+ z+V`a(^?Q@DX-33&WQs?;_D#HD;wnF3)3Ex(_cXm;!_C4_vnm(oD-|E$fH_xp2d}F2=&sEk`UT zLh(bcJluOdpD?|&W8#!si=lx7uKOUK3{uTr_c;52OUO`^1v=y!tVe6iz{JlPn>rCk1GR6l{ryQd;LG2D|CM5!5%%^u)^xl`hyxsutg*(K z|F%0oo?u?p6cxLH;WzvfoWox*s+)eCf{$FR=e}ERIMg3^r|-2tGo3ygcPb;_YQ<8? zoq{Kou5hWeg%h3WFu-Zz1o^4x!p8Rb!M982ok0=Ge>LD2S-8@Y{~g@_c|q)~;-w17 zHCEk^1ew!lPXK@YiQ^yWHbch!}WjCYAJ@(+*+_I2QWW-XoAnb3;aC*q7|^;pCs;BX^L zP9Q*hUz&cvM*tPSRD@>hn1`1i=TNIE$$=tjRgE9MOkOT%jFUF`g^OI`FYT|#tu5wN zzljjS@MW*L#+I1nqHdSB0UXq2e`o}M_~)SDr(>s_*!H$(U68qH{%q9c_<*mvpTrh$ zD~A;tn_84$`tgW^*1P-Ld99yNyaNWJ&fBdQ)b1{9o0g(MYzX09#&FqAuI@jFDvqaL zW+DsijwGdcttSh> zC9$r^{9|V4I`iQIQWN&;K3t}qsr1GWUTtTr=LqtY5rL2x%{vdAUdY1l2+cDEu0I** zb(GnUi|X>RXUL}$4O*YKWCwj_(oX3wxibT{`n>R4adron*H$bGq102oiK~S)9O9=& z>yD$tNflvqvz9gsEJFACp^j%#-K-Q(hT1`qao373tCpuNTKC!_;+2{=rtu-rLNA?mICpkx#`Ft8OV|y#Pv9X0>5syUJIP-^@lg u4z4wx$b4KhmjNOCG2vgpGiP$@l`1EnkBN&{)}UK|CdkJV;ZY5Z{NX>^TAASh diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoUM.html b/trunk/paradiseo-moeo/docs/html/classmoeoUM.html index 676e7a42c..ede77fcfe 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoUM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoUM.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -36,12 +36,12 @@

      Inheritance diagram for moeoUM< A, R >:

      -eoUF< A, R > +eoUF< A, R > moeoMetric -eoFunctorBase -eoFunctorBase +eoFunctorBase +eoFunctorBase -List of all members. +

      Detailed Description

      @@ -54,8 +54,8 @@ Base class for unary metrics.

      Definition at line 29 of file moeoMetric.h.


      The documentation for this class was generated from the following file: -
      Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
      Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
      +doxygen 1.5.1
      diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoUM.png b/trunk/paradiseo-moeo/docs/html/classmoeoUM.png index 2c70a6918926ec1b959a657b0d48b723c553f0f3..63de5940132cb3a60b3db46cffcf979283b5104b 100644 GIT binary patch delta 30 kcmdnTwvTN>6jQ~VjWL&)1oD?XQf2@GPgg&ebxsLQ0Ij16h5!Hn delta 30 kcmdnTwvTN>6jMgy#+XY?0%Zxdml%M+)78&qol`;+0HzcQCIA2c diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoVectorUM.html b/trunk/paradiseo-moeo/docs/html/classmoeoVectorUM.html index 29f3552e0..f35d34471 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoVectorUM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoVectorUM.html @@ -4,7 +4,7 @@ - +
      • Main Page
      • @@ -37,12 +37,12 @@

        moeoUM< const std::vector< EOFitness > &, R > -eoUF< const std::vector< EOFitness > &, R > +eoUF< const std::vector< EOFitness > &, R > moeoMetric -eoFunctorBase -eoFunctorBase +eoFunctorBase +eoFunctorBase -List of all members. +

        Detailed Description

        @@ -55,8 +55,8 @@ Base class for unary metrics dedicated to the performance evaluation of a Pareto

        Definition at line 58 of file moeoMetric.h.


        The documentation for this class was generated from the following file: -
        Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
        Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
        +doxygen 1.5.1
        diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsSolutionBM.html b/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsSolutionBM.html index ba580ec01..da4e4466d 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsSolutionBM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsSolutionBM.html @@ -4,7 +4,7 @@ - + -

        moeoVectorVsSolutionBM< EOT, R, EOFitness > Class Template Reference

        Base class for binary metrics dedicated to the performance comparison between a Pareto set (a vector of Pareto fitnesses) and a single solution's Pareto fitness. +

        moeoVectorVsSolutionBM< EOT, R, EOFitness > Class Template Reference

        Base class for binary metrics dedicated to the performance comparison between a Pareto set (a vector of Pareto fitnesses) and a single solution's Pareto fitness. More...

        #include <moeoMetric.h> @@ -36,13 +36,13 @@

        Inheritance diagram for moeoVectorVsSolutionBM< EOT, R, EOFitness >:

        -moeoBM< const std::vector< EOFitness > &, const EOFitness &, R > -eoBF< const std::vector< EOFitness > &, const EOFitness &, R > -moeoMetric -eoFunctorBase -eoFunctorBase +moeoBM< A1, A2, R > +eoBF< A1, A2, R > +moeoMetric +eoFunctorBase +eoFunctorBase -List of all members. +

        Detailed Description

        @@ -55,8 +55,8 @@ Base class for binary metrics dedicated to the performance comparison between a

        Definition at line 82 of file moeoMetric.h.


        The documentation for this class was generated from the following file: -
        Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
        Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
        +doxygen 1.5.1
        diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsSolutionBM.png b/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsSolutionBM.png index c2920bdfc2e6a02ed9a4e9c6885caecfb4347f6f..2fce3121080c7f36d413a7d469cb45dabc357661 100644 GIT binary patch literal 1770 zcmc&#XH*kb6b?{8_Na^^3TTmr%7%h)08K&JB8d+0AYavD4&T4PHRemmf%u#cY)aR`FsK7^C=jNe}Mq)8HGYg>gKZqu277J z8yIln-Dn5^AeQQAcM=l+V5$5<(L)P)do9Z^Cqf9X4Y#7A%XOR9&Jb*`rgM2 zw=yghbm%@(K4#S83}3c)|B1{g7k&hiYgMXdIFed8h?X_MQe8q@tALzjvz9~H0h8JWIAZwlF8sa-$!7DNw z4+=m&-cm~9B-xXMG&1UVxw~qEXyrW~Mquwf7z_o^n`c@)BHkj4L1RtdWRLZs%Hgpq`7kE*KvX`E<0%@$rGrU`An zFu6?|FnqEy-Wjfqx&rS}R&yQao%MY~h`YpwA&!kG;;VrgiS|7{XJGSZ!SyrPpfIA# zRR?fo!xdC3RhH2OQ8(4fEuq=S_abp9awiqi(cy7=o~amov@G$x;*BBn%Y)(0)vVyJ zSIJFMQ7C#){~USEQP||}3_6x=bnfK{9=_c@JjAH6?oAv-^Wf$Ek^xNePxpSPyU0Wm zEK78eI;3#RhRLg8%;j1ejMOzf4{ObnKv6n=DMXjL>jwr|ts`*cmU7FB$q`kBJxLfI zU0)8oSr`m72wYCC=la2rI>$mM?q{EBvw8Ri$XMLOR=f&cW;NQ*?*PE%hQCTepmKpa zGR)FbqO(lc?a=Y>Qp(s8zmHK>B(_CPS~Z;Fa8oESZ*)9G%~-G>!bf@z{}(g2=}n{g z`SpuiQked@#$upeh*M6n|3gLIf%LL2S?JA+t9LAJd(S3B9Ywd(6H9CFVVOzkzE65f_@dDk)ib*%^b6 z^5BDiZRYFSMg%;}XSe(nOh8M8Q%qAZ!LnweJKk#cJafUyIg> z>fU`SgY$qtw!++a78W`OF60Hr^5G=4WiOcJNa@p$9enhGu?JpKqM-*abtgv_>0b)d zFG5}1q$e=s5V3TpN)pM>v;FGR#^>O2Q@KHhpiHc(3G3I?;I zey{klPRZ>uCD&F%4V{kYgv@1VoEj62xs&r~>cj1ZE~KsGt$f2mM7s7gW~Vou^Ej0O zp(RBCYhwt+Km|Fx`t}$^x6DVs7{7o7|8j2iDg>M{hcCT&d2i zI$TtFX`>frz??Gl;fZT`zjy_i7~4Nv#X#GZISt&6b&BK=M-aqVLK_e3Y4hU6!o>ZY zl?L|+)*Nth+ldHX-l4BT3gOR>S5y}P=T=fC-%arJm|jvJ@VFN*A8(nRdb&Ga{mb6` g_Q1Aov_ttq(rfSCn))^x1s@Z@(caCj7UX~HXH1MsZvX%Q literal 1958 zcmbW2eK6bE8pmVnZp+0gU1CeEdP!AngR1=0OKloqQ=y?s(e$pDte4OxrK(qK>1eGs zMGz#Fv8C~rs5V5ZH0@R*LQuu^RxNp1SrqXy%eJ}M?d_dAy)$?2>>uZx&zU*rd1jvT z{XQoz2#wU&{X!Q60_pqv9m9Y?+h7{zYj4xc?)ej8ngtwmJOrUut2L-r^BIh@1seKe z@cI19Pt{V*R_g)=9Sk}u|3@4MwB5u1m`_MLeSscDxZ`f<8!%Pxff~Qkw!7@%Mfjzj zcT{NY@a7X(nqAJTJF45y47zuGXK__pJjGQnEdA2D)IWx6w&tqiTw(wmql@$#3TO*5 zfEI7llYv~0qgTByG*p$60Xj5M>T&jz)_v<<#t+pMDOA&PE8C~fPuZ;Fe)rmK-5*6yl&~A@m$>8wp0R+P& zn)E{*r!n{K)&Lmr2@E&Q$)!rBQT?KZ^J=d{X!1q}^8iw4p0}Dnc(htMV=vZmmscA$ zSqZl~6_cXEiHbmOixzwi42bjAJ#mhZ=@E?O7tm3&L84qikOJf~@C_xPA_9cZc5Jiz zG)HKToedZBlx4)Mc@*hr1=M?sIjefZi=60PsSxe zo~jK&aDe}zChu`wN`Je|uxQ>Gtc9l^kwb;cq;;M79Wszg17`E$3E>#-o^^4Kc;Z^s zStH9__Te6%T;os9?%NLT(aI%!UuFKMQE{36_AgbM)G~Y0f}sfsvg_X=4-+t-IH_UQ z-zH@(V)9v`(Gnk%nAfTsR~dU|V&7tjl zE6phGvpO^EjX-~Mq80!XXAmMQ+TK83&Gwqu6hgv&l)hJ*8L}g;neOU|JK*nl%FF|v z+>tuFUS6iE94^3Ga=o9aHlzB&BrYyNZ_vo1~JX4%0ooU(Z6Ye%Q$&`%X|HT;~-^kXv*w*UW<;j3%9 zS2VIZAae)^`zGo*z=x(fL5p+rAle^k_YZ5omvM@vAlCCpCY81~qB zAr{A#ErxAn+_C=;MYj?N2K|AUqgIgScRLAkx@xJ(`G%q>ni57UHnx3Sbx^0`jV#hG zuO$F@vJvi#Ko_TVh8iW(2=aSH6oGjmvDs#%RVKaK>!fhiUrz9E#Eb3Sz$L^Mn-PJG z;{iP-ksh9Qj>Bpq`2&jkSfj+AF`5M>Ecjn->w{ZwcmlYr%6R0w2+$_g z8vbsRa#xM@B40Mv__b=wzWhl?>wTm9a6{Ac{sgK#A6ZO};dw`L_d4(T;oE(C;Z^%S z#+7S3d7;q{9acIQ21-m*;*DhE=kId79B(JH~dm8 zAo^~K5|S~s>K#aS=*v6^p-$0FCX6uZc;RJ~eT!#k?eqRB%)o*_S`Qn(J$64SWEs7x{tc!rwaDH*8_P$`RX ziKnaIoQNSqr!KUH`W86*EWT9i@*YNJGAJ?_Qz%PXFjvybGtt=uU-PXaZ(xjhiNVL^ k|F1`3lFH(-1{Brq^!m!5IU5`Gnokwvk3b(|e|t<8 diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsVectorBM.html b/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsVectorBM.html index 3ebe8fe14..ac6dd93f4 100644 --- a/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsVectorBM.html +++ b/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsVectorBM.html @@ -4,7 +4,7 @@ - + -

        moeoVectorVsVectorBM< EOT, R, EOFitness > Class Template Reference

        Base class for binary metrics dedicated to the performance comparison between two Pareto sets (two vectors of Pareto fitnesses). +

        moeoVectorVsVectorBM< EOT, R, EOFitness > Class Template Reference

        Base class for binary metrics dedicated to the performance comparison between two Pareto sets (two vectors of Pareto fitnesses). More...

        #include <moeoMetric.h> @@ -36,13 +36,13 @@

        Inheritance diagram for moeoVectorVsVectorBM< EOT, R, EOFitness >:

        -moeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R > -eoBF< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R > -moeoMetric -eoFunctorBase -eoFunctorBase +moeoBM< A1, A2, R > +eoBF< A1, A2, R > +moeoMetric +eoFunctorBase +eoFunctorBase -List of all members. +

        Detailed Description

        @@ -55,8 +55,8 @@ Base class for binary metrics dedicated to the performance comparison between tw

        Definition at line 95 of file moeoMetric.h.


        The documentation for this class was generated from the following file: -
        Generated on Fri Dec 22 09:37:12 2006 for ParadisEO-MOEO by  +
        Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
        +doxygen 1.5.1
        diff --git a/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsVectorBM.png b/trunk/paradiseo-moeo/docs/html/classmoeoVectorVsVectorBM.png index a155d006ba1cbf00c68c40fc209a17622dbb420e..1c3bcd6ce322fcd972b44157e985af2bab0ac7b7 100644 GIT binary patch literal 1711 zcma)7c~sI_6sF0Fad!s9rEQor#WEMN1Z^>Y3T}yzyC&s^W=?LE20E2fA}VHXk*ScD zI;bh8R+?j3Zlgg8TCRn=rkRFh#V}4Y!6OV=2WAGHazf>?dNf^iXrOBLEVKL<%L6hTL2qx)iOfhK7ciMu|{*T@&Ht zfCn8I?ePbJ)&p3}gM>5JXL4|1C3}^D{6fSa2CZEAb5XW}Sa11g;~{niowi*7KGw2y z<3VN|%|4v&PUua#B)Ru0mpEL;$6b||beO9^s*;&Qp$H2{m5bD^1R2x3X0O|ji>-};+^_l_cDwL zJtPWW(u`5|=2k5Cwhm|&_nP8_nZAtvE}ePra~tmkdIi4a(H5BHlR+Qw1#p;1Lp8~2 zJXXBKD`t-$-T+abz;c~?>bgCJkAm`>v-+GJZ`NX%=hB%?76XYk05MPenUJm(3{_7P zG0}k0GuoEG-Dy~_UDslrw~e(r7tBn0BPG9LDEEswWF*X#VS#{DwFBCKD>l&L*#N@;I;gji(BkqhB^1#_1c&b-&Psk$Jdj@ohiY*OEi z(A>jxBQq)?hRam)Sh1`|ycd-(OE|JEMxm*3O7#=~ok^Ug!-M6c#4NwH>&>ag!7Br36oK^V~U&zgj$80GqgD`>JEs$7$jA*<2PL(qupmsT?2- z`B6t})dCIGOWn4Yb*8WtqPY(cJcjH82kr&Wi;y}4Sib^COv!)aSK^O6UXg&*<+c5& zxrOqHrftGk5AhED!Qf$#)pB;9^>zBV>VNpH$arGr^=WD56^ls2BB>RVyF;2?rms&nM^UQh(;+P`Y5`3t zCd=RS&6&?Shs+?tVgdkB_kt2cOFc|3PKglVV!!`s*r{640o;?#(e%VNBbnSyA))N? z(q_RJ90y6Jlwb-1^`rS*EyxHUiJHLn{_e_zi#z5#1@Dse^8;_l0nyVYZ75zYuOG8u zVwBsJIM0+AJUFJltVG?n9p-0zEdjd7wWJR-;rn~0KjMsEq-|uABp|>#ls319n*4A3 z1epmuZmK%o#(ioDDE;XC8Y?yaLzM7M9{jN&(sobBd8&b(;P1z-(*FNZbUi%{dlwG> z?d3a>pmk(`wE!g?jl#P<&<_CO(*1zm%rAa z>aFd^3u}fsAFufm?PB7%oUwAIAIUSro^LivO;6qEP zP!hwETQP*rnmlWjD$)=sTjeBZMqaY|v?iFL*U?2{+`T|ijC!LroC=lmaG%@q9r literal 2164 zcmb7`eK^x=AHY{gI8;Za#BiNbiV1nCyi8dd=50Dn2_^GB#b%hSl%$1}(`v|T3Okr& znTA7@EHoxB=Qm2k#=QGsWoPF(&vUN2p69xr>-=%w_vilp^}W8|&-cFWWLIZxJZ|R>fyn$W{r4pQP6{ zcz0(s1U}k}g+SITBJFHFqO&HmPe&A5Y((hj=GUi3X=7znO?H$RPLUO^8lw&O5Sf$5 z#-ET}m|-_dj_j1z={p-ql|YsQ4lcEk3@tIMz>F)vCw*ub>`sv-9JK{pUClQ~5|TEu z?2F4%R6!k+Geq@}TZGA%mtJ#tR>3Gj7^`mn=TRY4tA!Ocn{16F9&#QY{?gv8nS;I= zgSrtzxaG-w0rxh!n#{VIK_h4(L~g+u{a}V2(fiJOj_)1OgvH4aiqSYNZmsM%u(BT| z_&kSy?4Ai*cUWZ^ZLPR)Hmj@Svp|L0M2Rsl?(fZ}kk0@*^P?x2DL{n2wX8 zvG0G5w+;~*yAju4nzA0hM~Qi@Hizuu1+htz8r;F!VY=P`htHOHG2@({7KN(#5pO=5 zwgrW0Kpr&74QxvR0FEWXz|5!VJQk)_xtUwq!2x|EyDUQ!F)gAC8fhmpACOI!(58Ey z>`)Y3PhjQc;{L+57$#WW7z_DAc@=M|F%UJ91gborp60JH)Fw!x=lC*)d?=qZ1R)%q zS?9TMrz7&EYBq}z9X)kf?Kav}(DLyETgF>jq_@dl0+WHmCLPnTKG z&y@Q+M;L4FZFAGytsC8SS-8X2mQJzc**!{AgGuCbs?<;NK0vE=f8zldYgmj_s2Apk z>Ym9F`YcQ&lW5One>o^jjnZvTbrBNY!>@STdFtu;aP4=l?sJ%cCre6dFpE%er``3< z`lg{9j;59U>J->`n)rrvj^NmkRJdhRAO}%bC?tDOv)ap_U zTigc5_7W%aPW@gi{N--o7~x`?YG!9Sk4Y8%xc6QcaUz;DUY2C#sohyo`6#ZLkDw>9 zg|T8DqVIm3@``qLKl`ad_IfcWVvkp|zT)d`qNo=c%JfssdTOQ0bV7eti*nT!(|hq2 zj}$&L#CW5@4yCTePsS!2^1|z!-;X$y+8Z|)1_T6$bG_)Z4`)#f4|TzOY?fJ)vGw5K zH8IDFQ~h9>pU@pu{-8!))miu$HT^gk>a=9kG^hLjTuUS)*2)#));ZcrCv`tYQSsk8 z!JT%Y2EOj@%#v$F=lo9@ve)(nd8-yHVGBev7aWIPQ@sL%QORqfJDMYr%meAHE;TP= z>aL1`C91|#ZzeEgBcF(_b#Op<&J(&p$Wj zRW<)KPw08=WGz=0MR1s-1zwEm1`fGC7ISMuKJte0H5Ypp9@bQ(JcBb1J!}ukZ^?86 z{U>_1hfBrKFEgtU*lMlo>HX6Tjif)#;Kf@MD5L_8UBFw;RsWmW*wNTAeE*BKs)GU} z{k$6EFxZsd;O0^ars(}})xivC99cE%fs)APMC6U?e4Ne0)%~CO|1E+i6Es{y8oJcE z=|j#IxU|c;E&R(zfa70=E+Nx%arzb~u720Tzn`mr7S+VaX!GTPG#*J_15WRQ>uWNw zG7S7nn(|BTrVz7@j`sAvC6hl@Xrxr(epB&}rgpMQ*%mm#{ zd{#Z}|3plQa{?Jv(6+qO?8SlJ34@TBip6lrq3*A4)dfrg?$msnyB758{;|2zZNR-jY3_K+ZGDGPG+XpyulRNL^Wc5EZR5q&C6fVcQmNQ%9v4 h3 { margin-top: 0; } +.directory p { margin: 0px; white-space: nowrap; } +.directory div { display: none; margin: 0px; } +.directory img { vertical-align: -30%; } diff --git a/trunk/paradiseo-moeo/docs/html/files.html b/trunk/paradiseo-moeo/docs/html/files.html index 3c31c0597..842f85447 100644 --- a/trunk/paradiseo-moeo/docs/html/files.html +++ b/trunk/paradiseo-moeo/docs/html/files.html @@ -4,7 +4,7 @@ - +

        ParadisEO-MOEO File List

        Here is a list of all documented files with brief descriptions: - - - - @@ -33,19 +29,24 @@ + + + + +
        eoBinaryQualityIndicator.h [code]
        eoIBEA.h [code]
        eoParetoPhenDist.h [code]
        eoParetoSharing.h [code]
        index.h [code]
        make_algo_MOEO.h [code]
        moeo.h [code]
        moeoArchiveFitnessSavingUpdater.h [code]
        moeoArchiveUpdater.h [code]
        moeoBinaryMetricSavingUpdater.h [code]
        moeoBinaryQualityIndicator.h [code]
        moeoCombinedMOLS.h [code]
        moeoContributionMetric.h [code]
        moeoEntropyMetric.h [code]
        moeoHybridMOLS.h [code]
        moeoIBEA.h [code]
        moeoMetric.h [code]
        moeoMOLS.h [code]
        moeoNDSorting.h [code]
        moeoNSGA_II.h [code]
        moeoParetoPhenDist.h [code]
        moeoParetoSharing.h [code]
        moeoReplacement.h [code]
        moeoSelectOneFromPopAndArch.h [code]
        README [code]
        -
        Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
        Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
        +doxygen 1.5.1
        diff --git a/trunk/paradiseo-moeo/docs/html/functions.html b/trunk/paradiseo-moeo/docs/html/functions.html index b8c3a1a48..35e6b396a 100644 --- a/trunk/paradiseo-moeo/docs/html/functions.html +++ b/trunk/paradiseo-moeo/docs/html/functions.html @@ -4,7 +4,7 @@ - +

      - c -

      +: moeoIBEA< EOT, Fitness > +
    • card_C() +: moeoContributionMetric< EOT > +
    • card_N() +: moeoContributionMetric< EOT > +
    • card_W() +: moeoContributionMetric< EOT > +
    • combinedMOLS +: moeoCombinedMOLS< EOT > +
    • computeUnion() +: moeoEntropyMetric< EOT > +
    • contains() +: moeoArchive< EOT > +
    • continuator +: moeoNSGA_II< EOT > +
    • counter +: moeoArchiveFitnessSavingUpdater< EOT > +, moeoBinaryMetricSavingUpdater< EOT > +
    • createNewPop() +: moeoDisctinctElitistReplacement< EOT, WorthT > +

    - d -

    +: moeoParetoSharing< EOT, worthT > +
  • dMatrix() +: moeoParetoSharing< EOT, worthT >::dMatrix +
  • Dmax +: moeoParetoSharing< EOT, worthT > +
  • dominates() +: moeoArchive< EOT > +
  • double_index_pair +: moeoNDSorting_II< EOT > +

- e -

+
  • EOFitness +: moeoBinaryMetricSavingUpdater< EOT > +, moeoContributionMetric< EOT > +, moeoArchive< EOT > +, moeoEntropyMetric< EOT > +
  • eoHybridMOLS() +: moeoHybridMOLS< EOT > +
  • epsilonValue() +: moeoAdditiveBinaryEpsilonIndicator< EOFitness > +
  • euc_dist +: moeoParetoSharing< EOT, worthT > +
  • euclidianDistance() +: moeoEntropyMetric< EOT > +
  • eval +: moeoCombinedMOLS< EOT > +, moeoNSGA_II< EOT > +

    - f -

    +: moeoBinaryMetricSavingUpdater< EOT > +, moeoArchiveFitnessSavingUpdater< EOT > +
  • firstGen +: moeoBinaryMetricSavingUpdater< EOT > +
  • fitnesses() +: moeoIBEASorting< EOT, Fitness > +, moeoIBEAAvgSorting< EOT, FitnessEval > +, moeoIBEAStochSorting< EOT, FitnessEval > +

    - g -

    +: moeoNSGA_II< EOT > +

    - h -

    +: moeoEntropyMetric< EOT > +
  • hypervolumeIndicatorValue() +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • hypervolumeIndicatorValueMax() +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • hypervolumeIndicatorValueMin() +: moeoBinaryHypervolumeIndicator< EOFitness > +

    - i -

    +: moeoIBEA< EOT, Fitness > +
  • id +: moeoArchiveFitnessSavingUpdater< EOT > +

    - k -

    +: moeoIBEASorting< EOT, Fitness > +, moeoIBEAAvgSorting< EOT, FitnessEval > +

    - l -

    +: moeoNSGA_II< EOT > +

    - m -

    +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • maximum() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • metric +: moeoBinaryMetricSavingUpdater< EOT > +
  • min +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • minimum() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • moeoAdditiveBinaryEpsilonIndicator() +: moeoAdditiveBinaryEpsilonIndicator< EOFitness > +
  • moeoArchiveFitnessSavingUpdater() +: moeoArchiveFitnessSavingUpdater< EOT > +
  • moeoArchiveUpdater() +: moeoArchiveUpdater< EOT > +
  • moeoBinaryHypervolumeIndicator() +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • moeoBinaryMetricSavingUpdater() +: moeoBinaryMetricSavingUpdater< EOT > +
  • moeoBinaryQualityIndicator() +: moeoBinaryQualityIndicator< EOFitness > +
  • moeoCombinedMOLS() +: moeoCombinedMOLS< EOT > +
  • moeoDisctinctElitistReplacement() +: moeoDisctinctElitistReplacement< EOT, WorthT > +
  • moeoElitistReplacement() +: moeoElitistReplacement< EOT, WorthT > +
  • moeoIBEA() +: moeoIBEA< EOT, Fitness > +
  • moeoIBEAAvgSorting() +: moeoIBEAAvgSorting< EOT, FitnessEval > +
  • moeoIBEASorting() +: moeoIBEASorting< EOT, Fitness > +
  • moeoIBEAStochSorting() +: moeoIBEAStochSorting< EOT, FitnessEval > +
  • moeoNDSorting_II() +: moeoNDSorting_II< EOT > +
  • moeoNSGA_II() +: moeoNSGA_II< EOT > +
  • moeoParetoSharing() +: moeoParetoSharing< EOT, worthT > +
  • moeoSelectOneFromPopAndArch() +: moeoSelectOneFromPopAndArch< EOT > +
  • mols +: moeoHybridMOLS< EOT > +

    - n -

    +: moeoNDSorting_II< EOT > +
  • nicheSize +: moeoParetoSharing< EOT, worthT > +
  • normalize() +: moeoEntropyMetric< EOT > +

    - o -

    +: moeoBinaryMetricSavingUpdater< EOT > +
  • operator() +: moeoParetoSharing< EOT, worthT > +
  • operator()() +: moeoParetoEuclidDist< EOT, DistType > +, moeoBinaryHypervolumeIndicator< EOFitness > +, moeoAdditiveBinaryEpsilonIndicator< EOFitness > +, moeoSelectOneFromPopAndArch< EOT > +, moeoDisctinctElitistReplacement< EOT, WorthT > +, moeoElitistReplacement< EOT, WorthT > +, moeoNSGA_II< EOT > +, moeoNDSorting_II< EOT >::compare_nodes +, moeoEntropyMetric< EOT > +, moeoCombinedMOLS< EOT > +, moeoArchiveUpdater< EOT > +, moeoArchiveFitnessSavingUpdater< EOT > +, moeoBinaryMetricSavingUpdater< EOT > +, moeoContributionMetric< EOT > +, moeoHybridMOLS< EOT > +

    - p -

    +: moeoElitistReplacement< EOT, WorthT > +, moeoDisctinctElitistReplacement< EOT, WorthT > +
  • pop +: moeoArchiveUpdater< EOT > +, moeoBinaryMetricSavingUpdater< EOT > +
  • popEval +: moeoNSGA_II< EOT > +
  • popSelectOne +: moeoSelectOneFromPopAndArch< EOT > +
  • prenormalize() +: moeoEntropyMetric< EOT > +
  • printOn() +: moeoParetoSharing< EOT, worthT >::dMatrix +

    - r -

    +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • randomSelect +: moeoSelectOneFromPopAndArch< EOT > +
  • Range() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • range() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • ratioFromPop +: moeoSelectOneFromPopAndArch< EOT > +
  • removeDominated() +: moeoEntropyMetric< EOT > +
  • replace +: moeoNSGA_II< EOT > +
  • rho +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • rSize +: moeoParetoSharing< EOT, worthT >::dMatrix +

    - s -

    +: moeoHybridMOLS< EOT > +
  • selectOne +: moeoNSGA_II< EOT > +
  • setBounds() +: moeoBinaryQualityIndicator< EOFitness > +, moeoIBEAStochSorting< EOT, FitnessEval > +, moeoIBEAAvgSorting< EOT, FitnessEval > +, moeoIBEASorting< EOT, Fitness > +
  • setup() +: moeoSelectOneFromPopAndArch< EOT > +
  • sh() +: moeoParetoSharing< EOT, worthT > +
  • sorting +: moeoNSGA_II< EOT > +

    - t -

    +: moeoHybridMOLS< EOT > +
  • traits +: moeoBinaryHypervolumeIndicator< EOFitness > +, moeoAdditiveBinaryEpsilonIndicator< EOFitness > +, moeoBinaryQualityIndicator< EOFitness > +

    - u -

    +: moeoArchive< EOT > +

    - v -

    +: moeoEntropyMetric< EOT > +
  • vect_min_val +: moeoEntropyMetric< EOT > +

    - z -

    -
    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +: moeoIBEAStochSorting< EOT, FitnessEval > + +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/functions_func.html b/trunk/paradiseo-moeo/docs/html/functions_func.html index efab9e850..b93c2b304 100644 --- a/trunk/paradiseo-moeo/docs/html/functions_func.html +++ b/trunk/paradiseo-moeo/docs/html/functions_func.html @@ -4,7 +4,7 @@ - +
  • card_C() +: moeoContributionMetric< EOT > +
  • card_N() +: moeoContributionMetric< EOT > +
  • card_W() +: moeoContributionMetric< EOT > +
  • computeUnion() +: moeoEntropyMetric< EOT > +
  • contains() +: moeoArchive< EOT > +
  • createNewPop() +: moeoDisctinctElitistReplacement< EOT, WorthT > +

    - d -

    +: moeoParetoSharing< EOT, worthT >::dMatrix +
  • dominates() +: moeoArchive< EOT > +

    - e -

    +
  • eoHybridMOLS() +: moeoHybridMOLS< EOT > +
  • epsilonValue() +: moeoAdditiveBinaryEpsilonIndicator< EOFitness > +
  • euclidianDistance() +: moeoEntropyMetric< EOT > +

    - f -

    +: moeoIBEASorting< EOT, Fitness > +, moeoIBEAAvgSorting< EOT, FitnessEval > +, moeoIBEAStochSorting< EOT, FitnessEval > +

    - h -

    +: moeoEntropyMetric< EOT > +
  • hypervolumeIndicatorValue() +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • hypervolumeIndicatorValueMax() +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • hypervolumeIndicatorValueMin() +: moeoBinaryHypervolumeIndicator< EOFitness > +

    - m -

    +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • minimum() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • moeoAdditiveBinaryEpsilonIndicator() +: moeoAdditiveBinaryEpsilonIndicator< EOFitness > +
  • moeoArchiveFitnessSavingUpdater() +: moeoArchiveFitnessSavingUpdater< EOT > +
  • moeoArchiveUpdater() +: moeoArchiveUpdater< EOT > +
  • moeoBinaryHypervolumeIndicator() +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • moeoBinaryMetricSavingUpdater() +: moeoBinaryMetricSavingUpdater< EOT > +
  • moeoBinaryQualityIndicator() +: moeoBinaryQualityIndicator< EOFitness > +
  • moeoCombinedMOLS() +: moeoCombinedMOLS< EOT > +
  • moeoDisctinctElitistReplacement() +: moeoDisctinctElitistReplacement< EOT, WorthT > +
  • moeoElitistReplacement() +: moeoElitistReplacement< EOT, WorthT > +
  • moeoIBEA() +: moeoIBEA< EOT, Fitness > +
  • moeoIBEAAvgSorting() +: moeoIBEAAvgSorting< EOT, FitnessEval > +
  • moeoIBEASorting() +: moeoIBEASorting< EOT, Fitness > +
  • moeoIBEAStochSorting() +: moeoIBEAStochSorting< EOT, FitnessEval > +
  • moeoNDSorting_II() +: moeoNDSorting_II< EOT > +
  • moeoNSGA_II() +: moeoNSGA_II< EOT > +
  • moeoParetoSharing() +: moeoParetoSharing< EOT, worthT > +
  • moeoSelectOneFromPopAndArch() +: moeoSelectOneFromPopAndArch< EOT > +

    - n -

    +: moeoNDSorting_II< EOT > +
  • normalize() +: moeoEntropyMetric< EOT > +

    - o -

    +: moeoParetoSharing< EOT, worthT > +
  • operator()() +: moeoNDSorting_II< EOT >::compare_nodes +, moeoParetoEuclidDist< EOT, DistType > +, moeoBinaryHypervolumeIndicator< EOFitness > +, moeoAdditiveBinaryEpsilonIndicator< EOFitness > +, moeoSelectOneFromPopAndArch< EOT > +, moeoDisctinctElitistReplacement< EOT, WorthT > +, moeoElitistReplacement< EOT, WorthT > +, moeoNSGA_II< EOT > +, moeoArchiveFitnessSavingUpdater< EOT > +, moeoHybridMOLS< EOT > +, moeoCombinedMOLS< EOT > +, moeoArchiveUpdater< EOT > +, moeoContributionMetric< EOT > +, moeoEntropyMetric< EOT > +, moeoBinaryMetricSavingUpdater< EOT > +

    - p -

    +: moeoEntropyMetric< EOT > +
  • printOn() +: moeoParetoSharing< EOT, worthT >::dMatrix +

    - r -

    +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • range() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • Range() +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • removeDominated() +: moeoEntropyMetric< EOT > +

    - s -

    +: moeoBinaryQualityIndicator< EOFitness > +, moeoIBEAStochSorting< EOT, FitnessEval > +, moeoIBEAAvgSorting< EOT, FitnessEval > +, moeoIBEASorting< EOT, Fitness > +
  • setup() +: moeoSelectOneFromPopAndArch< EOT > +
  • sh() +: moeoParetoSharing< EOT, worthT > +

    - u -

    +: moeoArchive< EOT > +

    - z -

    -
    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +: moeoIBEAStochSorting< EOT, FitnessEval > + +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/functions_type.html b/trunk/paradiseo-moeo/docs/html/functions_type.html index 111cd219f..41615f79c 100644 --- a/trunk/paradiseo-moeo/docs/html/functions_type.html +++ b/trunk/paradiseo-moeo/docs/html/functions_type.html @@ -4,7 +4,7 @@ - +
    +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/functions_vars.html b/trunk/paradiseo-moeo/docs/html/functions_vars.html index 36fa02d79..9a572af67 100644 --- a/trunk/paradiseo-moeo/docs/html/functions_vars.html +++ b/trunk/paradiseo-moeo/docs/html/functions_vars.html @@ -4,7 +4,7 @@ - +
  • breed +: moeoNSGA_II< EOT > +

    - c -

    +: moeoCombinedMOLS< EOT > +
  • continuator +: moeoNSGA_II< EOT > +
  • counter +: moeoBinaryMetricSavingUpdater< EOT > +, moeoArchiveFitnessSavingUpdater< EOT > +

    - d -

    +: moeoParetoSharing< EOT, worthT > +
  • Dmax +: moeoParetoSharing< EOT, worthT > +

    - e -

    +: moeoParetoSharing< EOT, worthT > +
  • eval +: moeoCombinedMOLS< EOT > +, moeoNSGA_II< EOT > +

    - f -

    +: moeoBinaryMetricSavingUpdater< EOT > +, moeoArchiveFitnessSavingUpdater< EOT > +
  • firstGen +: moeoBinaryMetricSavingUpdater< EOT > +

    - g -

    +: moeoNSGA_II< EOT > +

    - i -

    +: moeoIBEA< EOT, Fitness > +
  • id +: moeoArchiveFitnessSavingUpdater< EOT > +

    - k -

    +: moeoIBEASorting< EOT, Fitness > +, moeoIBEAAvgSorting< EOT, FitnessEval > +

    - l -

    +: moeoNSGA_II< EOT > +

    - m -

    +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • metric +: moeoBinaryMetricSavingUpdater< EOT > +
  • min +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • mols +: moeoHybridMOLS< EOT > +

    - n -

    +: moeoParetoSharing< EOT, worthT > +

    - o -

    +: moeoBinaryMetricSavingUpdater< EOT > +

    - p -

    +: moeoElitistReplacement< EOT, WorthT > +, moeoDisctinctElitistReplacement< EOT, WorthT > +
  • pop +: moeoBinaryMetricSavingUpdater< EOT > +, moeoArchiveUpdater< EOT > +
  • popEval +: moeoNSGA_II< EOT > +
  • popSelectOne +: moeoSelectOneFromPopAndArch< EOT > +

    - r -

    +: moeoBinaryQualityIndicator< EOFitness >::Range +
  • randomSelect +: moeoSelectOneFromPopAndArch< EOT > +
  • ratioFromPop +: moeoSelectOneFromPopAndArch< EOT > +
  • replace +: moeoNSGA_II< EOT > +
  • rho +: moeoBinaryHypervolumeIndicator< EOFitness > +
  • rSize +: moeoParetoSharing< EOT, worthT >::dMatrix +

    - s -

    +: moeoHybridMOLS< EOT > +
  • selectOne +: moeoNSGA_II< EOT > +
  • sorting +: moeoNSGA_II< EOT > +

    - t -

    +: moeoHybridMOLS< EOT > +

    - v -

    -
    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +: moeoEntropyMetric< EOT > +
  • vect_min_val +: moeoEntropyMetric< EOT > + +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/hierarchy.html b/trunk/paradiseo-moeo/docs/html/hierarchy.html index 3aeb96911..c44b723a7 100644 --- a/trunk/paradiseo-moeo/docs/html/hierarchy.html +++ b/trunk/paradiseo-moeo/docs/html/hierarchy.html @@ -4,7 +4,7 @@ - +

    ParadisEO-MOEO Class Hierarchy

    This inheritance list is sorted roughly, but not completely, alphabetically:

  • Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1 diff --git a/trunk/paradiseo-moeo/docs/html/installdox b/trunk/paradiseo-moeo/docs/html/installdox index 294677f26..1628445b3 100755 --- a/trunk/paradiseo-moeo/docs/html/installdox +++ b/trunk/paradiseo-moeo/docs/html/installdox @@ -1,6 +1,6 @@ #!/usr/bin/perl -%subst = ( "eo.doxytag", "", "mo.doxytag", ""); +%subst = ( "eo.doxytag", ""); $quiet = 0; if (open(F,"search.cfg")) diff --git a/trunk/paradiseo-moeo/docs/html/main.html b/trunk/paradiseo-moeo/docs/html/main.html index f767f19dd..658dbe127 100644 --- a/trunk/paradiseo-moeo/docs/html/main.html +++ b/trunk/paradiseo-moeo/docs/html/main.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -29,10 +29,10 @@ ParadisEO-MOEO is a white-box object-oriented generic framework dedicated to the tutorial A tutorial about a bi-objective flow-shop scheduling problem will be available soon.

      install

      -The installation procedure of the package is detailed in the README file in the top-directory of the source-tree.

      +The installation procedure of the package is detailed in the README file in the top-directory of the source-tree.

      design

      -For an introduction to the design of ParadisEO-MOEO, you can look at the ParadisEO website.
      Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +For an introduction to the design of ParadisEO-MOEO, you can look at the ParadisEO website.
      Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
      +doxygen 1.5.1
      diff --git a/trunk/paradiseo-moeo/docs/html/moeoArchiveFitnessSavingUpdater_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoArchiveFitnessSavingUpdater_8h-source.html index b5be5e872..1a7e023b8 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoArchiveFitnessSavingUpdater_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoArchiveFitnessSavingUpdater_8h-source.html @@ -4,7 +4,7 @@ - +

      Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +

    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1 diff --git a/trunk/paradiseo-moeo/docs/html/moeoArchiveUpdater_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoArchiveUpdater_8h-source.html index 4c9c19807..51b540ec2 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoArchiveUpdater_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoArchiveUpdater_8h-source.html @@ -4,7 +4,7 @@ - +

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoArchive_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoArchive_8h-source.html index 664965893..b6a04f19a 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoArchive_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoArchive_8h-source.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -38,7 +38,7 @@ 00015 00016 #include <eoPop.h> 00017 -00021 template < class EOT > class moeoArchive:public eoPop < EOT > +00021 template < class EOT > class moeoArchive:public eoPop < EOT > 00022 { 00023 public: 00024 @@ -49,15 +49,15 @@ 00029 00033 typedef typename EOT::Fitness EOFitness; 00034 -00039 bool dominates (const EOFitness & _fit) const +00039 bool dominates (const EOFitness & _fit) const 00040 { 00041 for (unsigned i = 0; i < size; i++) -00042 if (operator[](i).fitness ().dominates (_fit)) +00042 if (operator[](i).fitness ().dominates (_fit)) 00043 return true; 00044 return false; 00045 } 00046 -00051 bool contains (const EOFitness & _fit) const +00051 bool contains (const EOFitness & _fit) const 00052 { 00053 for (unsigned i = 0; i < size; i++) 00054 if (operator[](i).fitness () == _fit) @@ -87,7 +87,7 @@ 00082 // Dominated ? 00083 bool dom = false; 00084 for (unsigned j = 0; j < size (); j++) -00085 if (operator [](j).fitness ().dominates (_eo.fitness ())) +00085 if (operator [](j).fitness ().dominates (_eo.fitness ())) 00086 { 00087 dom = true; 00088 break; @@ -96,17 +96,17 @@ 00091 push_back (_eo); 00092 } 00093 -00098 void update (const eoPop < EOT > &_pop) +00098 void update (const eoPop < EOT > &_pop) 00099 { 00100 for (unsigned i = 0; i < _pop.size (); i++) -00101 update (_pop[i]); +00101 update (_pop[i]); 00102 } 00103 00104 }; 00105 00106 #endif /*MOEOARCHIVE_H_ */ -

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoBinaryMetricSavingUpdater_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoBinaryMetricSavingUpdater_8h-source.html index ec45d57e1..ed1f7a34b 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoBinaryMetricSavingUpdater_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoBinaryMetricSavingUpdater_8h-source.html @@ -4,7 +4,7 @@ - +

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoCombinedMOLS_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoCombinedMOLS_8h-source.html index 132424b1c..40dd31945 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoCombinedMOLS_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoCombinedMOLS_8h-source.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -71,8 +71,8 @@ 00069 }; 00070 00071 #endif /*MOEOCOMBINEDMOLS_H_ */ -

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoContributionMetric_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoContributionMetric_8h-source.html index f45f707a7..dffee073f 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoContributionMetric_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoContributionMetric_8h-source.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -109,8 +109,8 @@ 00114 }; 00115 00116 #endif /*MOEOCONTRIBUTIONMETRIC_H_ */ -

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoEntropyMetric_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoEntropyMetric_8h-source.html index db0276ea8..1e9095ebb 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoEntropyMetric_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoEntropyMetric_8h-source.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -92,10 +92,10 @@ 00082 00083 private: 00084 -00085 std::vector < double >vect_min_val; -00086 std::vector < double >vect_max_val; +00085 std::vector < double >vect_min_val; +00086 std::vector < double >vect_max_val; 00087 -00088 void removeDominated (std::vector < EOFitness > &_f) +00088 void removeDominated (std::vector < EOFitness > &_f) 00089 { 00090 for (unsigned i = 0; i < _f.size (); i++) 00091 { @@ -115,10 +115,10 @@ 00105 } 00106 } 00107 -00108 void prenormalize (const std::vector < EOFitness > &_f) +00108 void prenormalize (const std::vector < EOFitness > &_f) 00109 { -00110 vect_min_val.clear (); -00111 vect_max_val.clear (); +00110 vect_min_val.clear (); +00111 vect_max_val.clear (); 00112 00113 for (unsigned char i = 0; i < EOFitness::fitness_traits::nObjectives (); 00114 i++) @@ -131,20 +131,20 @@ 00121 if (_f[j][i] > max_val) 00122 max_val = _f[j][i]; 00123 } -00124 vect_min_val.push_back (min_val); -00125 vect_max_val.push_back (max_val); +00124 vect_min_val.push_back (min_val); +00125 vect_max_val.push_back (max_val); 00126 } 00127 } 00128 -00129 void normalize (std::vector < EOFitness > &_f) +00129 void normalize (std::vector < EOFitness > &_f) 00130 { 00131 for (unsigned i = 0; i < EOFitness::fitness_traits::nObjectives (); i++) 00132 for (unsigned j = 0; j < _f.size (); j++) 00133 _f[j][i] = -00134 (_f[j][i] - vect_min_val[i]) / (vect_max_val[i] - vect_min_val[i]); +00134 (_f[j][i] - vect_min_val[i]) / (vect_max_val[i] - vect_min_val[i]); 00135 } 00136 -00137 void computeUnion (const std::vector < EOFitness > &_f1, +00137 void computeUnion (const std::vector < EOFitness > &_f1, 00138 const std::vector < EOFitness > &_f2, 00139 std::vector < EOFitness > &_f) 00140 { @@ -163,19 +163,19 @@ 00153 } 00154 } 00155 -00156 unsigned howManyInNicheOf (const std::vector < EOFitness > &_f, -00157 const EOFitness & _s, unsigned _size) +00156 unsigned howManyInNicheOf (const std::vector < EOFitness > &_f, +00157 const EOFitness & _s, unsigned _size) 00158 { 00159 unsigned n = 0; 00160 for (unsigned i = 0; i < _f.size (); i++) 00161 { -00162 if (euclidianDistance (_f[i], _s) < (_s.size () / (double) _size)) +00162 if (euclidianDistance (_f[i], _s) < (_s.size () / (double) _size)) 00163 n++; 00164 } 00165 return n; 00166 } 00167 -00168 double euclidianDistance (const EOFitness & _set1, const EOFitness & _to, +00168 double euclidianDistance (const EOFitness & _set1, const EOFitness & _to, 00169 unsigned _deg = 2) 00170 { 00171 double dist = 0; @@ -187,8 +187,8 @@ 00177 }; 00178 00179 #endif /*MOEOENTROPYMETRIC_H_ */ -

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoHybridMOLS_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoHybridMOLS_8h-source.html index 191bbec2d..f6df69e4e 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoHybridMOLS_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoHybridMOLS_8h-source.html @@ -4,7 +4,7 @@ - +

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoMOLS_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoMOLS_8h-source.html index 9b0f49dba..9edb7898b 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoMOLS_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoMOLS_8h-source.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -39,14 +39,14 @@ 00016 #include <eoFunctor.h> 00017 #include <moeoArchive.h> 00018 -00023 template < class EOT > class moeoMOLS:public eoBF < const EOT &, moeoArchive < EOT > &, +00023 template < class EOT > class moeoMOLS:public eoBF < const EOT &, moeoArchive < EOT > &, 00024 void > 00025 { 00026 }; 00027 00028 #endif /*MOEOMOLS_H_ */ -

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoMetric_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoMetric_8h-source.html index 78522143c..e9610c120 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoMetric_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoMetric_8h-source.html @@ -4,7 +4,7 @@ - +

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoReplacement_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoReplacement_8h-source.html index cecd0b292..b8ffd1a81 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoReplacement_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoReplacement_8h-source.html @@ -4,7 +4,7 @@ - +

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeoSelectOneFromPopAndArch_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeoSelectOneFromPopAndArch_8h-source.html index 148fe3ca7..670a13066 100644 --- a/trunk/paradiseo-moeo/docs/html/moeoSelectOneFromPopAndArch_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeoSelectOneFromPopAndArch_8h-source.html @@ -4,7 +4,7 @@ - +

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/moeo_8h-source.html b/trunk/paradiseo-moeo/docs/html/moeo_8h-source.html index 93f55090a..e822e349a 100644 --- a/trunk/paradiseo-moeo/docs/html/moeo_8h-source.html +++ b/trunk/paradiseo-moeo/docs/html/moeo_8h-source.html @@ -4,7 +4,7 @@ - +
    • Main Page
    • @@ -52,8 +52,8 @@ 00029 #include <metric/moeoMetric.h> 00030 00031 #endif /*MOEO_H_ */ -

    Generated on Fri Dec 22 09:37:11 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:19:18 2007 for ParadisEO-MOEO by  -doxygen 1.4.6
    +doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/pages.html b/trunk/paradiseo-moeo/docs/html/pages.html index 7b9f41ff6..2d51f632a 100644 --- a/trunk/paradiseo-moeo/docs/html/pages.html +++ b/trunk/paradiseo-moeo/docs/html/pages.html @@ -26,7 +26,7 @@
  • Related webpages -
    Generated on Tue Dec 12 11:16:35 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:18:07 2007 for ParadisEO-MOEO by  doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/html/search.idx b/trunk/paradiseo-moeo/docs/html/search.idx index a3b832f73c788937e9cce67803bf619ac7d3fd81..2fb41de671cf78f8f83a736f99feb2bb5f95ffa5 100644 GIT binary patch literal 353919 zcmeFa3xH%rbvJ&I+laU-;)<)HnFtE{?V5f+MuIFXvgj@#EU>`h?CtK`I}J0_<2?3( z8(5z1UlD;I!H7Kk_#4zUAqg>PFd<5mBx@vwC^49eQ)Iw^yCC{!~x@Qv?(NML-cy1QY>9KoL*`6ahs*5l{pa0YyL& zPy`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa z0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs* z5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*` z6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 z;Aag1-=qJXw5VqJ-v75KIwevB6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6oF?R z0pI&OuEh6#;41UIAG@#y6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa z0YyL&Py`eKML-cy1QY>9KoL*`6oLP(2>AOf`QO?#?Uy2;2s{Y{{C!?JklNqpuz_is zpa>`e&u#?#eG1R+4ruEY0Y%_xA>i*b_O$YAW<@{|Py`eKML-cy1QY>9KoL*`6ahs* z5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*` z6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 zKoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy z1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eK zML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL& zPy`eKML-cy1QY>9KoL*`6ahs*5m*=jf1e2^^7na<=kN17`1=C>zU%qVS!d#()3nd+ zh}((3tMT_m{Cy37KQL+g9_jh}uE*a8_+9@|1QY>9KoL*`6oH?81pIw(<3{@X-t8Le z@B1Gn&VNo6=P$8wo9y!v`}|AK&mD@th{(i^C!s}g_0{(vUiFbWb1QdavJ_7!Jzrv01_uH9hjKAMw?%m(-e_WUX z{&UUxZ^AW~=I{S44*SomdH(ZOx_AvJ0*b)13jzOmL88I_^X^Z+A5h_U|A5mH@%o|& zC<4zu1pEX3rLWQc^P?#L`7d%W{_~f4{_~H*UlV^jJpaW7mnH%K#U~+tmS6oB|D{Ch zQxQ-Eeg+ZnU;Mp9tNepro_hZ!_wFC``B?bhqwq^!84Is+VGSq(iomlA0skczdHzej z;u`J0zi9o>YLUP6>wVGwOF!rNFa0x9&P(_7rE7#Dpa>`eia<63{!1Up zPS99I;2A`~f9VesrTYi_iFbWb1Qdav9|Zh^Uy0AuPQ2@jBJjTn0l)C$M0fn+{+?evFcJ4`c=3zN zxS4+O7t#KrYqDQ7cX%YiFaE9s6HmYRQ1ZRBn&16WHxaKdihv^UvyFgXO5V}&OTUxZ zV88VDo?rSt{>+)7Uw#?W`Q?xG(fj3l`{Fc05%}MTfM0(0`nmdLbC%~<%)0GYB3a;9 zK9CqLzjCwZS9WonU-^{hSB>7_SC9An+M7*$?X8JC`l1LZ0zW?p__b_%!Osr@+EYc~ z*@J*z>m(ZM*FNLk{rX2-I3DoppNPM5*sp)KFHR#A0Y%_v8v(y=_UV58AGo1@BeG@s zqsMvv=-NaF{Lym_-RKt2f74R@;XdG-tnKejZ}o1$-t|QhPy`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 zKoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy z1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eK zML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL& zPy`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa z0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs* z5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*` z6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 zKoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy z1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eK zML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL& zPy`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa z0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs* z5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*` z6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9 zKoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy z1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eK zML-cy1QY>9KoL*`6ahs*5l{pa0YyL&Py`eKML-cy1QY>9KoL*`6ahs*5l{pa0YyL& zSR?|k84sq~6WyszBlA&>ia2D4#%WO9CDuG?##8@A@U zo5PXb^jvqcdwzhpsn>X(zw%!1HR&v~;RI3lsIYYY*)W)CjdRZXz1NsGYDK3vGcwa_ z&d<(`Ob0XJTyF)}6ikfF_9o`3uvu5yiXqL};~hRW8_pFDr?x%9;Ua~PS>_!c&~ue{ zcsrc!ZknQ(lfC>K3l!Mk6$+Kg3j9;0*Kw~`UFD6ndQ)@Vsd;`~Ki29{bX#I+ z6ewb=H`Wd}QRvdKc6WA;LRWcX;pSk1f;WtXJ$gQXCv|3(j{r4uRoxrwbcuY`1OgM` zR4_?3t-6__r^4A;$#G9Cf^r^r#8_t{pem2M0!cHob7K>;^mg|cHSxIn$2wHgTTnic zzh#Lxwkez%n+&$n+cIyg+or%_W5hWWs*iQ)vCA7fFPNUDfq2Wqo+FtC`1^&b=epd`qqgt+v2zG zKoU(9ibd<^sNA>SIW`y0Oj76`FKG7WIrV{{IXgEK7}AHlpiSt$^-(;#G%4}&wxxKX z^4~UsKuGCtTOPE7={Xawd%>oeU<)(M+tzqNcan+Md%?t}-b{CH+`PAgiHY78gV@`) zx-=^7QhKAn1E8VjLrhD>puCC69`ogz<-x=(k*z_EQ`C$#s{$IYHTMQny}5CQf9+Ba zOfb>qrma1K!w@-`;~-qSir%+T=ww4hRjfr7aW(fMXZ}q@?Q_N9sf2`T-5zwbhH!*?~xWa4B z^a2`&Q?75$gghXp-0C&wI|RWgdz#F)r##Y}?@n+Tryl4vsoYZ!@miQA)Z$audoAXS zQ|DU23}ha~?cm@R3f{m$;)ql4Yy}goc^c9&o~Sf7r{0f9YSpQawhSEWd?7Q8v~C$u zaNE``_gdi$)w-_kwZ?nBS;OM%R(Y)n!jMW_cXDe2ixY)5v?h8C@w%OyPH{JQEll-! z%y1Nsf~h;F)gixI;q=@*Pps2c;k6UaP-&-~-0HOn@Y6OR-z2m4Y2zgBvC=ZZTnh-B zAwBJSB=D%5_6TB$vrf+=8^$ASTj_WDkxVm&-p-92ITH5fMqW2^6j7p7YFIcwWjcO3 zN@j*V{VGbqPEaA6013U4IDr0*Olr0E&AOcxwu8o!SdHvm9YbFG@pd|r`()ACvW_q);JP_T=3y;J#&D)f%hj2A&jN7fITLDS8 zVjAPZ%{=oV4+5BUDD(QLQ#Z~!tQ~F+CwkLXpq!OANlbUvk?jxzU>NqS)p)V%#98aw zA+-t07}{~x#&+1G=N$63x=jtxEc5njG zT;YY#ttoUpvdx$ocFrA$q`3RMuty--Nla7toX5f*nAIpJ??AdJ67N_N_DId^KuM3$ zzhhb01OKz;7>`~T_Mjd0rsHutASp&i?Ye`y-f=_Ni@n{4nw~%q$HB=4|`@DF!ErLc&5m4J?za-w;|hT zGB)dBuSrXObAw|l$7^HISi3xFn&3gpa_Q93(J8l?qdC>Q0T^s+&U9tjYoZ%{KsN6| zyBycHFtJ(6H6Q4YHf@hsdUTXIjH-GlJ~Pq{BZ5aW30${YKDvd830AfmSqt1YPk6MJ z$L0pT11PIMx4>$cq%wUeaedf(=X}sk%v6rQ@%@ibS8Sh0-cJD zQtK*C$&ef^;LGd~r@jr;yq{~`L7^g*jmaG$Oc4*pBLr2R0&^orMX0thJ7WxqoNY|a zsHk*KA^>V`?$Uc18Q2C8$*K0y1nBg{{A{Z5HfVd(M`EN%khZ7oJjP<&ZS@th3!P^b z7jQ$?Z*ztV&i@7~;O^MKjde-2Z$IdT)3e$3 zC4T5^z;nW=`JL%-D=DTFz1{0z|45;o9qi6%HSFBl!ETbR3!U3L0E^=8_d3v;=AnDh z+ryoZ^zhDOUNj1u5aw;oc$)vMHxxVgQ zcq26q^4l!6=dPA?AO!kzH&9K~wsWVw&P2GiYqW-Qw|B5-T`@b(lj7W+c;mgy%>zN0dRRf=03(NdYDV?hIDZlAf+ z(R0#0)SHm^+%xxiU5cJYTBhpH)q>kR|aHuhj-rR@0vP)g5=oj6`t7MX0P|o z3quX@HnLEP63PbZ@t~}8rQ`+3ovgFXqnu#9v z*%aF9VU)X*^E74V?k7_n83e)^F?h`%Xt-eh5K1$XdVUAOkWM5W`x$Efib-rqQQZ8^ zAaizSir76F1Tctj;scYg-caO2&^4zGbI(8O!KgUiV@-Yj31eWS{%qcVGHk*44Mm?{ z*E!qc=8co2!t?fh^Q|VD?LnJwp9C%tjFkPZN!n;LV4Lrq47XvoyP546oA39G>2mWP zJS`4e$_U%OZW-tJXf|z`^Q_ry%Z|z3CSvm~S6GR%<@!k|u59<*vWvD;)<6|ox3}C$ z@!1O+lUe!6%H`IjT!^(8noM>nbBxxXX(Xy4HZg}}SWX#e%Gw=6thrn3lxEiC*>N@! z#8X#Ms#623T@`C8^*c^?GSS)HSxgr&B$1v6EVphTQY^}t>Cn;^muH;vSgfgxx!AkK zbCv~Yqy=x?8Ka3s^ROADE&HW2-bWcX!@kj***t5W&B?5uJVu1sBaKFG+n*aSbZm)i z&EQhFQpYc&qt5!bZ92-7#R63Br9>h|9c!-Ib{j>?%WipzjpVk6O*TklYyNRF@%$x} zlm-S>ozDzuH`Nh2^G;&haQ=E*_4yN2lwCy5$D|sBBU`$&^7LLit@h4|tByjx$y~cO!e0qt=n`$20m}<5C&#ToV&+x%9&K-*xNaALY?N3k%gX9hm z;;%4E8KF2m4&4Q-F8cK=ODU&`HroqHs7DD_h!XjlC{{|5(U2_~k#UdGr5Zxhnk%TB zm{g@q*Hc`7Cn)JIN*W?yiRNLV86ek@e!&t-r@+w^kRz?^1!{D3VHzrm;aI3B+LV$R z{D{|67G{!#vbe4P1?`0!GCG>tDqg^%)UGW^6`KfE&r{PSiHVaGlnZzQx+Jn2*b{^c zm=|4&S$QbO&D=P1pp~^|Sr`WsP$73LSV$7UyBDOVmQu;P7o?1BDKB_nL2BL?T=39> zbkTXs1&_vv?TVcMC0fNV;5lqTcBF}}U&wPfO=5d{ARona1mip%kN|$>CzzYsMh6ZEktI@YV&&wH$Z*0%X03wxwj* zKBVf{9KG<~1xk%sg)Y2*0orJmUbrVBO&jduQzM;5Fh4RZD?BosetY5L!zdlu4u2S# zn>0HP97cv?flcA)C_m819fvG}IND0?h|S$}mu;ay#qGd%#OCi{a^79W6vZ#_x;mMLk=3EoX{3!b$9DMYkg!zo?x-HVxMTvNTQ@$F_^6 zGiVY7+cOBj?Qxfoi*{zvWSD#}x;BF@>wM#)n==S$8%6GW*4}l|u7Nbp{&&%xL=$b@ z3FzpJAi5__kOca^bTUk#w6VMB!E}PzgHY1L=_G3_xahHTf>q)!_9%h2?1l-gIpN|Z zQMC9T#axswUKS;jb>QN|ESFx%h#88k)P#X)7hdE`EsV zjs3yk6&WKgel(Gom?)PpuUgvCQCejpH?T{XQ(dB6MK57~b+Iv{|0T?xE(IE+WMQs! z2@xkzsAT zp6oR8*8(d$$E`~q8AeAg({p^*< z&4&5t4-R~MPI=iKQ{h%>)@64inH^{^+dT#EVKQ@Fwr48rZff?hDesYLbh(eCZ+j4b zIhq=C^}qa(v=qI3wTa=qBW2#;#WkeM$CFM*mtP83bRxTIsyDSFu8>{6dx{o4@kjts+cF(vut$?#VjxYFx z`rWrDT%X>3mwTlg_n9{YcdqgHJbvd6ccB3c*7muNc2R-)MxZ?5NOq)@B-x8n)k9OYUy>FS<+d_My z_Z{X<7l{MkSN9-|1IW>^w}PY!#jP??nFqM2{nayyuO(!&S?t$(fV6;Odd-9%Ma;u3p68!9e9Cjj(NG;QgO+WUY3SF}Vr0f!IT7At3XJrrZYnFp-wL}dsqD^M2 zc@4Fjno10K4cZ;f%H+I;8V)BB7I)X6;lW%${l4Y_56)n`?p^bcH$6W)E`xH-qn@>h zfb3U~^u)~btCTl>Q|MP8iTj6w_}UTTT4L90kHjS%dagDk6rAAf6x!jTf%f!@-fx%* z=b2Bgy$$~1ZNA%e?Hy2{j5o`*cSpL^wY#ZrGkjO*1N$Rvy6}PJ2;zbtO8daZ{{86( zPy-Fz2kx8+=`IJ;-GkeC@TTSX`({Eoc+jc?_a#eU5ujeAfWh~|n}mZ^4bT)zyH z$N+i$VP-yo{YW~{_VW6?iK5_oY z0}G%XRO-VA*O^!&mOr==#H`hP5Y3}%j052ZZ!=dXDZ?Eg;hc}VW+M96ml_HN=GQ^~ z&Up+3oQoL#U%zWM+%`2Hz{8Me@0FI&%l)W}l+!m_pLnnKz>3(Q~ zXF2IZTW7lj%njGl-5Pchyy0eV7G{hIhWv&*yxCr7ZVMzPQQbX@6^R17rSJ5z2QS>9 z4<9+(W6t>S>RGsMx55>3MtXmE9qlPV`{9kz=HkP+ayBz(b&n6P7`$l- z)0y*VIhciJYi8?B%Q91CVMRSR9hOO9myMh9nW^AbkzqF-$rP>wH?8LPUI#HDGyYAO z6X=P(;BeE9bcuGm&Bw_%UCXK6-YoQJUNvrdlw;sW)@?;7JdrGf1t%A9^ZuLyqc-|> z^U@?4t?*>H5txVs&E*?hH?K?5#x6A6yiv*=v-dhEh?{RkVP<+xi-_Xlx{nw*nwzB^e`GI969`S--~Q+bA|th#ZF$EkLD++r9BRJRb* z(9^I6t~uC|yv1;XyPlD1?JZyh@FsEeEr7Krj&-*HT6o?W2ESzoiZiTFbXV9nx-xXj z^`K+9bjz*Y>^vX+-g5iwJkN()b|XMU4|ua%cwN2aArHkG=iFN!h2LhAOlBWhIv3C- z5egpR&B1YRstY+rjrz!u*3$Qp)pQSsV%l(!q*6aJ?ZG#f0^8@t*;VqR%Md}W`Y2-9 zJNTnJ5g_&PqmRH#kXO;)@H{hHe`ATqKAXR>4BcMQ?$Qmk9y?;+wmrHag1oow^vuyu z`WnM+*SaI2+wKz*>%wTd^RZPD%^N9rfMa!`etm2`?%Gk~Kh_4t)GR5D^tP4X;I%Du zH+XaNXqIso{n%|Dc1uKehi9+EeCz>_Zv^sHWV)J6^88~@2-o4|F=2Eb3=>uu}JQ{?@gwN8F=k9U4|?tHVH{-*EofBSg; zqpwBiIr!Vh%N=rJ6kdI`4d*=nzt?g&chFbN^Yt$>&!YeZ^5))rDnC8%$R`>w`<1>JpZ$+IIsV}ckuK* z|8H+F@Bi}G=KV2zkN|!5e{cc6=U)B=e$O5DhvvEb-%Wg#p1`KQ-n^fDsdNLu6iQf z>oN6^{*$Q#?O9Yiffu*a@?O^1|NiUHX7vAa=i>=nzC^Sr|EyoZ z^FS}x{wF+Nh(GWi(-3~C@PElX20k(d4)YgAJo8sn2gcO$jv0f4JpXaXI2zmi@8$ID zz5(;Z7#w8#hNtkH8w1RT&y8}K{uf?h>UAo#9GG=%h+9@)~${cPN&vCSm=Qy4s10QGCk-9ZzDApzn43Q>O;Qv$C=JxcpQiQ@4nJJzju_JN!q?`r?28>$a}NG!^TupVqd0 z?OaFS-P#HIe-?Vop_h=%c@F*%Z`V|AlhwE4x|YmcrginB-!?3IO)?#GQPS@_o9mKt zM7QxD{c{ulUw_3Cs zN+V-jKZ}QPIl0v&yU>q!*fzR;JkRrg?>bW#V~MhPeDJh-UhW{n53Wqc4t!@Z%ej7H zy#C74+B}S*jFIIf!HuzYx-Hr!IKIftO~$RXirdEF<4Nzc{A6)qS!8+3@xoXB!t}?E z57%Sc;CU}bfB(>=f8lTN#2EkCndbR7r<>>BUu~W&kI^SybMSop&k&DxKId{gArtof zta)eM74dJ}WZqd;;r-Yb;~hBh+K>0M|G>O=4rMylHSc*R!k9}^Mj|irv@Wrf^NINFHHew7|r=U3KoWE)3{5{9x9cflh_ub=T4S27kTV_ z61l+hL$FHcclkt)VqC1ell-#AI{9b!$4@U}>T|Sjb>-WA z6XWY-6voJn#fyN`69x~_Wd)zVvTL^V)2>Cn#ml!kZ|;Da!SC>E%~RyI=tUNnoYjGi zoTD*E-6F3=cjtW*@cYK&NJoGErHLo{&U!BTD(eRCoA563`PIK+>OPeAPv8-|FUiTi zQRMYWX8mFrk>2B2{hzV2b_ohcSjj#Ze8D<0o~-lY$$XBv^>xw>(e7_qlqD3yVBC2*qr zFIl`SNv+9lu2_BE7rjZ=X5m|_=Np-iHi#?|`6_ehoStc;(-GqQ`DDZ3r+?mx^1vgq zX0iPP^`B;BBzR9$OZ4qb-@1OB>HZt%ChiP2V@82$%C)*xC z*Vu!1%S)`67`oiC|A2U;pF;L1=oh>OQQ8oh@Xd{!$N%mZ%+uO2a<8o7o#qGlJtfn* zFQSKtt}MJFdO>{bEe(&;U2Rk5AKG zLu&scdW7iHEEi&Xr--+KzsOT-kLEFvzBn5$=2cuTvNqJDya6xCIw|^u(+5OGEoEFI z`-;Jz`)Bo*+;eXL4fu=qpu}I`SGy18u-l7b?%KVm)5(NCR)5isANC@5(|Ut`S{sgU zdC>pwPjh_k6>H7&5TnEAtiG6|V=LnK=4JfkIs1pyHk7r8+J&dc4AFCC++_V1eKn4k z(?PISiXJ8USsFi)fpHu;&wi+Xk+P2027`g)P0Nc0ms`0n!ZTd1TXzT5fjQ51Fkm2d z4z`EkUDmtTyd331N3DO}l>c_pPwbrkl-1GCH2N&pX>C>-9mzIkDJq}p}&e=EArCz!|AIc z7eyY5-Y@ID*cIZk-j$E`u--y^9p_QVgg-I7qd9OQDoxzS>TGTmNZ z^hcC!*IQ%DB`krn*fMzCgbm%E-?3ayt!=VqMmiwsiRo@8YEInevkG_n?38$|8}L`Q$WmXSGU3|8JGQYVIGQJ3Xa#@o(=+&-r`+T1VxxebF? zt$oVbqr|orlT*>T0oIj4d(Z{xbwrVi$8~zMz+N`1qTm_Oh=4bOmX* z*h8FtiZYo7ePg>A#=7=5$WOe6v@a5tcqY~p%ga_)9KXKsV=DE0)RcPI94sKfS2 z&UljN6R2DEYz|MfeWA5k)?}-%2K0t9>8NWFKMsB{mf19V^E~zHr{xZ*k@LPUl8Bye?zRvhrA)AT(4jp+dmroEq}ZAFSm0En2P+Dar$$!&bqTKYvVWa1G>2Eo4CCg$AA1S(~j@_ zrftt_%~Nbp|MLsxUGxXh8(8*WF0;-K{6&A@v4dkjOTN94KO+!0nD z$$oJ8jENVWH(~2Se%U9=eoxK@*nWg`(T(5sVN=eUgUwU)5qpN<^b%P+*v^T5SY4XO zOfZ#m64|RdJsam)>GNjRJ1{PChCRraM{p89k~f?bYbV-a_aN?!+xn9j`Ts(9<{j}p z&du+nLn83vo#s5if9$Jx2ao=k<`2qz-kbP6N2UdOm$M>SXT=8RZ1I;GI%fk$S)U&_ zaj*VwJTWIN?pz-0hLJx~6c_o&@EM@Yy)RHZQD%ZC(SG4cIXe*l23hA`_kgKect?0d z^Z~Jdo@(WXJ@b&WQsYZu*B_n-;7888g!|@nB=*ZOYq6ZokSq|HNd1$roc*w@;Qfus zC;F7<9U9q%Wxppj66Q0^MZrbRo@77h&REVj?UQpN!A9 z$y}FxvdnQgs}cV*vC|393jXQ2DswZvUzIgM#>dSy@S?0|Zodp{t!-1zFd17rzmwyD zb?P71nZC%n^uwe1-TAbL9Fp@>>oaQj7y5^@HK8qb&l~A)7;|SkjgNmk9)2x?yWlKs z5kCmwW5HG0BsdBm+df8nCd?68r!sKLTm!A_;=PdgT*)5cz83%+l*xNn$V|5nfu3V| z(%A{^nv)axBr;HJ4^9?FZFKre%qAM)3(Ra^cnlq`(EG%HLC(HOoRORo-%sl^#c^Uw zh^@;a`PACd^)_#Ap=goB)Ah&&V>S8Sr{{`3p#%tnM-mOEq)4?r*dK=7g^!XC9KXO@+@&y z4b0q}i1!m=)(!SY8_^c=FFo*dgR{t3(S1e6IzLkEZ#eCRphuYX7Ah;w-|;YXJ;Be( zqcKyL@Rjsi_$$>9KFeet1;(-#G4^;DzDw(cGIvEEWQ-wWME{eug6l-Q%x%UtroV~4 zCiWw-aR&c|KG1w6yRy-loZJ=pnwF;`vqY}D@qx^depnejc>bV1@okc|Mb0vWuf&f= z))?U*x3*y1+?fo0om`!{zQ0j_g^3#YrD12`G330 z(A)i!pV}8WyHw*+&X?Ge#c_>?<92qpz5s9AS8hMceVRXHZy-GxJT2>^tc%vBkt=ND zHnQ)k^~3c4;FH`Q@zIp?HL-<@pO=$4_Ds>q6p^`Z--`9Xw$I51-eX}-$oSfICHG54 z*U7#0I@>PrmEFIv|LpJF&GBMyF?&DkN#tCC%Y~l)f^Tpia?8GhC+gv~341yzpZ8Xv zJC0-yD@R&?{j`zuQuhUb!gF@MOT*dR?$)W&I@T?V6Oiu*|5OJa^{;pQy#cy zdPCGsE1$T{RmZ zHlUpI=R`YfncTj;9!6WOT|U=ZX)%S&_&vgg_Q9XS6LUn`x1Maegga=&=4|_#Tlr5W z&lw+eG&!+Dzu}7}P5A3{I!C8+P`1RKEIbB2{oN|3yYr)Oy^m>~?K*KDgfdPy^tsUZ zFLL|j>}e03e}L!zgY1szlcPc3Q}%AoCv{03KfcK1dnv68w(sBAWy<{b|7+4#k*q~K ztSyi0yN~Wjp+0M0&siF-L-^t~k07c$}OI_)ol&(^!_>{w)qW8@`-lNSosRPoMe$m+$Oy|7geOkx>(G&tLo> z-Opv_Uh@Txck7(B|L6EF5Xl9Mhh0M@F0x;Mw^H@xUQBWjSRP*IC(i|&KN&{ef7oow z?`xZkAF!44qPQ)@#&LNrjP)bkmtVHLe5$eY5WVy>8K!=G8Erv*pZR0cCVK{xbLSW_ zn%y@V+OOGlX~U~H5090c-Q4?WQ_eR(WN05DEK$DY0}k7Aa`|Izex!fe^xd~*Go39X zho6QfY&q^PXue}?Y`M&H|7Pt{uY5PB^`Et1zS^@E|1%eu{Bn-`CuV;1omYQ-&d~jv zDU)$~*(StMe}LzTkJvEqu|6I-|9hNA&Qx;kgDnmE_iuFm1^#exSQiGIv*cd%F+=+b z%d4;b6MpA-QZCj%UYmYPW%l{ou%y)YROl?lsb6DP4 zJfHs-rsaP9BDLMd^I3`sn=^VFX5SVYX8%YEqb|>$r5v1dWtg?X(*Bv8{i7{>=fTFa z&DMm?KHY}dkJ5&D-LUj`7(JBx#CIud{NKOH)th5^Z1et~6;b@ktx=fm8B*r!T)fY= z4IBS=W=t6yKIgY(@)~7newSpq4YLjh|qW#U&GX8%$X_SsLvhX4Jjh=%>9Ej{~5+c5h@TYBbw8~z^2R7=DD ze>VK8SbO4oOrC2t?-$?W^7;?bS}%FY$HRt8H%H+UNUqxWb)_gg_BIzbKC!lZwyoJP zpEug@S7LMEZ)yK-%jC0g8$SGRqxho^i^8XV%Y}Vjhi#dBf5?V;Ew$ya@3;*gLNeBd zc@47kw_on!eLjP*@w^wc^t^uB@GnPuj~t&VNIB)GoFCD;Vd)Qy@f)92NI4>hA-CD* z%*OM2VZ()JeEr`N`2+dK>jUH|uLmT@X+5xca?yAge_B$S?{YFLj_z z=Zv^`|1*Us%=TiF*W6jK;s1JtrGdQTH3CmwBc#r#yxfrox$<&vc{~cUucM{sb7xyN z`!Cus`y<-$mv3=-{lEDm8%Dh>`>B4C`L?__(VA+*Z~tW%_J6Y)h4~JcEt~J4+3>&a zbTm1?Zo}BWr1$^455n3jXE1W-Gi{T!XD!YiAhsE||Hqh${lVR##<+_uSZo09ydUG` z_KwK=Kkw%@iqA94N4|$ae2F#2-pOE@+t`CR(w#_upgo`6)3YBjoq-{q?K`x$fnDOW ztMEh}qN_+d?U{@C9Lt^4T-+wlWfGsDOb(m6qV*T$_MP(pPivPG+mhJ!qcahd7q7=* z0o#N4KJgw9`hn<0E6(A582&SQT#n}()(m?N%;gcMFB5?_@ z>9^xA-_~*dp)#g|GmjO{E94xI&x0@z4x)8~o?qc|jsFMe#NIEqa2X#y>jXX9kU=Ll za`6LUn=R7$d;m|j*~6a2%@kC)U2tOc?|U82b4MPsL$#|A~SR1ACfp{03Dw* zpgb#=jl97-^9$15*#YJR%NLsekQ3kBh$qIs@B0)a!%5$TjA361l;QjlQAW&8mSY)1 z@*3lpu>FI-tc_IWp7u4V%n@g|M>#?hvyqE0sOQ0+Dt_49AJEG^KYQoI z-NWX#VlIo%2>Ywx-Pxhh2YYwH_@$vN=l6d(`UqO_>vaBHBvWPGg+Gh+7xX{9p6T7a zWtkJ-z1Wmv?RNjmO-p8I5l zSgu<+YUYPoOXKTcB;(Ql)cG#UapqZC+eFrr4PU}m_u)G1I&JHV>V~Xgo=vA??Cja4 z=fQ88{h~m7*Mle@PmzZ#|L~r;FAQE``Gt7)o5GXtSYhl$-iUu#+W(8?0O*|0(vMId z`p(}5K|FsOgxU)J>zkXXN6wbhvfrI|qhI!nmT|JW56=~gO`qS+0%r|IZ+LagCmwP` zY#==UfQR*8HTyL1gtd2wKdaHDAWL}PM?6H>z1H+|z*#1@KPGQP-(=auV+Y(0qxlEi z+}#_5mZ!(Dgw%Dh6UZZU+8z8%_KQ`CzzJG!~CiF>+kKCnT*@HG% zKjIwkSE!H3!@4`>PRgd^zV{%$;nvUJ^IjeK?uwoz`qh1AukOyag#$f-VmkSw_p zmobYCW4vX(VLJrgs_IP~B73L|XO8RwXMku{m?uvl`K*Ef>Yn1lAtvFIGKmohR}<}IGq zA5+d(^ml1&KlW9hjcm9W?LQJN6$2LY_qd-{%$%i1HM+@@_BC#+DsWh;}4#+_jJtO9kemq zZ$f7h-G6}Z2+vc|C*t2nvHEo8+;D5=5dP=B*!?xzTF~Y}@{nnv4}Ei^!6t6=7ky3c zJj&f*cPAKQB{WuFGIztkE37v`uGoFK+@In7toT~-c;jw2>u#jqe%Z8v#}#M(Jf84J z=5ZvO0w@Rcz0_F@US`^^S4`zFh}>$xM7U#Jz?3Gxc!CISLM!Nw6D#QW3U0p z-A3t$__|8_<7e=0jzezB{>*)I^wp-ncE7=Mm-ighUdRWhx1kThpKK?`c=EX@@E2Ra z3yf}SFa!RU_oKN^x_A;@}q8wf?@N|0)+4&OpK9yvrg;~Y(v64 za^J8+A1oj7cN*AM4PN4N4?Ni~1mhxdSA2xn<_tbzTQ#2S2Le73-*>(XXL*+Ar?vla z*z5t!{X7Z}@rkl`B#o_@FhZMTA12>2WLqnxp)XeF;=OU&cAEYsLE1-3bbV(dMP0IQ z5I-LGZ3pZ*FXwnO1*?bYtyk?dpSE-CXl_9S9+;Q4`kVv`a35c{y`%yg3C47HlgCKz4LH3&weJ)gM9%stI2%5n zH9$cn{iPp>boXj4( z=sRyiFk{{z9h=%p_F$AXaQ}sJtbL66!RbP&@_F7Ig|ZOO;rM!HnBMxU z4GyE7sXJqlkJ+W%e(Hm>@j2UGRvdUXArl~nxyT;tQ|x4i%z2*UW-avXx1hKz+YTN-S<_ZsY1(p9 z!#r6o&={jlc5P*uY3oea#XKPGh}9d-FOgk%a@o|bSe*SP3D@V+QTKqb$W@}3@3wH> z_}xrEu`Oa3ET2rjdkux9p_8hm(oi(CdCqt3n zwG(_QcNmuf9>Pcbr``IGaqruIBQEtVBW|ygf6ynyztDc$BX`tcDBtQXJU?lVhPF7J zcs8;piQX%Ejp!Y+{)+AMv#U@B_D-ymi)_F<%QL)ldtQO(@!U6KuRy%We9>RnR*Cq8 z-3sq%{hDPC$`|>_djQN2YqyoP$$b-B#(j_BJ@?I0#uMd>-jq0V0=8m565sB=Gbp-m zg8Xt8CHlS9yJTM^^4jhFSPw!zIinJL8}G@`5598(yCUmtkQZWa6TOMgu8_{>Ab851 z6w&XTUGCM~KBq$@&a$9$@V)~&1M6XUPoHJU_xSjH1?dU99_n>^W1h#=-E~f{)pBox zZQSUO=yY-xCU!yA|Ii-MJ9*y+xykz?)X(}d@+Z#9@Xq@sqf|L_qxUoiFeU0?74GJ?2^3KK|ZCDNTM#cg zl4H;C47 z*crZL{CAx0!v2g{pX~P+a`K%S*$2sa4g07W4%UU3NXW0|mabbRp+pyhS!JJI&-N7Srp5gA`fJWB5^!~=m8g8T0 z({j;0$^mEI(Qlz(4YzZibuu~cvwXoioWu!l#?#zABQuXg#&UmMAF(#cnHc;3VjS52 z7f;@gVmx?1ioRR^<9hAB#;sF!9pSR={Npy;dSw5^>2_aD<(TyjW%r%?L$?!KhqiRZ1Z&SyiUqa#iBBC7RvVy-MtQs zo2(bk27|e8Wg?G*Yct|A{q95-qbzH0O7afk1xJfpGCjWTWYNaTx3Z9VD}|r2Oxr}x z{W7hu7(e$r1hfX3^KRRg)G+m%8)Uu`#v&3sTQ)k~d5r(6q5&0@1! zFLH$^i?wA+PZBg|I|)q1^LZPr2*)^4|p zm3A%PDz~|*C$2h`epq>G6PMZQP13JJkMYlikB-W3bmGUaUGt+1$T3zJD@Y!b$)Z#% zgw3!K*3q3-tyXW9Tg7^z)M$jwd<%Vzcj$y;j$3)^T(3258!|d-e~lAAnCNOv6Paq7 zwMxBQ51PeRzMU`SEA?i%UMSZ(g+c*6Z8f=voYnMkbo4y@qGymQ)}%?p>y360G%I0H z35$hFz6P+$rF^GUE(N7x!Iijj^Cs6`{J`unJ^U15s=X13ZEdyKX?5B`BWTqsrAo0} zYjlEqwNWY7D&kGz*1Rx!9_;!&W`Ww@Za)C*LWWamp^qj8%48)Y0s8Q+ZG<6iHOoixo z7Ap08xzs>ofN`wLW|&S5Hbc^!Hr>XLucFsk;>FaLL2jxnw)2p_#dCR2zSK?E^(j**05cP8ik!ee_TBsMRO~@&9G>^#>w#(Igy-;g)s)Z(m z3_~^&tFW(dE{Fjcu(0B1mVwkTin03m3iFHFrd1OVaP>zEK+KMu5_ZCwaHUbL{K?xdB!Ly5ePCpjYNS)29>N?3(B=tvD&T& z)oQEIDHdz(67;^H!%Slfvr=LaKqu5oBPmH=YNV#n^s`*X}U8_QwZ8xEp)C!Ft2*a@5>NKi_q!JyM?^&u? zd<8K0bpq&@1*p&Ye6!x@giTacsuipGQWF|(5X405Kpl4`>c#-+p44zVt$e3aF11^g zLQrgAHymRBT59Kuje4_{Pi_pd3;YQvx-oVixUwX)ij=1L)b-uInzNMF(b1of+8b+) zT?6;N_S;{_PhAOSZN_N(qoZyuju_oyVJ1#%!FDl7q(Ur;UmOGAc7V2iZ*(t!XS}4PML}re5r(N#A9@-&Gamy-mBQy|Z zg^YT?7)6=##izMzMJ&?Dj6|wNkxVt5>1b6b!@1mE?e|A+D`aifw8TqDh@n9_GDH zzR|3=%dj}rTde}D`{1H1X%(`CqZ_dKB1r57GqmJVxdV${3x+*dF-yfxtyqAS9l?A% zs8=i2u-vywB&3dOe*a=)x)B8JDt1>PEXsB0bkzzh$oX2n(aPt``EtX|1z1~JIGbqA z^_OBdi)X-iKaS1fA~s_~3gaeO`I|N^FMhW-Kr1(b5}Wmvh2p;l zu~#S;%0aPOZMMQf8~@~+4e$|;y4rRhWrMk^mw^ALR<>>q07LcQIn zwCgb3R!U*H(rOxZPHU^lIhaf}#TGj_qi7T{i(4UdxoU_#NwX3(JI#8&fO*1T+Kkx> zYSx}>NCsPNfYSw-`-`n&zFG|m0mN0M)9Dm(Zc+{kjksL5g+22s=~TNnX;wb&^?*e% zYvryRW8;ANoneYyKn<-JQJq*DxlM_ftd;;eVt=<5#$KX?0lKJ_iKpVQfzG5BH0zd) z78hHF#Hu4pRz?d81*2joBsO+-X#)rqk)X*ct77;wOJs3x`x8>7Fx5h8=-f=uottIS zY`K&w^iUY~ae@@fkST{+IBdlM(r~hjqVx8Qb;u+ml{_kZ2w_(7)rQxdYKL2~@8M^P zhTCgY%+qIuSB`m_R@`_=EFt0oV8BHDDQK_L@PvQ|MznS$=VQurduUiKwJKp1ehPI6 zxl$p-sdlM@WBF>SQ7pF2^l?*lQ#f_Z3~XFc=}9#chN>{Emn+y}H`z1>H4J95dbONy zmtiuCL*@#N&wr=QB+Fe;eWfz!@Obe$1X1@5V?s_0u+Um(1hYtVij7VQN3vxcKo<+O zPO%a;^5sGS`YhHboC?QmD9@Bu8>=ExVeL_$!!t@T4afQ7lU8mw<1}P!vO6_KM^vul zgakB&x1m^qnet`WMmu4x9t5!X7u%Iuqg3y7!or_660`{?dPvS}HNVZ8l6BJxpJmRmPm1Y?|o{9LTCIc#?(HS|{v4$qibi z0?r#+wS2za$ydEoj$65E?Q!-I_Y~kIw|_1>dnY_ZIz>KkWXc7U%bIb~N-SN*&XI`X zq7pGFMS#?te9>rgnd^;Pdj{y6RkLXka}`%;CP-FIR-qcOicnpYl#vtGDFa~A_StVu zpfVByH>wvgT#8h-=!>*3O~#a2cQ1v|#s8LUA&J26!n*PEW1 z8IgV2g7d<$U}95mj86WkMv5>o9F@)xN&bG_GLroLX-4wX&<#}+qap^7nK@c&!3nY0 zsMgD{YrEcEF`@TC zYc4e^r8ZnParhh7YtW&?TCLK6)>DUhjiE^^d>JmWX%l80r@R%|M>}4Gqd3Dlu%DEh)pn_phd$N`OQlky4XvzDEmy-zEpH5@ z3Gp&IYLvcU>w-!jT;_tXQ7u=XtT*AA*AB}#eQUtCHNb%cn$EH-!+2rY2v)PkvA?!LsU4khzuc!z#Bqj+S0)eiIzq3Mu)F@ zsnThN?ILV&Xj-FPGj3A-(l*mb)K6ynTW#gxzT9k7D)lgImdatNh`Cp7fHlf+oncVp zM_G&C0L620Wn5Oa#2p=NrrfTx=}eT0w~II1fJEr1aeU`DT3-~^0;sn)}G&@mIyl##7s&W!icm1Pmia5QVJ zQZuN-O|uo^6r~1FZA_pL$30c}$ufk=rHJo7L^UK6ZK<7BsgtjF^4LkXDwPUOslm?Z zRSh>2N>wv+Y{qQWG04(Vvq(*aP4H3+?$S*i0QsuDfUNUO&;Q7n_ zHpyu}sEqO;6^3LOl9W+azL+>1~&LJf`9&qQ=zzxvfiEWeTE;pwZF zG4>d;sQg5=%vh6#i(S|IeliB~(ELKmW;8l+O;WJ~G2tXamuF!eq23T9uG zS?VKp-g{Ngj8&RkZT5z`*e&1 zNSkEp=ryZ-MYE~vmtu*7BWi0uNmh9YPt5GeONH$e0i)IYqO>3V-rz0N_5d^>ZMbn$u>amgglMAXS=0s0J#xB zjT-jqVWk0UU9kzHQ6~sG)u4`R%4K{B0Djex%!p0VsFktEsDWlGrfxPaAAyjVTZbF4 zi_(A6WkjVv86C8UuNl;F&$?K_xho8MMHngJmfFUZ)?x?WB;c`)J}Pj+39P9ts)121 z@hFX9)i>eYXrxn2zhcV^5kw|X!|=(t2>oQd8Bv%6D`dLFJ@#e=9-g?z-fqCxt_e$7 ztyM0hTA3`YuQdtXG9gS{j}j!N4HbND0sajYoOHwC4Gt7R3EmEET%{?r;2qG88&k6M zQ<{YR@ljLz(@eb!-s7i&hptt!q{KfuF(iYj7N-xTTE2|+wuWyN;Ohr)dM*~>##$;D z;aY6mN&5wFHk|!*rV@D9R+~87D3*zd;d@sv(v|ljJSuTz(B6QEYnz63;xQ3`@mN!Q z17ENx)$^@(y#r%=yIu)9xLMT+V19$IN`ClVe(P%GSRz{rn~DN7y9(FOdb0$JXrqan zT=2A^`}CzE-ohJ^dRtHy-^8D4S3+dEu~e0 zk4l^sO;Jy2xl46Ds|?egLZw}<<0~#jd@Q8eE;eu=kk7-&h+%|3XeW%fC%NdD@l3`= zFeKwmT{sVdH+#F%spDo3?)>0$AM}+NoIuoDdH6WRSGH_*)?Hh6{j>FCk=qW^CmC=G zRi&>$G&-GX35Zu4IE0m)fqRTe%ziLD{jwrpXTQFgIph9^5iLJN-k@Sao+_H7P9m7%`cg z(Nehc#mk9@v#67&Cj<1+XGVP`cm`CscvWve0W1c%?`dTo`gy{h_hyG970NR>@kiQUJ!oPtZli=5G}*J*mw>nc8N zRqEj2vsy0U&=_A43W63^4f2M-nQr2^jY^1X#1Zo+Dv3x;6}VTj@E5PB>_{d>%PGa1 zVsL2Rs5Wq2BcxpsKD34pnZbD%Hy%3p$9{1nl0S>*swfXv6d&h){WhDU`sqxY7rfsT z+ixs(g>qOA$zW<bM7Yie0gIgZtm zExkua_o|NES6_zy3zqrmsLEO6H(0ec2v-}mu-0h>@RI3N-~iQt*LbmmZ{XG7UWI!` zEM^B6LbJ{pi577kZ*WQ6ocLTEqVUE(yyF;k2)XGgzFsw4KPJYsrHqcw^XJMU-n0p( zD179wQ>|gsK-+43LIzG`wE1sW@cG70C3($uxFy%_Erx2nu|^D~Gi`hN+HvfViXa)T z9Ty5l-%O~$PCIsi*lH~w?&-hXkBiYv=T_T^UT>NX8l%_&-U#-)hsK|dsVSIJi8wyJ zDvpkxAI|h#QYs7S|JXKjay%4Nouv=Gr0Kvu9J7v zu56K*Q7%5^$BoF&V82v2gd(FzTzcmWcH&r{1ba{un`$;8s|4%s;pU_hHSvP8GM0?k z8lXOs!W+B0=p@Jhax<-J_%>^ZYijwhM&E4>D*-n6WgPTWgBI@A$9+5ploL(k0R&tT zcg;*D`SKiVHc!clD)@5^cY_(g^{Ef!v7u{xhCCWZ{mZ1xHFG$X5q`L z+|sxPOKw^7&53Z#T!Whqy0NeRM1-Q$9-4>o8=7ZOgux496MlLyPvOg!1-P3v;KdeS z4Em=nu~0fTf;gRGy7Y9E-;Vj_V*I)SRgzYI7j^HSGScLqXwB2t+Q#@ULhN*r(oKu; zF+94m1^KqGWdQK)OF_Gk)#lcV2A`$!~zMk@#3}SM7F53AxbHF zI1{3KCx%-RhQlFQOs8x3-edunB?@pY&4*=}&jR=Ymf*TsEaHQogPmEeQNhjVewk`2 zfVVCjrK|Z?qg=ps_(s0bDZ-5spUcV@3Qc?F8P`T3ww~s9VEYuuw2Ro@zfBdb0GUc^ zzlqUE{|sV-8oYgLb(o~X622`~DVECBcBh2vbomxO<4`UpzN0o+&l_@)D&pJ0*-ca0 zxM5H&1>|qtEW_FfiCn9f3#CrGS-=NV^Ra0$xTr-}7hi6&?63R*8^?5Zxym9mjmP(3 zV2LiYtN2(8-1F(%gE0Q%o@*lyLv%BNqg(r)o<7R!?NH@0q0>Zt8Jfp*r%kX3lC^~Bp07*qsoWO`IML->IGCzdx>h0$|<*wsiXu=hN@6Ve*ggf z-iy;Xjd7Ikb5KPY`X(EXZClgpQGB*jc1q7^UeO*eMRFYaT{ttzm`0HqIl*I0)Gq?9 z)_LN92b5kr#}ZW)E*FpXP~oxyz^o4{QgA?SGt29^L{g~0HqfN6 zsNKYrQNHL|KSJ=xMEa5(E z>N`Q3CNiM6iugKKfMtPP3Yz$EAigz^`}{3jxC`6)z-+KMtNAqp3;B~V$i#B@Ax>#~ zNlhgnB6*cMNOCAd6t@2h-4WxQBUE@oJ&kxe5#86p#ji@Pi9@oOHZQ2W#&~a_a6UHb zK|hVDXF(k{QBT|e`*c-Vf;(Gk6aP8pvm$)(SC6yHNdDA8TmTsQ4D~e295|5Jp!baH zvU~rB1x$~!Z9dVEWTi*UG`I`{%TsWY$kKE7wn9wZbBpm%O&B*5>y1LtEaO|n_|Qi& ztkci+V3(I~;;VbO3mcmi3t48fOeDkeSP&PZ5D#2zc_AH;no>FX*IZ|Bg^t0us|mTp zvYIM_bX56Bsas%Y&1%BMi%lpaU%p|EJUg&7<@{d`-utJTc^i)1J z!q)nYu(SMANSrHLI5P6$t~V2<)`I@HR9+?+JY$A!WTW}G7){uIY0^}c&hWG};adF8 zT88AbBW7yONY6sVO~jUX#mA;+Dg$qU;QJ7pbpu%29E1!=j0D&K0yFUz)KPy%n$b5Y zP3IHyH0p99+H{n(aJuhZZkIxQAswbM+yoBsqeF0pYL%_eyqnH6PU3Ix^cb1fra;)$ z0$9F+O1=Q^T>QdRxd`XgW)0R@-0p6e!+~gClcr3ah{r??j$)muw~k+RLNT>ETpcU* zHa_d#po_lvMiorG*j2b*GMR2Hs4qwQBG+Q&oC75m$px|mpvckD*vB6z z!qkUf6u?DmTvdWuvRcR&=!4$)3`1DJ2Y>N7{z|-Ck%-!B+Aj@3La4rquaI{mb zm)cEyyrT*s9G4(&;eC1G3b(89J*y`4k#+$efhp$cTUnJRR7JB(8!)@}hTgrX`cre2 zuuDWmayk)hWJ?Y1Xmqa$*KjKMaYQ)!*DE+@!ig;om|FOVCl%-BGke!N*(LMYl!U81 z_)Jp0*}$a;e0d57nz(dR4)Dzz`~q05T#OG{e46iVg_j!4>SpZI2=TqJYkr!@bmPhY z2Cl1cA*J`w1%DPH#??CD7Nwhhcjy~u#UkCV!w-1j3sl&ol$s@6HN=m| z;_JTg;Y$d?y`~z+IzL3=&HmKGkPN1K3u?%*+MiKHIZ;pCc$_szPeEU%vCo$1PWYRX zKQ|Ausgnxxp;h`07Jg3{7u%{Ke%u#9Y{Xy;tkmI4Udy<2mazgn6N+`z-;4?u?}RgO z)nfLEEo@m@ZuSwsDKd-Ru;hXc!ZB7EqV8f7XFsv-Msx_Zsro4?$I)4Bx*}8Pf}fR* z_h+cu`;%9bhcDK|V*^(CEcL|x6h~sU#m~ml4=OI+bZk$`-O@W_e{hr9A`5Ru<*=2Q zCEMxEnIHYg?IxHgK)Xbe7W$H~!J6Z2AyA~SO0r)xOpz?FtN zkVwobWWf)MEwJIHN(M;Be#qn#e%TqE@WpSEKLyR(epqv$l!`CHQL8f~VkS&xl%Av# zZf%$H;gF~P^SMz8M%Ko}#DGaRe6~92G$6N;R!>E>mL+>zNW>JhNhF{?_(@~+!$8h56lhgxdK zGZJ1JU}Or&F+tx>d$34{deIWctVcAC$q0K5cYNTk_SAQ83}V(GwlEHmEwd1t`QxcI zl{f>aB<&Uzi<^N{(}T|wegPE_$xlp&(~+`F=sAUSXtm|6Wf0AKb$(tQK`_F^{^Gk( zzv4_}aCVU35pLihTV7n*VlynKvDabB2;tpJ$z-gkftg&RN)`30KGEO8UJFCc>3SSF%!Ja zd0%ijOWjO8HVs%+Nb0LhF&7uHztK~vkkEU0eF|J9LL$zCmdFbnz>n602&+VfID|FA zn|*(v92$6q2sBHaHWJRu+hxVOjIpVHNSufwa@rVVt*& z3P%pYfPUr8LF*KVbw#4s?o5Ca-lQc!X9LoaZp2NRd8VumcaA!#!RJf#v_rV!ND?7xRBCHOF0ML@g4*Ag6XVviP%FH6ts=_~nuafIm zbAmeVPdzU12EhNCySEDd!$z%-e%-pk+COZx! z))PDRd;j?rSas%C!C9DSAd?AodWJs|+usO638?l@56|7p`1$c^5XWG(rOQK2WOxiR zQsZ!8j2%djV&nK9XP{G(g+$>`If*0@B|U3W?#YP(%!*e-zg9_l?Mj|rUy&(j4YK@7 zo>XznScCm?E*j|i;z^v;H&TtH0Y$yz9q%zpBL zL8daR!)s8kUd==;pKMo_eA>ey_(=Dj=PCpjpMa(h$Kl+bYFv(rEAK=^IJx>qiPKJH zVFd`ykvj|CTW9d`pNqcgb}c11!tqOU1c_&8cNey}*}wX&pu2WD&b5kp4pD`SB@Sj@ zE_1g9VU3Xv5^joQ^@&q$qtBfF9>#1RTJh+ck?KO-Anap&c=~(%D7iIFa^yrU$wZb2 zkU4@Z_f+)Ay;Q-k22R=gp*$hgJm^mBs8?VowDk|-dC<9DIy>lmFUxq&X?Cnm4OZp! z<#8NB)OK8Dwhm7W9Ata2@8V>2I23hRoI^IlasZzyrTVk}W!b}n=>{!!lTpbj00l!8 zu2Rm&v8f8mEQhaDP)Z#U{7EdQ`{d&!tBAMG7-mDtf<$mC;7$h#m9+7yFzQJ+f zQWV6&2PZ|d(N+c%V*>S+Woz^N_gm<6(Xj_Sm-qABtyh=(-EV}NE1(1;Z?zBgEx~Zq!N6wG4)}e-)ss#W| z418+rJTR(wQco)EMI=ceBQYBVL7Q5f0jStJA>pk}rD4n&DZ9#vc$=WAq|aQ~4resD zSPI=(4ap<0zbvYFlEhPkci>!UCKS7p-I2!U*Y?D3-#0ys-(J4(QD0X3c#@ms)6_$- zJR>U*HcZe;xz{bcb5z-Q;8azPSIUZq<}kDWrY#z6L8cxn#tx^X00u;mRPTG@-hqk+ zyZH`0`!yoE!V@O@Q|>sT_@t19RwXi%f}I?>yxRuOn@F8YOuQ{9>OsQ`4{@V6cug_DpNnA#c6`D?1 z_Z*{Y<0~-bBK4ZY!BbDF+S0-6@7&2|S_~3sG4WRp>y5+KG8TBEY#KuWx;Sw1!5bX7 zr~-?B)6`%Is|(HqouFMfv;V1(7ZKh?u{K*D+AW2%uc-~itf zEc}zWdo2iJ_62T0EuwC;@T$|XTI6=#L{4Cc~^kPk)eilyVOSbqh8I_-+WCZr( z`x6;7!827Nf{~7BYvevI#vR;^4!i_>N%W>fiC=Wz;7bV;9F!iHI}n;TdbU_MO|}ZZ z#Z3@S`-f$Cz;?xVa6SaDIgeqJZjHu}BHzR)%7LzSnAVl$`o^RgqRB5f>sc|y{9=va zStoqJ3F-6KFZWN6e|GoZO)mTOR{Xqgb5X!8Wwh8~A;!OceR+EL{ptC`<3P{pVT*>H zZw3dQ^vZnT(bHnDrQ{ zk)0ETEIXZV7h&V)jGH8ts?WrPfy-8Y-hdg>eyu15!kv9M1 zx5Wm}?3*8tkK^4+w0#anu8|xL0c#!3>CSMq8>*%P;0E6?{Hs8{CVAB2X>JT;jWW~o zTtvhaCGPtXh7Y`i<0S-y1J)1a9uYG@Rji@!=xykRTzn3z9@k3OqT!r(feDLab-Bsy zV3f8&y7s#}PKqgK;dK2Ek1=pJAiS&q=k6XnyGQtWfZenKN2i5l)L22T;(7f|=O?Yp zeQg3_^B{_SX+7SL{Wq1ZWi0m^TznZQKEeB@#+7YR!=ZHO;8BMd?-tQ^^?+;gPV8P- zHA`5l174Pef!n!VLRnJUAyZI%dCNNd{MQqr(Q>z1SchzX*{z#2j2wk zBBQBOzzdK15sUK(kPD9;IIbYcKv`q=R=7b&8Y~tU-heM}tG~sYSg{BCgpMtkcjQ!& ziG20pvWHK94!kuxQjC-!+8=;&!#WRda>X9%EU#4JcS>(dD!m#ZtAwnT?0_+2;V;x# z{ObZB%2)peb_NONZ_n_{JvduSO?DcZ@{bclbz2K*8QV+&larO4H3%Yk1)KlQD)Egp zLu%6ZKJ;Xs2rBoQA9zp+ker=b(9|a7j+|oW0nOR{z13-sjNP8y4Awtk!gTnm#*sNC k30YApk}_viw>Xk_jf|GLe*NQFTBBjWE1SiW4FZRM0U9yri~s-t literal 352010 zcmeFa3!rUPRX4uSwGj~&6AcsesHA9I+waE-d0zCQJT7pBtD=Xs_g?#+6X%?LJdgWO zf{V~UL=;rinEMnW3Ihm1|L1Vg|O zcw!?E?p1kW55RhF2p9s734w60smD~_3L653fFWQA7y^cXAz%m?0)~JgU~ACGX1zhB~a`^OM41PlQ~zz{G5e)tgxpZsa=WccJS z`Ob#nlO!&DW-9J^E^gU9FLTdt1YxO+zf#}F_Cez*|`OV?&P7?!@7ec$^z znRk5&_pWL%2>0HY3dcT7fpG74WZvz?5HJM(=Mf0^zL+}^?)`yGXTqoK<=?}nJk5tG z5I#lZzl7KOv~VBc8R1jgLHN{Te7pq=0Yl)4g+Tb!Zl=TGQ@@sd-?z!{;l8J5;_bx{ zFa(}>2!#9o^GK(|r=@g&r|s|4!>2tj2%mN&{(AU3KM0@S@o5?epMM78-_Eb$^S`dq z_A~?xfgeHy!sq{IrdQ!XFUq~Q{CjxN=ThMZlJLQ)eZj#$9j?L5Gc5mf=G|TlfgdFV!tz{ZIAM8f5SGu)#61yS!m_i~l`lpA zuku|E%b)UL3WSvdGw=EmR*u&oKf}t$-SgH=yuBC#hQJRu0%7HjOb5g2(=+e-5>_XJ zu=;BJox)LJ^=IAldz!^R!&>4Kb{l5Y}G&gdJ5_`zh{wSd%lou=cxtEMe`h zd{_fv?LL?PJ3&|%U!kymK@c{a&u>HY3e9g%L%sUh&hLm+JY zQl`^kCZh&vdzp5vZJ`3{Hel^|^Y zoPVc4*#0oThwW>Eu(KY2$$f#avpon8|FWbX{*U~$e+&Ub;D;B1@bCvSoeN(je1Iau zR~?l}leldh7rttzPYYj__zQ#95`@5CTG8qCt$_Ru<&IRF-D?c(r43A9q`{9xJ z*8h>oH$T#Y43FHs`@iWj7B&P70YktLFa!*NCpH4%QBQti55RhF2p9q*2!u!Nmx&9H zdT!?3UJL<4zz{G53;{#H5HJJ`0YktLFa!(%L%Ce%;W$4nO?L!TwK?Umg4@z+{*0o%&_~jac_BMYdkSr zSe}`id0T|I`4!HeaMdNCL-PAm?)D@)50 z3(;b{JY2^uMY9u2!`T(8Y{}QQZk6sF9=vR7DPFF;jQX~L!&MG12QP~#?yBHr{dj3+ z%RIeYACzBNp};c*sRvUub_#Cfkl-|&=hT~nsorpYd1hWR-!au2 zP|mwGmZpRv9tfuTGfT@9e0ZuKZ$aRgeS)bN%~0@wsdz}wjd;??jyVSb>ew+i1XF{V z<@tDNNt5nPMNpPwH%tv?BdYP(>nVu>_aHDE&qs6A$@K@|ZECX9ZH{ zaVR`DLvwT7E?2{GH%`sP%ZoETio9cLZpe)vcP}MVLlpf`Ff~8Zo5sApjr#fOgMz6c zb@A2Zso?@W51$$i21^TzAT@eLa|@Di;S|ViDJE!NGd;BsFAl2PhKtKIORrg`w0M4* zYI@BsDv_SC*W4aVElv~IuX$iYaX2T{ZU}=ZDz)Lzsioy;nfkQhaHdNNZJ-cA zwc+Y1*W(QjA&yoJVvk4fm#N<4%Tvqo;v9tz52EgHg;O_1-KFKlNV1+8M12DD_-Q<6 zXob?tB~d?GSdKYi7ZRu|$6t?tMBNlbTNa~jOfbja8bmX5oZ*fjn%y#7oLQch_q(In z+2J-p?Dz+K8rAhMy&>@0jmSgKGdV9+^V)@Ic5cW7`r0d^*(J_)Z2)dVi8n?xU$1LN z^TXw7M*Vdc1|Wjj8SdKab|Jht+&(i0(5S%cZsbHTBya$FzlGj+Q0R6kMs2?Co(NM* z9eLgT0j7)s57Al!9_tq4Sy$N!2f6ik!l4vMPv!|Xy6h-=!aXkhGOGK;>w}1&cSK9X zHs(MO6n($EQt+W5qNtNXtWl!ylgbFt(l`mzwl$iWjk>ecr;|2BTjRxOOWYS0=a!>z zGfLm2>GU!kFaxIGayROoO@W;hn3|af!Gba<=4xbGidQ&%6BVGy+k_tWic{+-MZG$8 zV^1JBwXgLE-JH6ea&X^Hy(ECZqgGGd74)Wu!zCf{Q?CwsvjiqJdFl?k^<|FPq?zic3E9dj5f7Iq zUOI6El|rr5v3O-(2EGZEGr?}Uk5aHWrsmNXZs9>ng1~X2<@IQOfkyKB6S(%pm7d6) z*PkVo>LPso_2?RyCbFJB;cBJuda4iIXP8glC@BK&>C1Sd5l}t=C8MDif(hImR3aTd z9azn8S%jFP)SIa%BJNJVqc>b!1dEjF?{+Di&5dnliJ?9H!JxMogM={Lh}h>D`}Y=y zOG`tnK6*PyQs?7s!mZCJbA+^i#tD*288`R94dcZb5>aRL0|&<$7X`f)^n_tOf`$v%>|)L^gvX6Hk$R3;h`A36X9-2QN-G zY`&-;Q=g!Xp&y$s@5fzwUW>B5nXW|M9FS5lGtX)lrQSyG469_glirtiEYJjOzQ<`0 zn;)bAc6I#>m&5zuo{LK}%R~}y*bwwZpub@g0$SiAgcnHozv0H9KU@(u z_l8^gL&$IppXTNb5BG-<)n~_3Br_nsSwDH>QIZD>26^6i0^aC(7ROG3Wz*ZTR0)39 zkGDe>&(Q3>ai`W!XuR=?J_(pN-q9b8YO`C#vW-Bth>8v20g$P}up1f&R!c^s(wnH-0jL~r3bVU%)0dx*u8_z8)?{KQb zn{MO;%5zH)L%F8V?Fi8GJ``V+)ph26K|B=Z`c|+C;Oq5gug zvpj^p;afQ?T)WGp&~qox0!0u=OQ||?{gJ$rlhmiP4lnGJ@6uTtq`GM9mQ;rT4YiR( zuGYduz>)W83)3KPuncPUazyez;H;Y{RHeAvHDkQeo1FoHO4fTcdTBax8u?idA}+0b zM;LVyp}k?1V3}xBXFu8$4`s!Jm4F#ZP6jSIOWRqD=Fi6brqh$e{9VQYNee z8F@0Gbfvdpg@MVXqweGqvcZTjaNQ0>Abpy)0k+@i{8$Dg5NR8jitZi|53$wB5O23! zgpjaI9)A~<0If}^ZfYi7-G)p`CJA`T5Z&aYivdu^o#iSgaESjQ*&@x(at#qF8_}E- zIo<6TI&W~W-Az|{A*L^0UWPtFd(8P|QTjM%I@=9|9M;g988JhP!uD0 zGpa~Jn{xA#Zs;OZ2)cy!=XMmmE6^ZGrQWqE%Axlgxlic9GO3?Efa|t~{R0vL*W~_$ zBV!-2o+FgvQA2-oJOm%_4;OqM&=XYVR0Pq|7Hp#sMf_d`YI;$7f0=;;!+Tz{a=4lau_Q&fU9aRv{nOC5fR*mPfOtr+Tn+G~F>R-v13Q8BJHS z?_k$B6quL3f|>`*rd~QVM!T4(t^<%-CPSukAhAqhre`3nOrq}=2#FI?8nF*Z@hx0AAr$FvOnz0qs+`c zE|(atW)2AA?W7RRl<}Mu3-8SOcsto7DSBftz|jGP&K$rnPezfM?E@Sn@WIl|g#)k& zin}%#z<9O-6CAzWJc!BKI&)i)s3J3W(xDJy&u+U&ccgUonaMlt0MA}X6Z+W~;*G3= z*aL_)Wp;l}7Z_#_;qxVwoJGz4+-de!j+VooxkH1&Y`lF&j7@Xv2RNiyw=~VV;M_*M zu`zzGKbV~%H0BlpSi3234xU?L8shwAgCU)5Q1I#j*|sTkLomRGg|-c3YoEWBj&mq* z2Lf#C8y*x4R&X|iGZ{g5SaxbMvJDUCu*}79*Ip|l)uvmO+JCy(MS{FOqN z1$-Fz)>~)#67f(l6URhbi~9vLwB=YlG{B06p@9uTi|b(?UxvwDfm__jO)Q>?OpC)l zY}PUbOJz12qJpKv5u)cbo^swmR!*vWX=mDswR8!+ZJp_h1%K%dpD1VHD6otpb3U6} z-j(E~DOkQ6s>SjQFXk1TRJ%iTN?JLLx*YQn$x1tz;kfkypRcamKn7+V%gXJ+jB1f9 z_XTHv;pX|b%@Xffc`#7n1XJbNaZHrGb@uFd=4T-%D7-zuc?GZEtrrH^_Yethy=-d?EM4K#9-*lwn1|KnA%srZ9j_l`#g7C3=u(D)A^<;pEE$G1W(CR;TpG*?XyE`vE_kc`_&?uE)5_0VnQTOCzs$fwDs)T2G z)k-pUhI5Zvqt3}ms*GwrVa=Q=Md(~6u~qxQ;`H49nzbgU%jYhnGP|{%0VP@Q=blrP zH9Pc+in8cvFE2_Iqvp9+QQBBuk|mLId8w?DdDXfI_nTJDk?fAx26pbPYvlH<;asqc zRY&0ld-odIhO>Q_^S(85rpe>MHS@xI3koFwI4@WuZ$cpFjj(1Rj~uf;??9?C9SJID z@1*k%8BNI$&3Wa~3~pz19<#1&t?4%!$_6Q&mjPLlId9XrT-mOiH7=WXLOE}C)hx8F zIFC8xs92hu^iC`1T}ZX8!bAn+RWeXJm#tYzc63*)nLpF;!(i~MhP>>ykRt7K88AQb3PJhZsdvzUs8C6vGdH%+eY)yqg4M`DvUBe`p9$0_I`(=#lcbMLZ4}RETJ$N9 zMp}dk&?h9O*z=j7$P(JKY4F^SX~ zlh~N_+$@}b5dl3mFKoOkvR0|HeUthzG~InM5CGP*RPqKD!pmdTshz5^KV@v zcXBpPbz{p*Hvlruq37Q{=X@WL;~niecIT%0M}ee=Wlb!ka);UV*6*}rgmlECK03ok(l zvSnPjD32-MhzwTD;%nFWly%k@*+y47^tQ3l9X?4s#zb+Am;p`$Y#1=NaXT zPLL}N7cB(JohA-_`2=dX=)zP4z2Bwp^m4DhP}X;D(6=|enO-;P>x8T8oo8tbYv}Jh zCw(*JWhip-KIs^WI3Qp{@WtifVxO_Qcs($KS2UZ$F5Vanw~=Oi@tMIwm5A)(g#bJ{ zf(8~3*U_S(xN{_G%iOvFoSiA=A~|dEHo}W9r!4R`CL`O$SNSUF?fL~caKm+h!Z-2N zhl_7rh@i4i#2r!*1s|lK*vQ{?QLw=7tB8Ns6#=O?q*BO{!n>}`s5|d^Fj$xtf5%JO z!2(t(3SENn3>T)H5BVk2vah)0!UZ;fUvfvn*)O>}$FAPJ{{p!W@%+Af{lXB&PgMAB zs)Bs9UBWq>KuhgC3rPxF-`;ahu;3UVCGT1wmieBm133A^&Pp)6=N5!<9f6H|@3|c> zFzn0AT`m{be6LHPA`c+ki~C~vd(XqkkS`)Q-MRE8stYF+TSU>lR69Pm!jj* zazx|4^nn0wnXCz3`f#wYvNWxea@jtCJ8eg{%Qgjiq7eIXl7)g7a&Zdn3eaW8(McsUikJ8NWm-vfB3R++Hge-K<= z;0Z=ey#G+XxPcQ6W-9OR%PW)O`!8CAZ5mc(UN`T*JP@ab_g@t(&Yw+U=KXgs@TF5 z2&J5A{2>%!f8r0_E^!RfhwfX7-@1Yc!r=x_#fKhVig(OUM>v&4&AaxIc3AH0a>HUi zyXz=ax3WN8+jVBZ=gGUK14mT5E?k6RMcxnNCXzb&et0{D zo%ZnIyR}B@=!YNR3rin4QzMy+eFVO{?h>NBpA#%C$W51zT!avb>W^H`*UOgaSm`5I zErHKde?NjTy_GxgkvjrRJ-81z2DS8&yO);xlan~1ndwd8J_mGaq2* z!;d`3DL7t1*(*>L%F?+DbZmE-;EK9L@)64wM`bI@zNHQjt~isEW^qc5_Bc$A_6SR+ z!*D-Tt|)LfuE45C%f5rz#BWfC_6BmEhmY>$)S2NDY-}u4 zKYDjIKj|y97fzj(d=%8hcbY!>Am^otK0H6oerkgCh&;P?a5@jCaMGLcH58V=)k zxA?AX^P6|i&Jop>>v=9|Rb06dK|L_M@=WTl<62jOa(MaBb(AYFM+&p5E3XQcR@jn$ z<@HM|OaNEjh5%){Gg#Wjg7?aM0#qbt|5x6R)8j53pL}fp<%rzEDR@Y*j6=rx88ABP z#>d*rxY|L1_09(Iv5h#vrCL8W8^8mA0^66T`7HP2AtI<(AD>>HX6J*CFC##zRsuOgkqS~&#ek%@vReinomVoa$vHZC9c42Ll>zey&I;h?LxI^~8%gf#wg=lta9?*}uq|fCkn1kn7I$&EiYV#2tGC6`*(_VHyCK*% zjo5YFAu;;vZrwILWZ`(-9f)T-zwYi}8}8^bo4@XXZ8KcmCqs&pYlNRXkisba$wLD1 zF{bcYw9gd)KY2y4W4J<**9Okb?2|VJZ<|?uo5r(->M&{I9$} ziTC|OJ*j?Y#^dXMauB+*r5~3zOR4sfejwkCU*R^we>k3>r5A$OxGzr+!r%L6gu@{G z%5TZ@ACKj<@ZVm?&(f3sR-Olck<&{r_>??f_LuTp_aBm8y-nWN?|5Z)VqPw_Z}zjrmKhky77 zoECniBu}nm@1S(xxp;q4s!hx-k9+SR{O)_5Fo3evIL8*PqwC67LxADfkQoJ>PTzKMC8%zYX+T$Km>)?Qa;AxW9P%exb}? zy$gNB81MU2dHxF+5cNI$f;=aGT%PMc#!t#ydg@aU##3qYm1np-LW?|Sjy9AAcwOHH zSKVNL(7;>qd;|enEvno&v^w0%#+d$&)<(ZJn&RHsz5r>*d0BUbUr;^pnYE3sQb%Z&MRx2+B#Uu z@>&NrM}89Tc)sB~9MAPCUT)2DAM^F)>R~Kz0~e;cULrgq2*6|97)$#){^0t)dK$*2 zbLZxa`=z|b@euBp<8|S$e4G0(YaHX`HSYM!SGOaLXo&a(@doghr~VP1G;heObufRx zyW=eh4?^5$E=FFg@ju*(=e|Msoj1z!KYpF#gW#Ybyy3-?=eONDRUZ0BZ$UiP)>l7^ z=W~Pb>z|Q)_nsrqZ=Emc|L|0K{@3r|iT?gKt?&IHJ2vA9OqA!AXbs@~DPPC)fCQ_3 zpC$SC7uiu#djDyczd>}3`hMo;r2LU@#q+sA=`}atiFteNfp~&{YhzoCsM+F`y+ zSSnwBE~kgrJHGe3#8-gPw|+vN_tRVx?PCmz+h=I)D1KO5j2|#@_?3>?;>w_&ysS}~ z;$#We^NpWDe)Rd(#M`K?-7M$UZunpSiZc7+Psc>O`)NUV{S2Pyr;{V4r$eQ|d+FIf zk0-D@kj9Sp7d#zL$c`6(Q{E5#H+f$txKV>FI&)%EN0g?GG@>ksdFlRTZ?7ye(7bE*Sr zpGvR0hVzxudKT*+#49jHmFG^MVj1za=Ser>1plOhBC_$Gf>(l<8c$$g}` ze`*lwI2b$7)2$!nJmDAblBZ(H7=pf(2RS`dFcUh`GNof*!eyCGbWR)%l^i~d3qHl- zG4eVp#_cc-zjlmI55N6z683b0{wi&#UUtk^IbXUR%@YLA0@lO>LBGF2G97I(kH+)1 z-;npOd|#e-9U=Mt`E&e~H3V8<*@!3eBs>rOG}6HbUcL)Y;KMu$@%8uN9na=NQvOvh zm-JJW_De|}T88tW%xk|TWzH0u3WDba;itdL_4)ZyjC8)fbc>|l`8|0OTcYtPFLn5Z zPH$2@KK#!=;Cy~wRi9#d#&|M%FWyy_sJ?adjZ$9qd#8VuRL>t-516xWk~~cMRtiWC zVcf4@;%7oPkRLoAwCmPrmN#H+vCN}&2Aw@a%cx&5a(lQ^dQI~BcIz`0PG|-FVR;E2 z&T^7y9POoeM3NU{Vx19f@_qsR<$mGGvQzko=nlxkvX9zE*zu->w?WTTzTkL8c#G&$ zrKdfW%akSt@@$a&M?a5+#g?A0m37X1TIyY2N&-=zNBOPtBZi_Li{=PTS@sksI z!TT_@!FoJsLH9MvpO5@UZmaZa(h-o)@n^;=w`WN9LXaWOHj!Nm(D_+^MSocL#gp|| zJXya){ToWs&g)6;pr2mGfv%Zm8~;}Z#wLwgy#s66(Oy4ICns9x^*q41B;$zabHou2Ob%5z1=l=5pQ&u5fg z9ludoo93@NrtDbL;~p0V|I6>AbibtQ&h48@x)0L*j@#F8n{I!=>y&K9qEv=-%R0q;Jru#ZK%9|$<>_K%lV&vv!r*fkoeO?c9l;16MpA;W!nPUb-J>* zrQJvUKwD3yy~LC82Q1j$MDqzg`7P41k^W*wyM7M=dSZP;@|9jhd>?(>KzkwN_q-Ns z@^dfcxUoFp9$I767VSOJ$M0OvPYx>`dN~C>@rG|mzMH=w&%gUcdH(CI{4DMNGI_3Z zc9@@;kayLs&)CfGY!6X6pn9(IS=DQm?>L)gmY-mp%0C@H@_Z$)=X#wIYl-Cq(E#aI zs6%C1N}iXTPQx^#Yv*%UasE*CE3bzFJ13L;dhxaj%x8L!+x@0AUVLyiEjs|NKEn!&7+-?-z-#sPD3;d z=52jy4^}>@e~=N;Y2jz1w%I z9Q1Zy%)g`kM0Y|Ty)4bvmGDrMyHWOprA@CzUqbw0jk8?~X>8ZR)5%D0yLjO%kPmy4 zpF9aq@QFIv^j-g*t%>K@?U{ItZr{hYn=$p5wBE^CsrPu%518j^A0Di6TViJcjjt!! zf3vF53?wtG(R^@J9YEwgVX5ndut9!z#*@fy#Bm#-A+AH{LCRAY>*(7b;b-YpLhmJfe^cfOW%Bxz z(nU_6P(H@}ad{XgSDwReFT-I^gV0Ttmnz@N@zj#yr@S-ID;*ykC&NVtA-Yb}DEO-K za$T#==2ALZ&PynNnwKRsje1!2IQ+d`09dMRk8QM=Yp+A0y_{?++-Eo%4&9lZ*x*Rs zfmZ(DH9Sw@SN{!9%(V|qaeZ>801WeckVBr&?Z}xB()kPl&l7(|;`wX{@29!5B0gKdJI@8yv&REt z_^j~o@WE@P&DVDM$yojAv0PvH_wSN=NALt4xbmF;H{AGje%$y=r~E3HXZmyPu~{&%F|BXO+qy4W(9Ix_OWH;J=i^xXq593T{E3d%x z?f%Oz$n$%$_E3JU;yHuSk2(K1H4fr0A4w66h13 zg;QS;{^I#~VtqNBxvz@(5kezON1u8J=jZV6)m<3lI&>$8OK$D+{$bqSKXXpmpeE362 zn?I&=jy7L*mX8lvF1!4Ha9tArmz$IDzpnS;(%yfTgb#XN60VSL?&@Kk%Y`3E;!A8t zmH5*0Z*=*w)_?!294>AAoIKx@=$PTJCvAtn^M$01J7f*=T>Zr`iT}Ho`*4YM1lJzh z7hU+JvMzWY)ozfs7ck#<{r?@2U);`@KkMrb@BNw!qyM_c(LIg#xd7HIgI&AFUE|A_ z-Y9wm*ZVsMC-E%PT>hURUDAci+mrBd8+|zZvaSWt56cBSSuVJ8r39zaGw<@{NtB%b$yE}r*yF8qdzeV*|D$i9ea)$hqMZnkX@uK?Y$u8h5m(yi{3{Qemj zsy@wnGA^qzkb}Dk3BcmJrmn) zXbkAP%A*|L@OqK*1t+hQ98brOlKmFu=^PG4mD`diW)+}wGa0P1mh#jcPolblOn{(k?3T;9|914qfb zqj#!X`=n>{+^)CtV=Vs6_proXqxNjwmzb-mL zsCGu(W8L#j>F3|9m#3aj{=KXTzvpuHa?xGkyQ1{LIwN#AJ@Zq%*;Wr(#daz@54wWu z_x$*!KP&Hi_5oa9d9S?dxue>(bg$0-d#J~qN0!vyrF%D}N8P)fe!tXr#<%6EdpK_= z1}17RP|V!e)uu^vmiHq};u7C9K3iA&n$DN6`*qxY$b2zHPl~smL#WQJXLiiXXdS;* z`mcK#J$G>Xuab_Fc_r}zrEmD_a9KC+ZttOc4(_x1`{d8tbS~BZ=NTdwz5kE;y{P|> z`u&Xav2^wzT`!`iJj3bJ`=ZaFr+*@y4EQ`Gx*>wenPpCazt^uY#*ysB&j09v6>8B7;Wp z00sqeEx`ciqAWu}A8K1**$JGTj$C>j`6tkNhy7T2jgy5cM@qVG^{hbW%;TQwquMUL zFFocgrK_my;=P{w#i&1wlgB0J7hZC{lZ?OGBh&KL(*k6kzf*v|I6b9w*l+UK68}Nu zb8AxU?C(Z8uwk7W>pA0V06Jh_1F=o}G}gnBm(yq+Bg}ewzC5J?)4bg}Z?DdseJAt} zJAmu!SY0YdJA6*@ysM;7%GVB|F+%>Rd{iH!<4@-JG`7jwO6GI)Tn%YCKPWv5&ho!B z)<2QxEb7Cmw5I$^Y0mj&=-T#rkghAXkpmmOQ{w2s_sP+LKl4z2rh0H5fAwKezY6C= ztLI6IiSqEo$2&bftg}Md2Yp8U%$Uyf%ab2K$)!~#UWqeP-BN!_@b)E8AG2R&~JU#EHy)52Uhtl<%*QK29 z#A{E-rEQPlhm3{tR;3x0U8-ZM?vp>$bUF>!q4cFPLC;!LCMZqo-5iwxUWdnA`Ey*% zz4t*y*qzG;0q*=TJ%c{AJ@qZr`O|jvd|v(bls=W$DxIo7N$#AUbsXgnPQEFh=CnLL zdhC_{-1(d1A>4Oo8xDDojCKCmUCbj!_9VKO;e9#s<@PB4eBc#w?&5XNG_9v(LPkCm zp3R}ptT)lx7%$Vpe?JxJ;KSZV1i75|*Ks}to?oc%rs|^32fK9GSv>ZV^2?krCi8Z- zkzo8f54?xLI?%avGNLp=YaKk;-`jwm>TK3>#)178+f`5(*Max{CR;Vi?E5J^QK#x* zd-QmtWzU8**564#298b+Ft28vhA>6Eqc09Wzsuzr>o1)s zbva!t{LdMF_r9(ve~t7!ro)O4>tud^bF9>>*g5^x`%$UBse0zIPOtR)?==4fzx=gx zQ6KPAe-b_WQC~0BU0y)?4scREKWzhWJc+S!yoK>d`$DAjnnahueDOXRPqvlq#ymb} zi}ZtO1oN4jM?ME&dmQT0^G>BNrU8sW>+p01On6S+Tst1Z<8e6eUKr~p@7wKst3v17 zt@di~+oitTYPVP4ZRe|++=19KA^0WSc>sKIQgU&Q4W2iEOB( zL#NU{jkjF3IQW zDm~}3Nt~;<^!lf}IE>+I)E~^tzhA}A(eo1Uj^Cv7SLAVL9sUd>cg|62O1{$3J*n&T z7C)Is96Ugn<`BHJCUy?S=TkHe%JLQEU#M^{(_!YfS>Ul5*Po^ zXZ!j~?0ezr;dSf6C%wt%5t*QMZb;(){L4w0?M1FE+jU%+eOF!CUn6W?nD1`6@Skr@ z;@S4>%Cb+Y3$rhX%m1sto#bbKYpv%wNj&>gYuQx0zj|zvhy4y+*+09|$EWpEp&eIG zD>-W_osjAS`^mU^?%$l$v)4mOc)x3t@Q;&>b#<~|tqb!$Tic>D0T(`ou1@p;1kKv47VcSaIs9_8w3CVdlsF;@?-ZNy2g;%Y|?Gd7me|^PMgXd9HRv)&syt@^(Vquc%+@ zIDJ_4VDD#(zN^2gvoSG0QXN?L)vvzV_e*UGJpR8W9)-DZ`WexO+$A9SsbSJ*5#~Jr z@jK$N#0y+J`}>f68u4s%Cc1;|MbD4a{-^gmbq}C6F=sCB9g_Z)AM!SU(~xP#@DZ()`&2`o>|R zIncNBD=6_gMZUDpJLe<3QZ}jlUR38y_nx}v^m7OOR_RFhwTi79bNEd(L4DObj(n#O z`xmwCjof7;`guQ>No;t)%h?eb|FrLRN{=l)_hVd+@@O3_|Fpi(T_yFZO-XG=&PJr? z2wdLRi@qxkyl19$g?mi7{j|T=r2Bezf60HpLicNoCC0CIbG4zUT}ao5vk&F%pMSn7F#+EH}= z**=TUJd?(@~o&HWddnD_v~?xJH+`^#U8yjI^lx$6sh(la9d z#sPSO+UeNG1DLU2HR6x@5HP~i-@64ba(;WvSDcR~&xPAVdp}fv{)ao&tlwcySVzQ@ zbznT%PY6%ePw-?P6g*k?#FKSyJXw#zQ|}_NK8JVqOG1BHr@)i-Av{?p#FO=9Jo#+Z z;pOEM$}3(ueSyZTb{##N=kccHoafuXN6#VrIVxlq(<%910W+qpeNtiRi^LNxYo68P z6Q2*vVV+OwJt}{0r1$*Jk@T+XWDq@ zGi^N8-lYBryzUXN{s(T|Gp@R3{aVG?y>5kjWNX;a^t{OTQTwE4{;UhU0GNUws4pw8 zGvJ_palEe}dLkVNbM5@(L>B_D;C%$`0~4H;=jP=S&zeRa?dY8ocEUxc4Hq8;HA2MRqne&l74--i_OhcvI)-7vmc5(ci~5zm*)JU9cKda~#_>H~ z-)?{4^-j_Ytb2sSI|yn)hwfeSKbM%j;^Yo2kC!?^UMP81^dc zuTK2wEz&RLPwa<}cs;LU-*U_gpYZ|Pa6A z@1)yziMUK8w71hNb66?#_zTe*ngWx%A}_ z<~8Z+#HMXsyO@G$|`n&SfaWdHPQ}2hzJQTE}e#ol#s65hrp2}?f z=8ej!+c|@DOKbUu?A2Od-dgD71m`}b7 zPxSwiWdG0d2y2XaI_8Vl82YYyuhYl;odEVpf!)g4K;>Jf$j>?p%KJONPvyRe{Q&iU zcLMK7cY6`_&mXx{s`ew6gIGV#&g^X`{Jk8kZCwX^KOXODkKpg(;GKB@uu(mNeKYp= zej9#$I@y(8J0g=so+(e%Jsz(!Z>LT3DPW*H*v|pZ1M<96{rWR@IFwcYx}2Zsh@H#X zqgZ~qx>pMeel+JPo6MMXueM;_&-;BQpSys5oE^C2&R|FPpBRVJZ$yuwcHyg~wolz# zsT@(ct~PCz@83i*(6!pB{hnw|8#n0RuP>B$@+>oVZjZhyW=u-KLPX4z9`3}h{(WtlrO;yj`oCH^MB z%=?~<3u8U29YXzWbN2?A59Vx>#c^1ZY8O%7ro4=K7~~4`D$Ij^YfJZAp7;D4#)&>D zuVEhI#_0OMSh;T}F+M&I@g(uj7(HJS``c)|o3HeFl;2YTGcVI1N8Dc1%M+DpBj3M4 zx%3{@>E_&5&%Z!x%F|S*bLS|W&+%p+Yg+I1eZ%_E`yqNCMC}&dJ_$TV_SK+mJ?nJm zBHTur-|@bN_A=-r9oN!6Q*|VFhnoB7_1m|4e&B78s?+E_-pttzWR`x%lJ#KFh4L}A z74caP@^Qc5d+pD1u0nq>2GvVgrUMJrn^m@E_#e_)w<4Y+djjD-sGsc|i1)T8qBYe2 z^|Z|i>8gWy*|J{pDPL6?qx_Zk78qB?Muqm6W)QEso9?$*2cff#lTk0y)dyV9gq$ra zIUAxopy-#L5oONqVE0o!hGjn9l@8Pf=Js>`{xs7d@~KUj?OIrey3b&rE4)8L{DMmQ ztu=qf^m4|-pEWt!@HS;WdqVl=Z9+cW$5MZ6wd?BsMSWMto=uVc1NE@Hg3Xj^9{tv{ zDz(|EuFGdv$mjjNe_YDz8J61gbZ^aPTF9?DvhJf;KSjIx%{$$n@|hRLqx&qj&m*7u z7H{dpWzZe)p(o z5ANgA`eDk(AZKkP|9&dPi@wO1kDL=TF6g)CDdH0(H~}x_CEx+NcggI_kgnrYp7A%1 z7bp+VeTA-ZwWaub0&;)bpXYjfM6dVyc;>to^Py`+*NEPo(eqlR`ONtY%IV%pX;*30 z*=lvKBiLe@g(eNAKOb z@BDb3%;{Mr{zd_06Mq{3Pk*oWXJxIauIIi(l(dPt)qCUnp1^roo_YNZ>A7#sF|Spb zrt>{w`vg8tN64-b;E>tNV!i5I`aLc3;A+z+H%h}dt|B11(&n4#PC&@mIr}rsBAJorC z<$>ehJRj-(hNHX0M+y42x5=QMJQh6mP;knuU(BuANp!vV?=N6KrE8mYeWG8tCUuQ6 zjbKb_pJ&YRu0AllufRL+DIgczx6OrrV=Z!@$)DP{nRo0GidZj?TBu# z;C-R}oFI?xF<1x3JL}+RhkY4o4iKmNk4zr)iG3U?5879`;rN-%_v<)~!@jSW3)bgl z|Dn1)*Wt!c{LNdmr?{qcUmbUrzKZguFmgOD-KO$arX_zz2sUWl6RQuE%DWs5>UTgB zdPP}1Yu4{y=~;8e2M+kUGv~xd8W?$cPV-UZeQ;6eLHQbguLJAEe-|I)%&yhmY_zn* zzhr(o|Ipg$OQ*S?ay;h5fD`G5@&N zjo;nFzeyEivT;2xsr8~(rP^t>>#e9$tJE5es1mo^{c^9@sMdSk;KZ1I&YAmp(rK?b zdg}P&<)_TuOVSKSAX)0|_Pc{htzN6t+pVZwiw6BczdmSGTZ2v~?)C3T@-FbDMs?i$GJaBbhookHY28mk zCX0-((XP~*^>U*>i2I#JB_2ezdb!^pH0qUJwKM3a$9LT9%rbt(^3-@?HtO+@VhV(# z@kwV#)1=)&)U3w+M!6mJDxG@VZ*^PMa$IZm`_*c_(e5!}te;uJ59ZDHmPczT9^fhk zq*+i&tyQka?P{yss+T*}xP=DW)kdve#r#Ix?6E^YIn!OC-|AZp&e43*NUPaxc0q*I zdbJ6^w$F$sX_SgF2KD>rKGa2TCeya;iL^L>ug*yqHMf_tWw63>Nf`Me$;FA z+vR4b+iX{Rold(~uJsz}MqWL$JdfXq&W!5tiQ`V*G;zelvCND%;io0>(Gz==55hPI=IbI^`agT3jCV%MsR>E~|KW{4vKJecJM{H+`D?dM2<+xobXDdE>>lWX08BG$CZX$`5R^o2CH|T>4G~-I#=taF| zt5F`58=ZEuQXaIcm>Y&qT)CcWK8%(EJ8FZq4quB#$omv$wmutz`q`D0|@aymRrOB1KIMspag4ole z*_HT2{AOgPJ4NNCC(T}`+le4Z(1%vLQ}5Or&01V7Hz01}PP^;JUsT29q@q)ly1QLy zcPst4Kj_rJf@{qJ@C|M~tk$7~!55-|?EKBORg{7I<;e2X2>2E+E`f_9*vy4ZHsZ#F* z8>21p#2N8y55HYLu{@jr=Z^X_OUIqO?!=RiJ2{w(X6Bjr7*AC}<$27BjK*OTryd5` z;l#miNsxR!(n3lTTYbqee^_PR$ZAo!PLXyEwxN((c!g zl#zN;(=y6+G7G`a%V<6sZxr>L)mA?Sr*1boakBv>xZEmtdgXGxT<=6GI|!*&6w%^F zS1BN^uc^7FMmnmP7B@PYPuf~jfz7m)Xsvr#k4?2ATtOImM)BM8>TIgjEK`=zW#f{y zk&SmauBFv7%}o%&xZ*`>=|~$znYh8U*x3CgNl+~|w+(qhdqrMk+X%l&ev(`{fM zS!s1D-CCpHg*sDfV8hbwwQGaCC^nOi>YeyFRXfn5x5}!qNyIsDD(6sa{%3c#K^z|ol-NNUJ@>M&Wp-@|mwm$-GwaN9Q zmD2*|O}$QMDe4g%h*SJ)H3PtCw!-?V>H3^%>sVASKh|hwtB%aMn9%|$1~WM+tVeiV zE-UH1mFn(jugiB$PB$f-)i={k?f3DQT-Ou0FBKj zZFPFJa?8Y3(!pQeU=XkuL zIJ#%laTTehLVW#t1q-?gCAS&Xs?|!bS%!%krkXBJm^%IPT0&{QKb#XGv|7#rnTm}8 zml)O7yfT+s%tZVtaa2@aL%2_&V4~t`3n?mF7fU71KPl&UZLZdqK4(wv7UQ|$)_DC8 z=10f@;T;({Qq*Kys!H=%VZYRabZk*!r>tfKhdn-O z8_n&Q26tc48B>998EU~Vq|`F>GF2CoFp;Pe;XI@YX4t|OwcD=1asX-8FXP;^0rNsi zf{jz~sKrE$BYSo7mWaC~P8#k(RCb$vG*ZJJ7>8=LPQTx1Rho5}H(M|YBzj|JK_)e3 zqGj+YEq4_i?(tLmQtgjwc4&4_X@8k^(l)`zssyGg9;@R`PVP}%Fx6z1>t&dtC*N!y zp`|rd!qGO06u%#+W|-pglapS>NT}P5QwG?A)vDLQS$(Zq=~m)u4=M`|a$)w1Ixr^n zJTp(Uzfts503>;&@^-UR!`Wn$e0r+gYNgz(_38~+0xRuaz0-`9S!T|m^2bsrtmY=(nPJtJ7@u8gM|tmXE%-*17NjTI7!O)-CdoY&fN8f09p)#4hCue+^Yw^f7hP`?{v<5w-$>+Ndn zoQ5V;Z_C#vGdnJo2bBQ*16CB*64#GR2VPzD%Seg(S5Y6~2r#H_qw_UZY}Qa8TcYZE zsh1LgTwEnyP6^=S)}~XFog3YnMnU*`aNo0P(o!Xq`h$&}*Y(haV$_*L4%b4av)V_-@DhNxYvJ>ySlZ(h_D5|DH)nv?s$>NuU zf>M=c;;>S*J3^Jar3BLaS1WX?QJj5jLP4L(HQ5r4QO!u1Ol`NkFdLKIu}<)rxLg6J zY@wgv_Yu6dz-n+R)9cl79Fu5BW9mty$(RfownJ0y*HDTSeQ$LgN%z*&9J#*r&S42o zp1ZH$p5#lZZ>X|Hsx#3f_n59p)n?Sm^iuHS&*TsgVCRA}CEOZobhZS~(g?<>X0O?( zcgj(FAk1J@RW!xwd_$`gaLx8B%}TQyHCjD5aDgydaXIdRN_r51aaYXxV>Qq-61o`8 zBMrcmg<-)~(upc%SPmhy>+n+Q*CT8X;+nXOruoyTx!Mnx*B=b3(4N|L z8Ap~+ItJ<|BbzGKR-wqiyw}21$56_eajjp*F)Xx?b{Q_Ha^T|%7HgVC>uZ$)u35Oy z^=nbL+Jh+-mer`%Z8vZ{3(W^UqwpLW)pH98*)=4U?zV2JUQ4`=ABAO7%X72Z)g1dz z>)*Q%{5{1xHyGv3@m+;5EJasw<*m4U`M5QqC? zZP2YpjdGQ20Pt(AH0tntl*vUzE5|?SHD5o?Qb^ACOX@F{b@XKyhx_!9y zK!{a(u$^}+iSE3*?x;HS>bbZ{*1}fdqny5$UMV`7mx(OUAdM!-x?K0=k!omZ!ME=WY3D$~(L9d2g)zWv!UZS`r~SuR*qK_hdR3|DSvR9#A! zFDeMtDW^ITWoJ&C^BIb&sg{w8b;*>QjEgGBU#&EdC@Z9haFf+ll@Ie(S-S<3D=q)T)dMtN%xIgU@UQeaWX$7@N&L`>8k3q8v&(3P4PdXef=+t0hsC8># z{HQf_B zYo?vF)wF1m()`j*(^{%)s{XNRDfHw$tih&Q%`)jdqR5Wc{)5zKiN4&R(gMZPUPh6H z>qQlIQe2*?55OI&I0J3>pfA_j4csb>$Y_ueDo&4OGt=5`+_}O`61p%mYU&t8)9r(W zl-9iVGpfCgoY?0z*Cw1hTCn1RZ&cbfY}z6?Ot;~O(8DFA8k{av+U3QIw}?7MIWAvL zZ>^N!(m7~FuOb#6bbP? zuEnlpN2MXJuDgnCSu2-7&}%gt<;nnC&qfy}`%2vD^>96L(1BgN0e2gghpTXBIqp~` z16Qzyj_h2KypEh=r7Sl|U50QhP{1JRxBbaV(UKZtQ(#Zw2z|)Ddjb-`HuX1d9u1>DZGd)scaIm$&p*@aVvS-jj*#G&glzq$+hR)v*%T=tCqoEQ(rWiP0` z3~O>q$c@oJWvz@!OccT~8Dzb#slWb^bi=P(QlokQ=;duzf38&;a5?Jq+PE0o>Ga}u zzh7%s$aS&YuJvN4kb51Os_PF|y0h`r%zQuIKD7|dq;+$jQI+YJkWT_Gi`HP?gl1f6 zz{#!=cj|TAMQD_99GafEM5#^)AD7&G*OPRajWv~Sf+52}itEi}k*XibJ^xkM@7ny? z4{nuO+-Pg?zAX0#RowI*kk`ea8~3ZYW{%q)9qg+dqZ{L}dQt-8sDdsHbUMv4wkkF3 z$GWf)*DKXlr4vPQ9K&a|(-dc=G$+lIRys|pgqahrZ7_4TvD1Tc2g_#%XWea_gjCy6 zS*je%RY?t-jpw5|=O;+hIX1I2Sc7R1mqh4fIz}60WgOI^sD|BP)Ptj4nlon%Bz_*U z3b@n?SZeUm8^FD$0qa)-C->blj9|4^4by@|$BXx`e>Q)~<$~}03rTC1OGl{h(KNzX>kt)|DIx^a}YBrfjsT;I||3ELba@6hN zs3EEj8ZmC%SK-YFFGq0yycBY}y941k7`b-CIWu1gx2|YBJ{mVQneFRt_EY+%B%7C# z1&+2t+xd(FaNIAqd$npC*G6%pvR8rY1oZSa%qX>XOpIFFDHhw)` z9}Z?!+Ao0Zbm1Qzb#W!X84Wrh&}K3Rt82$ZRIBIE9<82BdiB`#=afD}>}3sAxwDFe z%FEnhUAcmTa>}BYPgG}K)9V%AcA#<@A%#nA!)+%<^Z3leNi)6a_+(*hnLGuG5`_I2 zDd7~{QPGgAg^Q2n!KPkAUs1!JEjy3tuj^q=HienZ>+0o?W z+v3HcODHHsp9oofjXm<4O;y}%(mM0Y-fii}rWbUvjBik+1j86jc2DTRl?Ycsad|z$ z*O+h%vR`Szqpe(rVYktRaaVRz|I_XJ4eji3xIpqHQGv2baJdF|_$t0WgG1OBe9`Ky zF0SJ?daZigZ8kdYI~rcM^`F8@#iXkCv0evm<5NxeGEb|G?+`VhVdL^FN%YpB+HBzi zE8=00D7Ua_#Eb4bEwnh26vy;nE$EX3z?W>gaQB5Fz0t%GWUbr487dUP6b)oJ!Vg~i zO>tMRldP%eKGv)I?4r9T^xYJWY1MWQsJ*G0$1>B$L;Fp&>sam{RDwqL|pDe0XI)h3Z*W4OXbYfKWXq}Hxxy`G)>1y(pxBr0S|X*Hl)Wu*`{_ zm_MmB6Y&?5qWRu#I@mVV!8UKx;Nh&PtBQgtTK6hkHaUMKkj7>#zzBQ)w5B>axqI4c zr#;GL{73U#AfKb4b$l!Zx$-pEVQal%zmR}RQk26v~#%7k8sKoVhrCdY1gNU|K9S{`m(3h)m zqueU?YW0dIRi9Nx6KJyW(iTSWn7(~lq*uFk#w(#PceShd{&2GfSLDtBf*M}P%?>`8 z-0qZH1OJiF)L_Jai4Xof5kE#g_!Kc5*YQ1r7CsVzZ+5~N78lHM#|pQ$ zy7hhx{yQo%M&q=Fd|sJ?PQTM?HQKo53B?8X@!|d2p$|lK;f&SAH{W#ONxg|Knift@ zPoxHt3{w4Wd~Aw}ktva$>ApG=fuX*JrjyzO{1X>IHMjuq1Dl#f}9Zhh9E;KA$630U-eaRmh|U z{!XbZ`+}lXT-#8LiuKyDtIn6(9c>q12hwKp*&llB! zDl5_l=wmVqKf@h{7Oua*%fH|6bYRo^3)nG=|4x#B*`bGrDXGPw1E z=eD3w;ycw)I&eh+8(w?}32w5my7({m(Xf)MVtZI=rOK1VOTuRsKe>=}IZ2aFWzEPNT?K?u@GISu8n#*U!bh^I&e{LHb@3HJGlLai$?Wo zz1!jApEzU9bX%Cxt1Rts$twX3KWu6=5NTU*fz#GjcKt1{op6)RXHZ_{DJn`{R zWC@nB4e~MZny167RxvVHtMKQ?N0X)QxkkN3!xMH^fsH$ZW(!~bpdY_zz{dw4AAnl~ zY@jvVXl#-OloJO_?)OP@2|`u)u>>4tcguBfoEknfU+>1v8m_kC(@s#m@x>mm&E&OG z)dbT&3?R#VRI`<~9=!&eh@n+9*xk5-CK_xnn(eL7Z!b)-4|C>M2BfDkZl~fq(J{V# z3I~oDXGZw=Y8`x})25$8@tjo2a#SGgL6z3efGmMWC}a1eW(yi!<1^{m>usy&b_Ce$ z<4!hqGPNeYNJn~n4d(j+J{2)&;Fg`}OJil|YT`Jjt8i8?O4aZ~3s0qJt^n&r6)}hM zH+(2>fdZR0c_z}0n@e5`>c-}UGmSF*j9{QvN3#^w=RVanmQ#*YJ2q!g?eLUMajBwR z`&#KmwelUW9K-TjdRd z7Qv=jI0m?%2zdncmOI(6Z=_woo!8VO{>1>*bJKP43RMX}lRsu1W(doRtudKp*{`Yi zrgROzXdkQo%UzqGfuz;nL^n-h)kvEje6pAyAFVdIw(21)P-$^xp;~X^gVc5Sa`q#5 zOW+6<)?#@44e+^J=e5a$992q_p^m1FO!g?#ad*o0#CKRz)0;i!7j~BzV3RJV^9d0> z)?b$%8xB6y}Lh$^-F00z4j| zwwm$|sg>5wV^%xI$%x_`S$UBoDAaK4ph9N`&04=kpAN)UqCV)vFkKJui!Ss{G$Gzc zDjW0PZzw7+U4TFRZhqK*bqz8zq+KF1|Sgvr4J%nRiP~O&L6kmeLx( zv7zYZnLxo9YrEq}Fz0?s8)F|4Qlu^keeL%7^a{ ze!m2spaVF~(g$N|y=oOd<_OydehAThN+emU`h%}YA9bH7)wKqdYPE`sq*1kxtGh78 z;Ab=2oi6UIl;d(|)HlExs_2MvZUH~vI5j`)$4l<#APas4GFk5A+>YM})N)cVK_|WR z=Z3S+oDe14)D$!~s+>YcJ`N8=ORN7H09YyLiKM#;=`FUQ;- z*AFB_kMXw!QUe&vD`|%Iuo}B6Z%&`Id2$%rJDDjgG<=<-+=Ph{A0WZ!LZG>KaPP6) zi{i?locUR@RrvFs)_G~1uDLao-9|fZcPbG)bINd2hX)LPYm|OH3ZE~7S9rNVM)dIm z1VX|&@!@C}8rT3IaK;5L{BARTu>@asD%WfH%?I4u>{e30Z8U0k9r63jXOSk>{P9)c z%^9Uvd(1V89?X?FwR>{XeZ@rzxuM`_1wRQL^{ZuElf;!%d|DRFu#X*Squom1QW7f3 zOQgIOSDZ`QT2py-D@LW%qY#{o%4+4MCu{1kYa2^5-*R`&?v4uE9@HB6m}d*PSK$2- z_3@+MF>a>PXAE(D;xSwVp#?EUh8E}zW%nI`0+~q_skkgCSy7h)?-hs7192H2G5S5I zvb(pG2(^seiHavl1&x;7H)zM&HO}BJj3yV=<-8=v@;w|zfuK zY`N-qUjv_C0*E|Vk3MYT)ZIEGeEo^S?^2R?%!1g%%4e#J-59yewCHX$T?WF(6LzmN$z=pT z@HHA;= znOZ}!?cnNI6Th_3YWCX|TvUgG(#P+hVp8bGJ7FGj`ey25ljKsdJRdJD#s9CotLc&3 zhN1l_3(U0#d+Zr|_LfC+=poIay)W#s9Ry9%A_#)~{631*H)VS^yG?;2m#i$wlExyR zDDpA7iq8$Wx2A2~1#J)AR;mU0inzBIg1{N3=PxkD%JM0EA1?vLnV2u#DpL(5^PAu` zhF=dTa~S%nLy{YqjGGHwZb6Cxnd!n_{|8_fsoZH-JLUX&{`&*6Yx_b{mN{z0d5)_% zrK*N9o334zyc>i|n{GV9l|YbKzbXU3#gA#3<65zR{8o6Z^(CQZMeztg!8DCDtYR&# z=blHoA_nse4Vn>H>szHRp!4}2xNB1_gmBmIRu#+=`fOc}1|9HP%e!5sbfQ722PL9a@8;8eq%o@k@qbg27+{iwy|GFEjFrUvbG=U9Lnr zhA?b1jg@dMxeUF*BX*@TGbHoITqf=RRr9vK-v>JK)j!|8I_^F9J;=FlRc`$V+`1|d zGt2KvZT=9Rgd(4x3x(3jO5Bi|yzjG>SqL{zdo~dkY4LgD+{YOB| zR3L7FQvTL<5d#!dU}Qg8(X5K5uF?y~ck`!*&!GJ?g3+ohr6FZ}r&sywK?0OHL1bJ< zLzH~o=QSQ#v`nxDHTA{H7?4H9j3H5Hd0EodR4Bs2z_p%6P^_19YLL{P+%b;Wka}N{ zlv@8t^N@f=qv!cFoIFw5*Db~Blbi@)q(AnSVI(L__@Ss^*~?7bXXTMpQC?gbdoM3# z3Na%RSaDdl%bwO%y0*F4Y_1L&;LV<=wmqxwz+_Y0bT0u@gZB!+gcOq_o`Y|8Te9T1 z1+6l4ke)rXjyptDFH+02xDf0+-02K-_HGwY=PVa!!)s)m^!qa<_wi47n8>bvGlcz$ zn5{>6CO<|DUdeX<^6|p~mZ%nKw5t~ErOVv)p#3}{*!Kih0Js-|A~9Ik9Gph-)2(t| zk0-JTVoeWsw7XZ(r(gV)O8hPQ{&KMCyUCxWt-;{pCTD?Wur5VG_n*U?8-ml%az(oG zZ;5kVe?-JQawfOn;=wnHz?E_IVr6ln5-F$iM~8 zmf%qYR0$PHpaTEg8WuI|hGww&Qyz15g+&dSSU}hdUfU7d9>!8+vZ}%1dj*+;NOp%m zz2zb7Hn^!jY$p2Rp?E!{DHd6RKjx1xa($Wa68EIE3tj;;qPvm?5$ws|NU73Ou%_)x zL!$B9v>N;~z@Hwee3uLO3vfX+5Afy&(*Rih>SpReXkb6bEl3H4942U&-{|Ep_3>H2 z5018HL1`-byXqJKI(0YhgP-hQ5W`RFnr2+u%sBjW4SKS%&uc1@bhsC!3HU;7%tB8U zX(H1sD$!bs%fX7Ubqp*tjAA{lZ^TJ%h(_bOv{6Uv8A%cnba{Vo4$n!c(zZ6xk%gAe zA?UiZMM+B$IGRu(dvW5z&VnH6!T@rx-r7Y>v1EihZzpiA>(H&#qDQZLYzYe`TJyr5 zVBq8)`W{@7X7D^Al;Su*TwIZE5JWq;Z9Ecd`_zmV7zEjr=Ju33)frJhgNY$u(~M_q z#2y(iVdEHQ+^v8+9bRBycZHvR1o>R2uA3;SmN=BNKzk~b4ELX35Wgq6cVzEuN20^8 zfc6#;VKoMpJAgNd4JE4a`?6hDUntT*{y#)#E78Jt#)3IXHXrh1#Y_Ic?6R`NVt#z6IN#M)qrCj@7j@omVSg41nC!Vr4o+? zfh|uItrl^VlF;+VP4n4kSWg(~;wRc-?OVz%G}Wu$7sR zk%dM1sbl_PbzY()yfeUK(ND-nd&NluiR|FK+=D)JT>5^}^3m>}fPhFL$Kojj@Z7;q zVH$MbRt!FGj>~spu9kjK(84OrJXG)-1y=0GYd0*EaSw+5YG^xLwp=gpz4S;W^$HcT zZFx)jl-GF^j>@_SoMqf;JfR*U4yVi_x`|57u5EDUF$|#t zI7=g=;T4Yb6OuSwMhxgO`8+;a7xbY!3-2ayFAtnobyZ(RhL@F^8X)L7emvlslCY+r zBxz>^i3gHo=Zt`6wA4l^uHK+CaP_(@xKQ?m$q)>d(eq}xRo{m{8=ikr(9zu3kDq2z ztfq}m!ofuz$+z(P@b&$tcaHHd?0lu7);$RGP2wT^UYvj^M)Vn?%nGzlaZ%0NT1T3{ z%2TarN0@m1Ooa-(g4u?T$4)=5HK;Rg4CCKrXiv0ghCT7#3Y1C#V*VSDl#h8vESfzN z;YKhk_J|{|K%(6?KncSzRtsf;?7DUtYPou#CeDq8|L_nb0k}kd2@=O~Mm!L_)~+M6 zk1st8ns5edCf<{rvQD?V&=~nSFCr@nDvbc9e}7b*Eqo3LpBXp?Kk^FlW7FPB1wWsa zN@jM4P5c-PDaVIuJWpPYU$qG%{jU?kLO+?XH2ZCeLN5~Z?#nG!=do^LMn6^&h$1Zg zXyfv1yz=<@V~5@hUp~M8Mnq>!;Acjfp7;|3@d>G2Q&<=d*_$_cz?)qBC57=F zXtJ(h$;P1`UQlq7KXz3GHUl{Nz(>9Z0fUQrv#-{`-Aa_Noi1+!t+D)8TUn%dAFPdH z=c^15+Ns${fETK2I$w_c0ai3G3;xzxAq>H&I0p+!X~hiP@$(!VRJggNI#vY*ePUK - +

    Related webpages

    -
    Generated on Tue Dec 12 11:16:35 2006 for ParadisEO-MOEO by  +
    Generated on Mon Jan 15 14:18:07 2007 for ParadisEO-MOEO by  doxygen 1.5.1
    diff --git a/trunk/paradiseo-moeo/docs/latex/annotated.tex b/trunk/paradiseo-moeo/docs/latex/annotated.tex index cfda7cf81..bffe79872 100644 --- a/trunk/paradiseo-moeo/docs/latex/annotated.tex +++ b/trunk/paradiseo-moeo/docs/latex/annotated.tex @@ -1,33 +1,33 @@ \section{Paradis\-EO-MOEO Class List} Here are the classes, structs, unions and interfaces with brief descriptions:\begin{CompactList} -\item\contentsline{section}{{\bf eo\-Additive\-Binary\-Epsilon\-Indicator$<$ EOFitness $>$} (Functor Additive binary epsilon indicator for {\bf eo\-Pareto\-Fitness} )}{\pageref{classeoAdditiveBinaryEpsilonIndicator}}{} -\item\contentsline{section}{{\bf eo\-Binary\-Hypervolume\-Indicator$<$ EOFitness $>$} (Functor Binary hypervolume indicator for {\bf eo\-Pareto\-Fitness} )}{\pageref{classeoBinaryHypervolumeIndicator}}{} -\item\contentsline{section}{{\bf eo\-Binary\-Quality\-Indicator$<$ EOFitness $>$} (Functor Binary quality indicator Binary performance measure to use in the replacement selection process of IBEA (Indicator-Based Evolutionary Algorithm) Of course, EOFitness needs to be an {\bf eo\-Pareto\-Fitness} object )}{\pageref{classeoBinaryQualityIndicator}}{} -\item\contentsline{section}{{\bf eo\-Binary\-Quality\-Indicator$<$ EOFitness $>$::Range} (Private class to represent the bounds )}{\pageref{classeoBinaryQualityIndicator_1_1Range}}{} -\item\contentsline{section}{{\bf eo\-IBEA$<$ EOT, Fitness $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) )}{\pageref{classeoIBEA}}{} -\item\contentsline{section}{{\bf eo\-IBEAAvg\-Sorting$<$ EOT, Fitness\-Eval $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty using averaged values for each objective Follow the idea presented in the Deb \& Gupta paper \char`\"{}Searching for Robust Pareto-Optimal Solutions in Multi-Objective Optimization\char`\"{}, 2005 Of course, the fitness of an individual needs to be an eo\-Stochastic\-Pareto\-Fitness object )}{\pageref{classeoIBEAAvgSorting}}{} -\item\contentsline{section}{{\bf eo\-IBEASorting$<$ EOT, Fitness $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) without uncertainty Adapted from the Zitzler and K\~{A}¼nzli paper \char`\"{}Indicator-Based Selection in Multiobjective Search\char`\"{} (2004) Of course, Fitness needs to be an {\bf eo\-Pareto\-Fitness} object )}{\pageref{classeoIBEASorting}}{} -\item\contentsline{section}{{\bf eo\-IBEAStoch\-Sorting$<$ EOT, Fitness\-Eval $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty Adapted from the Basseur and Zitzler paper \char`\"{}Handling Uncertainty in Indicator-Based Multiobjective Optimization\char`\"{} (2006) Of course, the fitness of an individual needs to be an eo\-Stochastic\-Pareto\-Fitness object )}{\pageref{classeoIBEAStochSorting}}{} -\item\contentsline{section}{{\bf eo\-Pareto\-Euclid\-Dist$<$ EOT, Dist\-Type $>$} }{\pageref{classeoParetoEuclidDist}}{} -\item\contentsline{section}{{\bf eo\-Pareto\-Phen\-Dist$<$ EOT, Dist\-Type $>$} }{\pageref{classeoParetoPhenDist}}{} -\item\contentsline{section}{{\bf eo\-Pareto\-Sharing$<$ EOT, worth\-T $>$} }{\pageref{classeoParetoSharing}}{} -\item\contentsline{section}{{\bf eo\-Pareto\-Sharing$<$ EOT, worth\-T $>$::d\-Matrix} }{\pageref{classeoParetoSharing_1_1dMatrix}}{} +\item\contentsline{section}{{\bf moeo\-Additive\-Binary\-Epsilon\-Indicator$<$ EOFitness $>$} (Functor Additive binary epsilon indicator for {\bf eo\-Pareto\-Fitness} )}{\pageref{classmoeoAdditiveBinaryEpsilonIndicator}}{} \item\contentsline{section}{{\bf moeo\-Archive$<$ EOT $>$} (An archive is a secondary population that stores non-dominated solutions )}{\pageref{classmoeoArchive}}{} \item\contentsline{section}{{\bf moeo\-Archive\-Fitness\-Saving\-Updater$<$ EOT $>$} (This class allows to save the fitnesses of solutions contained in an archive into a file at each generation )}{\pageref{classmoeoArchiveFitnessSavingUpdater}}{} \item\contentsline{section}{{\bf moeo\-Archive\-Updater$<$ EOT $>$} (This class allows to update the archive at each generation with newly found non-dominated solutions )}{\pageref{classmoeoArchiveUpdater}}{} +\item\contentsline{section}{{\bf moeo\-Binary\-Hypervolume\-Indicator$<$ EOFitness $>$} (Functor Binary hypervolume indicator for {\bf eo\-Pareto\-Fitness} )}{\pageref{classmoeoBinaryHypervolumeIndicator}}{} \item\contentsline{section}{{\bf moeo\-Binary\-Metric\-Saving\-Updater$<$ EOT $>$} (This class allows to save the progression of a binary metric comparing the fitness values of the current population (or archive) with the fitness values of the population (or archive) of the generation (n-1) into a file )}{\pageref{classmoeoBinaryMetricSavingUpdater}}{} +\item\contentsline{section}{{\bf moeo\-Binary\-Quality\-Indicator$<$ EOFitness $>$} (Functor Binary quality indicator Binary performance measure to use in the replacement selection process of IBEA (Indicator-Based Evolutionary Algorithm) Of course, EOFitness needs to be an {\bf eo\-Pareto\-Fitness} object )}{\pageref{classmoeoBinaryQualityIndicator}}{} +\item\contentsline{section}{{\bf moeo\-Binary\-Quality\-Indicator$<$ EOFitness $>$::Range} (Private class to represent the bounds )}{\pageref{classmoeoBinaryQualityIndicator_1_1Range}}{} \item\contentsline{section}{{\bf moeo\-BM$<$ A1, A2, R $>$} (Base class for binary metrics )}{\pageref{classmoeoBM}}{} \item\contentsline{section}{{\bf moeo\-Combined\-MOLS$<$ EOT $>$} (This class allows to embed a set of local searches that are sequentially applied, and so working and updating the same archive of non-dominated solutions )}{\pageref{classmoeoCombinedMOLS}}{} \item\contentsline{section}{{\bf moeo\-Contribution\-Metric$<$ EOT $>$} (The contribution metric evaluates the proportion of non-dominated solutions given by a Pareto set relatively to another Pareto set )}{\pageref{classmoeoContributionMetric}}{} -\item\contentsline{section}{{\bf moeo\-Disctinct\-Elitist\-Replacement$<$ EOT, Worth\-T $>$} (Same than {\bf moeo\-Elitist\-Replacement}{\rm (p.\,\pageref{classmoeoElitistReplacement})} except that distinct individuals are privilegied )}{\pageref{classmoeoDisctinctElitistReplacement}}{} +\item\contentsline{section}{{\bf moeo\-Disctinct\-Elitist\-Replacement$<$ EOT, Worth\-T $>$} (Same than \doxyref{moeo\-Elitist\-Replacement}{p.}{classmoeoElitistReplacement} except that distinct individuals are privilegied )}{\pageref{classmoeoDisctinctElitistReplacement}}{} \item\contentsline{section}{{\bf moeo\-Elitist\-Replacement$<$ EOT, Worth\-T $>$} (Keep all the best individuals (almost cut-and-pasted from {\bf eo\-NDPlus\-Replacement}, (c) Maarten Keijzer, Marc Schoenauer and Ge\-Neura Team, 2002) )}{\pageref{classmoeoElitistReplacement}}{} \item\contentsline{section}{{\bf moeo\-Entropy\-Metric$<$ EOT $>$} (The entropy gives an idea of the diversity of a Pareto set relatively to another Pareto set )}{\pageref{classmoeoEntropyMetric}}{} \item\contentsline{section}{{\bf moeo\-Hybrid\-MOLS$<$ EOT $>$} (This class allows to apply a multi-objective local search to a number of selected individuals contained in the archive at every generation until a stopping criteria is verified )}{\pageref{classmoeoHybridMOLS}}{} +\item\contentsline{section}{{\bf moeo\-IBEA$<$ EOT, Fitness $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) )}{\pageref{classmoeoIBEA}}{} +\item\contentsline{section}{{\bf moeo\-IBEAAvg\-Sorting$<$ EOT, Fitness\-Eval $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty using averaged values for each objective Follow the idea presented in the Deb \& Gupta paper \char`\"{}Searching for Robust Pareto-Optimal Solutions in Multi-Objective Optimization\char`\"{}, 2005 Of course, the fitness of an individual needs to be an eo\-Stochastic\-Pareto\-Fitness object )}{\pageref{classmoeoIBEAAvgSorting}}{} +\item\contentsline{section}{{\bf moeo\-IBEASorting$<$ EOT, Fitness $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) without uncertainty Adapted from the Zitzler and K\~{A}¼nzli paper \char`\"{}Indicator-Based Selection in Multiobjective Search\char`\"{} (2004) Of course, Fitness needs to be an {\bf eo\-Pareto\-Fitness} object )}{\pageref{classmoeoIBEASorting}}{} +\item\contentsline{section}{{\bf moeo\-IBEAStoch\-Sorting$<$ EOT, Fitness\-Eval $>$} (Functor The sorting phase of IBEA (Indicator-Based Evolutionary Algorithm) under uncertainty Adapted from the Basseur and Zitzler paper \char`\"{}Handling Uncertainty in Indicator-Based Multiobjective Optimization\char`\"{} (2006) Of course, the fitness of an individual needs to be an eo\-Stochastic\-Pareto\-Fitness object )}{\pageref{classmoeoIBEAStochSorting}}{} \item\contentsline{section}{{\bf moeo\-Metric} (Base class for performance metrics (also called quality indicators) )}{\pageref{classmoeoMetric}}{} \item\contentsline{section}{{\bf moeo\-MOLS$<$ EOT $>$} (Abstract class for local searches applied to multi-objective optimization )}{\pageref{classmoeoMOLS}}{} -\item\contentsline{section}{{\bf moeo\-NDSorting\_\-II$<$ EOT $>$} (Fast Elitist Non-Dominant Sorting Genetic Algorithm )}{\pageref{classmoeoNDSorting__II}}{} -\item\contentsline{section}{{\bf moeo\-NDSorting\_\-II$<$ EOT $>$::compare\_\-nodes} }{\pageref{classmoeoNDSorting__II_1_1compare__nodes}}{} +\item\contentsline{section}{{\bf moeo\-NDSorting\_\-II$<$ EOT $>$} (Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie Note : This is a corrected version of the original {\bf eo\-NDSorting\_\-II} class )}{\pageref{classmoeoNDSorting__II}}{} +\item\contentsline{section}{{\bf moeo\-NDSorting\_\-II$<$ EOT $>$::compare\_\-nodes} (A class to compare the nodes )}{\pageref{classmoeoNDSorting__II_1_1compare__nodes}}{} \item\contentsline{section}{{\bf moeo\-NSGA\_\-II$<$ EOT $>$} }{\pageref{classmoeoNSGA__II}}{} +\item\contentsline{section}{{\bf moeo\-Pareto\-Euclid\-Dist$<$ EOT, Dist\-Type $>$} }{\pageref{classmoeoParetoEuclidDist}}{} +\item\contentsline{section}{{\bf moeo\-Pareto\-Phen\-Dist$<$ EOT, Dist\-Type $>$} }{\pageref{classmoeoParetoPhenDist}}{} +\item\contentsline{section}{{\bf moeo\-Pareto\-Sharing$<$ EOT, worth\-T $>$} }{\pageref{classmoeoParetoSharing}}{} +\item\contentsline{section}{{\bf moeo\-Pareto\-Sharing$<$ EOT, worth\-T $>$::d\-Matrix} }{\pageref{classmoeoParetoSharing_1_1dMatrix}}{} \item\contentsline{section}{{\bf moeo\-Replacement$<$ EOT, Worth\-T $>$} (Replacement strategy for multi-objective optimization )}{\pageref{classmoeoReplacement}}{} \item\contentsline{section}{{\bf moeo\-Select\-One\-From\-Pop\-And\-Arch$<$ EOT $>$} (Elitist selection process that consists in choosing individuals in the archive as well as in the current population )}{\pageref{classmoeoSelectOneFromPopAndArch}}{} \item\contentsline{section}{{\bf moeo\-Solution\-UM$<$ EOT, R, EOFitness $>$} (Base class for unary metrics dedicated to the performance evaluation of a single solution's Pareto fitness )}{\pageref{classmoeoSolutionUM}}{} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoArchive.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoArchive.tex index 59e752ada..852b31278 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoArchive.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoArchive.tex @@ -20,9 +20,9 @@ typedef EOT::Fitness {\bf EOFitness}\label{classmoeoArchive_798bc97d8321b1e2c469 \subsection*{Public Member Functions} \begin{CompactItemize} \item -bool {\bf dominates} (const {\bf EOFitness} \&\_\-fit) const +bool {\bf dominates} (const {\bf EOFitness} \&\_\-fit) const \begin{CompactList}\small\item\em Returns true if the current archive dominates \_\-fit. \item\end{CompactList}\item -bool {\bf contains} (const {\bf EOFitness} \&\_\-fit) const +bool {\bf contains} (const {\bf EOFitness} \&\_\-fit) const \begin{CompactList}\small\item\em Returns true if the current archive contains \_\-fit. \item\end{CompactList}\item void {\bf update} (const EOT \&\_\-eo) \begin{CompactList}\small\item\em Updates the archive with a given individual \_\-eo. \item\end{CompactList}\item @@ -42,7 +42,7 @@ Definition at line 21 of file moeo\-Archive.h. \subsection{Member Function Documentation} \index{moeoArchive@{moeo\-Archive}!dominates@{dominates}} \index{dominates@{dominates}!moeoArchive@{moeo\-Archive}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class EOT$>$ bool {\bf moeo\-Archive}$<$ EOT $>$::dominates (const {\bf EOFitness} \& {\em \_\-fit}) const\hspace{0.3cm}{\tt [inline]}}\label{classmoeoArchive_22b298bb0e4f4b02f9d8c5d3385134a2} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class EOT$>$ bool {\bf moeo\-Archive}$<$ EOT $>$::dominates (const {\bf EOFitness} \& {\em \_\-fit}) const\hspace{0.3cm}{\tt [inline]}}\label{classmoeoArchive_7786c8bfe67fefa19ac31a4ac700df06} Returns true if the current archive dominates \_\-fit. @@ -54,9 +54,11 @@ Returns true if the current archive dominates \_\-fit. \end{Desc} -Definition at line 39 of file moeo\-Archive.h.\index{moeoArchive@{moeo\-Archive}!contains@{contains}} +Definition at line 39 of file moeo\-Archive.h. + +Referenced by moeo\-Archive$<$ EOT $>$::update().\index{moeoArchive@{moeo\-Archive}!contains@{contains}} \index{contains@{contains}!moeoArchive@{moeo\-Archive}} -\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class EOT$>$ bool {\bf moeo\-Archive}$<$ EOT $>$::contains (const {\bf EOFitness} \& {\em \_\-fit}) const\hspace{0.3cm}{\tt [inline]}}\label{classmoeoArchive_b62d5274da2b12802113858be49a21a4} +\subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class EOT$>$ bool {\bf moeo\-Archive}$<$ EOT $>$::contains (const {\bf EOFitness} \& {\em \_\-fit}) const\hspace{0.3cm}{\tt [inline]}}\label{classmoeoArchive_71feaf270daa7185e829caef40bbf956} Returns true if the current archive contains \_\-fit. @@ -82,7 +84,11 @@ Updates the archive with a given individual \_\-eo. \end{Desc} -Definition at line 63 of file moeo\-Archive.h.\index{moeoArchive@{moeo\-Archive}!update@{update}} +Definition at line 63 of file moeo\-Archive.h. + +References moeo\-Archive$<$ EOT $>$::dominates(). + +Referenced by moeo\-Archive$<$ EOT $>$::update().\index{moeoArchive@{moeo\-Archive}!update@{update}} \index{update@{update}!moeoArchive@{moeo\-Archive}} \subsubsection{\setlength{\rightskip}{0pt plus 5cm}template$<$class EOT$>$ void {\bf moeo\-Archive}$<$ EOT $>$::update (const {\bf eo\-Pop}$<$ EOT $>$ \& {\em \_\-pop})\hspace{0.3cm}{\tt [inline]}}\label{classmoeoArchive_58e891ab400ba352e8b0a341d0bdc107} @@ -98,6 +104,8 @@ Updates the archive with a given population \_\-pop. Definition at line 98 of file moeo\-Archive.h. +References moeo\-Archive$<$ EOT $>$::update(). + The documentation for this class was generated from the following file:\begin{CompactItemize} \item moeo\-Archive.h\end{CompactItemize} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoBM.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoBM.eps index 956ec10a7..d20d0f74a 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoBM.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoBM.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 198.675 +%%BoundingBox: 0 0 500 65.1466 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,13 +19,13 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 2.51667 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 7.675 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def /yspacing 0 def -/rows 3 def -/cols 2 def +/rows 5 def +/cols 5 def /scalefactor 0 def /boxfont /Times-Roman findfont fontheight scalefont def @@ -178,6 +178,12 @@ boxfont setfont (moeoMetric) cw (eoFunctorBase) cw (eoFunctorBase) cw +(moeoSolutionVsSolutionBM< EOT, R, EOFitness >) cw +(moeoVectorVsSolutionBM< EOT, R, EOFitness >) cw +(moeoVectorVsVectorBM< EOT, R, EOFitness >) cw +(moeoVectorVsVectorBM< EOT, double >) cw +(moeoContributionMetric< EOT >) cw +(moeoEntropyMetric< EOT >) cw /boxwidth boxwidth marginwidth 2 mul add def /xspacing boxwidth distx add def /yspacing boxheight disty add def @@ -189,27 +195,53 @@ boundx scalefactor div boundy scalefactor div scale % ----- classes ----- - (moeoBM< A1, A2, R >) 0.5 0 box - (eoBF< A1, A2, R >) 0 1 box - (moeoMetric) 1 1 box - (eoFunctorBase) 0 2 box - (eoFunctorBase) 1 2 box + (moeoBM< A1, A2, R >) 1.5 2 box + (eoBF< A1, A2, R >) 1 3 box + (moeoMetric) 2 3 box + (eoFunctorBase) 1 4 box + (eoFunctorBase) 2 4 box + (moeoSolutionVsSolutionBM< EOT, R, EOFitness >) 0 1 box + (moeoVectorVsSolutionBM< EOT, R, EOFitness >) 1 1 box + (moeoVectorVsVectorBM< EOT, R, EOFitness >) 2 1 box + (moeoVectorVsVectorBM< EOT, double >) 3 1 box + (moeoContributionMetric< EOT >) 2.5 0 box + (moeoEntropyMetric< EOT >) 3.5 0 box % ----- relations ----- solid -0 0.5 0 out +0 1.5 2 out solid -0 1 1 conn +1 2 3 conn solid -1 0 1 in +1 1 3 in solid -0 0 1 out +0 1 3 out solid -1 1 1 in +1 2 3 in solid -0 1 1 out +0 2 3 out solid -1 0 2 in +1 1 4 in solid -1 1 2 in +1 2 4 in +solid +1 1.5 1.25 out +solid +0 3 2 conn +solid +0 0 1.75 in +solid +0 1 1.75 in +solid +0 2 1.75 in +solid +0 3 1.75 in +solid +1 3 0.25 out +solid +2.5 3.5 1 conn +solid +0 2.5 0.75 in +solid +0 3.5 0.75 in diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoBM.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoBM.tex index 78b27745d..ab5408f52 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoBM.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoBM.tex @@ -8,7 +8,7 @@ Base class for binary metrics. Inheritance diagram for moeo\-BM$<$ A1, A2, R $>$::\begin{figure}[H] \begin{center} \leavevmode -\includegraphics[height=3cm]{classmoeoBM} +\includegraphics[height=1.8241cm]{classmoeoBM} \end{center} \end{figure} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.eps index 1e393b585..3335421e4 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 74.5156 +%%BoundingBox: 0 0 500 195.312 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,7 +19,7 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 6.71 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 2.56 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def @@ -175,8 +175,8 @@ boxfont setfont 1 boundaspect scale (moeoContributionMetric< EOT >) cw (moeoVectorVsVectorBM< EOT, double >) cw -(moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) cw -(eoBF< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) cw +(moeoBM< A1, A2, R >) cw +(eoBF< A1, A2, R >) cw (moeoMetric) cw (eoFunctorBase) cw (eoFunctorBase) cw @@ -193,8 +193,8 @@ boundx scalefactor div boundy scalefactor div scale (moeoContributionMetric< EOT >) 0.5 0 box (moeoVectorVsVectorBM< EOT, double >) 0.5 1 box - (moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) 0.5 2 box - (eoBF< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) 0 3 box + (moeoBM< A1, A2, R >) 0.5 2 box + (eoBF< A1, A2, R >) 0 3 box (moeoMetric) 1 3 box (eoFunctorBase) 0 4 box (eoFunctorBase) 1 4 box diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.tex index b4dc475fd..06b7da3d8 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoContributionMetric.tex @@ -8,7 +8,7 @@ The contribution metric evaluates the proportion of non-dominated solutions give Inheritance diagram for moeo\-Contribution\-Metric$<$ EOT $>$::\begin{figure}[H] \begin{center} \leavevmode -\includegraphics[height=2.08644cm]{classmoeoContributionMetric} +\includegraphics[height=5cm]{classmoeoContributionMetric} \end{center} \end{figure} \subsection*{Public Types} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoDisctinctElitistReplacement.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoDisctinctElitistReplacement.tex index 228d6461c..68117695d 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoDisctinctElitistReplacement.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoDisctinctElitistReplacement.tex @@ -1,6 +1,6 @@ \section{moeo\-Disctinct\-Elitist\-Replacement$<$ EOT, Worth\-T $>$ Class Template Reference} \label{classmoeoDisctinctElitistReplacement}\index{moeoDisctinctElitistReplacement@{moeoDisctinctElitistReplacement}} -Same than {\bf moeo\-Elitist\-Replacement}{\rm (p.\,\pageref{classmoeoElitistReplacement})} except that distinct individuals are privilegied. +Same than \doxyref{moeo\-Elitist\-Replacement}{p.}{classmoeoElitistReplacement} except that distinct individuals are privilegied. {\tt \#include $<$moeo\-Replacement.h$>$} @@ -34,7 +34,7 @@ void {\bf create\-New\-Pop} ({\bf eo\-Pop}$<$ EOT $>$ \&\_\-pop, unsigned \_\-si \subsection{Detailed Description} \subsubsection*{template$<$class EOT, class Worth\-T = double$>$ class moeo\-Disctinct\-Elitist\-Replacement$<$ EOT, Worth\-T $>$} -Same than {\bf moeo\-Elitist\-Replacement}{\rm (p.\,\pageref{classmoeoElitistReplacement})} except that distinct individuals are privilegied. +Same than \doxyref{moeo\-Elitist\-Replacement}{p.}{classmoeoElitistReplacement} except that distinct individuals are privilegied. @@ -92,6 +92,8 @@ creation of the new population of size \_\-size Definition at line 123 of file moeo\-Replacement.h. +References moeo\-Disctinct\-Elitist\-Replacement$<$ EOT, Worth\-T $>$::perf2worth, and eo\-Pop$<$ EOT $>$::swap(). + Referenced by moeo\-Disctinct\-Elitist\-Replacement$<$ EOT, Worth\-T $>$::operator()(). The documentation for this class was generated from the following file:\begin{CompactItemize} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.eps index 04e578986..62b905032 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 74.5156 +%%BoundingBox: 0 0 500 195.312 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,7 +19,7 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 6.71 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 2.56 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def @@ -175,8 +175,8 @@ boxfont setfont 1 boundaspect scale (moeoEntropyMetric< EOT >) cw (moeoVectorVsVectorBM< EOT, double >) cw -(moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) cw -(eoBF< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) cw +(moeoBM< A1, A2, R >) cw +(eoBF< A1, A2, R >) cw (moeoMetric) cw (eoFunctorBase) cw (eoFunctorBase) cw @@ -193,8 +193,8 @@ boundx scalefactor div boundy scalefactor div scale (moeoEntropyMetric< EOT >) 0.5 0 box (moeoVectorVsVectorBM< EOT, double >) 0.5 1 box - (moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) 0.5 2 box - (eoBF< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) 0 3 box + (moeoBM< A1, A2, R >) 0.5 2 box + (eoBF< A1, A2, R >) 0 3 box (moeoMetric) 1 3 box (eoFunctorBase) 0 4 box (eoFunctorBase) 1 4 box diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.tex index 57f3435ff..33d9fc7b7 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoEntropyMetric.tex @@ -8,7 +8,7 @@ The entropy gives an idea of the diversity of a Pareto set relatively to another Inheritance diagram for moeo\-Entropy\-Metric$<$ EOT $>$::\begin{figure}[H] \begin{center} \leavevmode -\includegraphics[height=2.08644cm]{classmoeoEntropyMetric} +\includegraphics[height=5cm]{classmoeoEntropyMetric} \end{center} \end{figure} \subsection*{Public Types} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoMetric.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoMetric.eps index 17339b3c4..23737595a 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoMetric.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoMetric.eps @@ -176,10 +176,10 @@ boxfont setfont (moeoMetric) cw (eoFunctorBase) cw (moeoBM< A1, A2, R >) cw -(moeoBM< const EOFitness &, const EOFitness &, R >) cw -(moeoBM< const std::vector< EOFitness > &, const EOFitness &, R >) cw -(moeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >) cw -(moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) cw +(moeoBM< const const EOFitness &, EOFitness &, R >) cw +(moeoBM< const const std::vector< EOFitness > &, EOFitness &, R >) cw +(moeoBM< const const std::vector< EOFitness > &, std::vector< EOFitness > &, R >) cw +(moeoBM< const const std::vector< typename EOT::Fitness > &, std::vector< typename EOT::Fitness > &, double >) cw (moeoUM< A, R >) cw (moeoUM< const EOFitness &, R >) cw (moeoUM< const std::vector< EOFitness > &, R >) cw @@ -197,14 +197,11 @@ boundx scalefactor div boundy scalefactor div scale (moeoMetric) 0 8 box (eoFunctorBase) 0 9 box (moeoBM< A1, A2, R >) 1 7 box - (moeoBM< const EOFitness &, const EOFitness &, R >) 1 6 box -1 6 mark - (moeoBM< const std::vector< EOFitness > &, const EOFitness &, R >) 1 5 box -1 5 mark - (moeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >) 1 4 box -1 4 mark - (moeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >) 1 3 box -1 3 mark +1 7 mark + (moeoBM< const const EOFitness &, EOFitness &, R >) 1 6 box + (moeoBM< const const std::vector< EOFitness > &, EOFitness &, R >) 1 5 box + (moeoBM< const const std::vector< EOFitness > &, std::vector< EOFitness > &, R >) 1 4 box + (moeoBM< const const std::vector< typename EOT::Fitness > &, std::vector< typename EOT::Fitness > &, double >) 1 3 box (moeoUM< A, R >) 1 2 box (moeoUM< const EOFitness &, R >) 1 1 box 1 1 mark diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II.tex index adb9857dd..f74f31db1 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II.tex @@ -1,6 +1,6 @@ \section{moeo\-NDSorting\_\-II$<$ EOT $>$ Class Template Reference} \label{classmoeoNDSorting__II}\index{moeoNDSorting_II@{moeoNDSorting\_\-II}} -Fast Elitist Non-Dominant Sorting Genetic Algorithm. +Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie Note : This is a corrected version of the original {\bf eo\-NDSorting\_\-II} class. {\tt \#include $<$moeo\-NDSorting.h$>$} @@ -14,31 +14,31 @@ Inheritance diagram for moeo\-NDSorting\_\-II$<$ EOT $>$::\begin{figure}[H] \subsection*{Public Types} \begin{CompactItemize} \item -typedef std::pair$<$ double, unsigned $>$ {\bf double\_\-index\_\-pair}\label{classmoeoNDSorting__II_6703325377eec015f475e944dc75097d} +typedef std::pair$<$ double, unsigned $>$ {\bf double\_\-index\_\-pair}\label{classmoeoNDSorting__II_0987beaa2f600f5bce61c77215679e43} -\end{CompactItemize} +\begin{CompactList}\small\item\em index pair \item\end{CompactList}\end{CompactItemize} \subsection*{Public Member Functions} \begin{CompactItemize} \item {\bf moeo\-NDSorting\_\-II} (bool nasty\_\-flag\_\-=false)\label{classmoeoNDSorting__II_820e9987853858ddc59e36c7f267955e} -\item -std::vector$<$ double $>$ {\bf niche\_\-penalty} (const std::vector$<$ unsigned $>$ \&\_\-cf, const {\bf eo\-Pop}$<$ EOT $>$ \&\_\-pop)\label{classmoeoNDSorting__II_d24d8008d6928aeaeeb59791cb4059fc} +\begin{CompactList}\small\item\em constructor \item\end{CompactList}\item +std::vector$<$ double $>$ {\bf niche\_\-penalty} (const std::vector$<$ unsigned $>$ \&\_\-cf, const {\bf eo\-Pop}$<$ EOT $>$ \&\_\-pop)\label{classmoeoNDSorting__II_265c74b9f64731db86e2c363593f67f9} \begin{CompactList}\small\item\em \_\-cf points into the elements that consist of the current front \item\end{CompactList}\end{CompactItemize} \subsection*{Classes} \begin{CompactItemize} \item class {\bf compare\_\-nodes} -\end{CompactItemize} +\begin{CompactList}\small\item\em A class to compare the nodes. \item\end{CompactList}\end{CompactItemize} \subsection{Detailed Description} \subsubsection*{template$<$class EOT$>$ class moeo\-NDSorting\_\-II$<$ EOT $>$} -Fast Elitist Non-Dominant Sorting Genetic Algorithm. +Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie Note : This is a corrected version of the original {\bf eo\-NDSorting\_\-II} class. -Note : This is a corrected version of the original {\bf eo\-NDSorting\_\-II} class\begin{Desc} +\begin{Desc} \item[See also:]{\bf eo\-NDSorting\_\-II} \end{Desc} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II_1_1compare__nodes.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II_1_1compare__nodes.tex index 3361c1944..cec86004e 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II_1_1compare__nodes.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoNDSorting__II_1_1compare__nodes.tex @@ -1,9 +1,14 @@ \section{moeo\-NDSorting\_\-II$<$ EOT $>$::compare\_\-nodes Class Reference} \label{classmoeoNDSorting__II_1_1compare__nodes}\index{moeoNDSorting_II::compare_nodes@{moeoNDSorting\_\-II::compare\_\-nodes}} +A class to compare the nodes. + + +{\tt \#include $<$moeo\-NDSorting.h$>$} + \subsection*{Public Member Functions} \begin{CompactItemize} \item -bool {\bf operator()} (const {\bf double\_\-index\_\-pair} \&a, const {\bf double\_\-index\_\-pair} \&b) const \label{classmoeoNDSorting__II_1_1compare__nodes_e1052afbabd0e4f14b7913cd1afcd824} +bool {\bf operator()} (const {\bf double\_\-index\_\-pair} \&a, const {\bf double\_\-index\_\-pair} \&b) const\label{classmoeoNDSorting__II_1_1compare__nodes_471ebe9e88bfc778c4c281399eb0c196} \end{CompactItemize} @@ -11,11 +16,11 @@ bool {\bf operator()} (const {\bf double\_\-index\_\-pair} \&a, const {\bf doubl \subsection{Detailed Description} \subsubsection*{template$<$class EOT$>$ class moeo\-NDSorting\_\-II$<$ EOT $>$::compare\_\-nodes} +A class to compare the nodes. - -Definition at line 34 of file moeo\-NDSorting.h. +Definition at line 46 of file moeo\-NDSorting.h. The documentation for this class was generated from the following file:\begin{CompactItemize} \item diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoNSGA__II.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoNSGA__II.tex index d67dfe60c..70fcda63a 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoNSGA__II.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoNSGA__II.tex @@ -23,31 +23,31 @@ virtual void {\bf operator()} ({\bf eo\-Pop}$<$ EOT $>$ \&\_\-pop)\label{classmo \subsection*{Protected Attributes} \begin{CompactItemize} \item -{\bf eo\-Continue}$<$ EOT $>$ \& {\bf continuator}\label{classmoeoNSGA__II_5723ef1daf0c523d4bf66a691fd6e909} +{\bf eo\-Continue}$<$ EOT $>$ \& {\bf continuator}\label{classmoeoNSGA__II_22ba11ba501fb7cf3423d9b777294998} \item -{\bf eo\-Eval\-Func}$<$ EOT $>$ \& {\bf eval}\label{classmoeoNSGA__II_31560a9c8d9499ce8dd361a004083ce9} +{\bf eo\-Eval\-Func}$<$ EOT $>$ \& {\bf eval}\label{classmoeoNSGA__II_6b90df8b9890035788a4d4a3f0c26742} \item -{\bf eo\-Pop\-Loop\-Eval}$<$ EOT $>$ {\bf loop\-Eval}\label{classmoeoNSGA__II_0308927592ac71d747ba345c74eb6595} +{\bf eo\-Pop\-Loop\-Eval}$<$ EOT $>$ {\bf loop\-Eval}\label{classmoeoNSGA__II_72fd9c6e70e9ee19db82a6894cafc60b} \item -{\bf eo\-Pop\-Eval\-Func}$<$ EOT $>$ \& {\bf pop\-Eval}\label{classmoeoNSGA__II_abca45cb9b0099f294ff5172a287ce33} +{\bf eo\-Pop\-Eval\-Func}$<$ EOT $>$ \& {\bf pop\-Eval}\label{classmoeoNSGA__II_c1975957e19a164fde96ed7b5ce90ba4} \item -{\bf moeo\-NDSorting\_\-II}$<$ EOT $>$ {\bf sorting}\label{classmoeoNSGA__II_0c64d278d6675671fb45a241d2b4802f} +{\bf moeo\-NDSorting\_\-II}$<$ EOT $>$ {\bf sorting}\label{classmoeoNSGA__II_1aa7de4992f6c0f1c3a093aca735874c} \begin{CompactList}\small\item\em NSGAII sorting. \item\end{CompactList}\item -{\bf eo\-Det\-Tournament\-Worth\-Select}$<$ EOT $>$ {\bf select\-One}\label{classmoeoNSGA__II_7f122201fa2d60855384389bf080e093} +{\bf eo\-Det\-Tournament\-Worth\-Select}$<$ EOT $>$ {\bf select\-One}\label{classmoeoNSGA__II_add129e06168846b7e405ddd25d70c4d} \begin{CompactList}\small\item\em Binary tournament selection. \item\end{CompactList}\item -{\bf moeo\-Elitist\-Replacement}$<$ EOT $>$ {\bf replace}\label{classmoeoNSGA__II_225df0fde7341dc20db61e822cee7aeb} +{\bf moeo\-Elitist\-Replacement}$<$ EOT $>$ {\bf replace}\label{classmoeoNSGA__II_c75535b7a47c26d8a66c1f227d33a3af} \begin{CompactList}\small\item\em Elitist replacement. \item\end{CompactList}\item -{\bf eo\-General\-Breeder}$<$ EOT $>$ {\bf gen\-Breed}\label{classmoeoNSGA__II_33b60728fb89a6be957f3a312171941f} +{\bf eo\-General\-Breeder}$<$ EOT $>$ {\bf gen\-Breed}\label{classmoeoNSGA__II_febee845341b96dba1cdfc18640d4960} \item -{\bf eo\-Breed}$<$ EOT $>$ \& {\bf breed}\label{classmoeoNSGA__II_8908faf0b9a4334eaab0f34a2774fa16} +{\bf eo\-Breed}$<$ EOT $>$ \& {\bf breed}\label{classmoeoNSGA__II_f0dc0665ea743729e6284d812192acfc} \end{CompactItemize} @@ -76,7 +76,7 @@ Deb, K., S. Agrawal, A. Pratap, and T. Meyarivan, A fast elitist non-dominated s \end{Desc} -Definition at line 45 of file moeo\-NSGA\_\-II.h. +Definition at line 46 of file moeo\-NSGA\_\-II.h. The documentation for this class was generated from the following file:\begin{CompactItemize} \item diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoSelectOneFromPopAndArch.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoSelectOneFromPopAndArch.eps index eac75bdbf..f9c38857e 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoSelectOneFromPopAndArch.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoSelectOneFromPopAndArch.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 274.914 +%%BoundingBox: 0 0 500 307.692 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,7 +19,7 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 1.81875 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 1.625 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def @@ -175,7 +175,7 @@ boxfont setfont 1 boundaspect scale (moeoSelectOneFromPopAndArch< EOT >) cw (eoSelectOne< EOT >) cw -(eoUF< const eoPop< EOT > &, const EOT & >) cw +(eoUF< A1, R >) cw (eoFunctorBase) cw /boxwidth boxwidth marginwidth 2 mul add def /xspacing boxwidth distx add def @@ -190,7 +190,7 @@ boundx scalefactor div boundy scalefactor div scale (moeoSelectOneFromPopAndArch< EOT >) 0 0 box (eoSelectOne< EOT >) 0 1 box - (eoUF< const eoPop< EOT > &, const EOT & >) 0 2 box + (eoUF< A1, R >) 0 2 box (eoFunctorBase) 0 3 box % ----- relations ----- diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.eps index 9a9dbb2c2..f3491d31f 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 120.12 +%%BoundingBox: 0 0 500 130.293 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,7 +19,7 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 4.1625 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 3.8375 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def @@ -174,8 +174,8 @@ boxfont setfont 1 boundaspect scale (moeoSolutionVsSolutionBM< EOT, R, EOFitness >) cw -(moeoBM< const EOFitness &, const EOFitness &, R >) cw -(eoBF< const EOFitness &, const EOFitness &, R >) cw +(moeoBM< A1, A2, R >) cw +(eoBF< A1, A2, R >) cw (moeoMetric) cw (eoFunctorBase) cw (eoFunctorBase) cw @@ -191,8 +191,8 @@ boundx scalefactor div boundy scalefactor div scale % ----- classes ----- (moeoSolutionVsSolutionBM< EOT, R, EOFitness >) 0.5 0 box - (moeoBM< const EOFitness &, const EOFitness &, R >) 0.5 1 box - (eoBF< const EOFitness &, const EOFitness &, R >) 0 2 box + (moeoBM< A1, A2, R >) 0.5 1 box + (eoBF< A1, A2, R >) 0 2 box (moeoMetric) 1 2 box (eoFunctorBase) 0 3 box (eoFunctorBase) 1 3 box diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.tex index f6d1d635c..2c3797c15 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoSolutionVsSolutionBM.tex @@ -8,7 +8,7 @@ Base class for binary metrics dedicated to the performance comparison between tw Inheritance diagram for moeo\-Solution\-Vs\-Solution\-BM$<$ EOT, R, EOFitness $>$::\begin{figure}[H] \begin{center} \leavevmode -\includegraphics[height=3.36336cm]{classmoeoSolutionVsSolutionBM} +\includegraphics[height=3.64821cm]{classmoeoSolutionVsSolutionBM} \end{center} \end{figure} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.eps index 400ed858d..cb9caa6f9 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 96.3855 +%%BoundingBox: 0 0 500 133.333 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,7 +19,7 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 5.1875 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 3.75 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def @@ -174,8 +174,8 @@ boxfont setfont 1 boundaspect scale (moeoVectorVsSolutionBM< EOT, R, EOFitness >) cw -(moeoBM< const std::vector< EOFitness > &, const EOFitness &, R >) cw -(eoBF< const std::vector< EOFitness > &, const EOFitness &, R >) cw +(moeoBM< A1, A2, R >) cw +(eoBF< A1, A2, R >) cw (moeoMetric) cw (eoFunctorBase) cw (eoFunctorBase) cw @@ -191,8 +191,8 @@ boundx scalefactor div boundy scalefactor div scale % ----- classes ----- (moeoVectorVsSolutionBM< EOT, R, EOFitness >) 0.5 0 box - (moeoBM< const std::vector< EOFitness > &, const EOFitness &, R >) 0.5 1 box - (eoBF< const std::vector< EOFitness > &, const EOFitness &, R >) 0 2 box + (moeoBM< A1, A2, R >) 0.5 1 box + (eoBF< A1, A2, R >) 0 2 box (moeoMetric) 1 2 box (eoFunctorBase) 0 3 box (eoFunctorBase) 1 3 box diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.tex index f6d56d34c..3d8168722 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsSolutionBM.tex @@ -8,7 +8,7 @@ Base class for binary metrics dedicated to the performance comparison between a Inheritance diagram for moeo\-Vector\-Vs\-Solution\-BM$<$ EOT, R, EOFitness $>$::\begin{figure}[H] \begin{center} \leavevmode -\includegraphics[height=2.6988cm]{classmoeoVectorVsSolutionBM} +\includegraphics[height=3.73333cm]{classmoeoVectorVsSolutionBM} \end{center} \end{figure} diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.eps b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.eps index ce5c61a89..9602d3d8d 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.eps +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.eps @@ -5,7 +5,7 @@ %%For: %Magnification: 1.00 %%Orientation: Portrait -%%BoundingBox: 0 0 500 80.4829 +%%BoundingBox: 0 0 500 136.519 %%Pages: 0 %%BeginSetup %%EndSetup @@ -19,7 +19,7 @@ /marginwidth 10 def /distx 20 def /disty 40 def -/boundaspect 6.2125 def % aspect ratio of the BoundingBox (width/height) +/boundaspect 3.6625 def % aspect ratio of the BoundingBox (width/height) /boundx 500 def /boundy boundx boundaspect div def /xspacing 0 def @@ -174,8 +174,8 @@ boxfont setfont 1 boundaspect scale (moeoVectorVsVectorBM< EOT, R, EOFitness >) cw -(moeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >) cw -(eoBF< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >) cw +(moeoBM< A1, A2, R >) cw +(eoBF< A1, A2, R >) cw (moeoMetric) cw (eoFunctorBase) cw (eoFunctorBase) cw @@ -191,8 +191,8 @@ boundx scalefactor div boundy scalefactor div scale % ----- classes ----- (moeoVectorVsVectorBM< EOT, R, EOFitness >) 0.5 0 box - (moeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >) 0.5 1 box - (eoBF< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >) 0 2 box + (moeoBM< A1, A2, R >) 0.5 1 box + (eoBF< A1, A2, R >) 0 2 box (moeoMetric) 1 2 box (eoFunctorBase) 0 3 box (eoFunctorBase) 1 3 box diff --git a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.tex b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.tex index 898bf0303..0ede3e6ee 100644 --- a/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.tex +++ b/trunk/paradiseo-moeo/docs/latex/classmoeoVectorVsVectorBM.tex @@ -8,7 +8,7 @@ Base class for binary metrics dedicated to the performance comparison between tw Inheritance diagram for moeo\-Vector\-Vs\-Vector\-BM$<$ EOT, R, EOFitness $>$::\begin{figure}[H] \begin{center} \leavevmode -\includegraphics[height=2.25352cm]{classmoeoVectorVsVectorBM} +\includegraphics[height=3.82253cm]{classmoeoVectorVsVectorBM} \end{center} \end{figure} diff --git a/trunk/paradiseo-moeo/docs/latex/doxygen.sty b/trunk/paradiseo-moeo/docs/latex/doxygen.sty index 113cbe4a8..d627a4e02 100644 --- a/trunk/paradiseo-moeo/docs/latex/doxygen.sty +++ b/trunk/paradiseo-moeo/docs/latex/doxygen.sty @@ -10,16 +10,30 @@ {\fancyplain{}{\bfseries\rightmark}} \rhead[\fancyplain{}{\bfseries\leftmark}] {\fancyplain{}{\bfseries\thepage}} -\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Fri Dec 22 09:37:11 2006 for Paradis\-EO-MOEO by Doxygen }]{} -\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Fri Dec 22 09:37:11 2006 for Paradis\-EO-MOEO by Doxygen }} +\rfoot[\fancyplain{}{\bfseries\scriptsize Generated on Mon Jan 15 14:19:18 2007 for Paradis\-EO-MOEO by Doxygen }]{} +\lfoot[]{\fancyplain{}{\bfseries\scriptsize Generated on Mon Jan 15 14:19:18 2007 for Paradis\-EO-MOEO by Doxygen }} \cfoot{} +\newenvironment{Code} +{\footnotesize} +{\normalsize} +\newcommand{\doxyref}[3]{\textbf{#1} (\textnormal{#2}\,\pageref{#3})} +\newenvironment{DocInclude} +{\footnotesize} +{\normalsize} +\newenvironment{VerbInclude} +{\footnotesize} +{\normalsize} +\newenvironment{Image} +{\begin{figure}[H]} +{\end{figure}} +\newenvironment{ImageNoCaption}{}{} \newenvironment{CompactList} {\begin{list}{}{ \setlength{\leftmargin}{0.5cm} \setlength{\itemsep}{0pt} \setlength{\parsep}{0pt} \setlength{\topsep}{0pt} - \renewcommand{\makelabel}{}}} + \renewcommand{\makelabel}{\hfill}}} {\end{list}} \newenvironment{CompactItemize} { @@ -41,7 +55,7 @@ } {\end{tabular*}\par} \newcommand{\entrylabel}[1]{ - {\parbox[b]{\labelwidth-4pt}{\makebox[0pt][l]{\textbf{#1}}\\}}} + {\parbox[b]{\labelwidth-4pt}{\makebox[0pt][l]{\textbf{#1}}\vspace{1.5\baselineskip}}}} \newenvironment{Desc} {\begin{list}{} { diff --git a/trunk/paradiseo-moeo/docs/latex/hierarchy.tex b/trunk/paradiseo-moeo/docs/latex/hierarchy.tex index 15b140b99..86788b042 100644 --- a/trunk/paradiseo-moeo/docs/latex/hierarchy.tex +++ b/trunk/paradiseo-moeo/docs/latex/hierarchy.tex @@ -1,47 +1,18 @@ \section{Paradis\-EO-MOEO Class Hierarchy} This inheritance list is sorted roughly, but not completely, alphabetically:\begin{CompactList} -\item \contentsline{section}{eo\-Binary\-Quality\-Indicator$<$ EOFitness $>$::Range}{\pageref{classeoBinaryQualityIndicator_1_1Range}}{} \item eo\-Functor\-Base{\tt [external]}\begin{CompactList} \item eo\-BF$<$ A1, A2, R $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-BM$<$ A1, A2, R $>$}{\pageref{classmoeoBM}}{} -\end{CompactList} -\item eo\-BF$<$ const EOFitness \&, const EOFitness \&, double $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{eo\-Binary\-Quality\-Indicator$<$ EOFitness $>$}{\pageref{classeoBinaryQualityIndicator}}{} +\item \contentsline{section}{moeo\-Binary\-Quality\-Indicator$<$ EOFitness $>$}{\pageref{classmoeoBinaryQualityIndicator}}{} \begin{CompactList} -\item \contentsline{section}{eo\-Additive\-Binary\-Epsilon\-Indicator$<$ EOFitness $>$}{\pageref{classeoAdditiveBinaryEpsilonIndicator}}{} -\item \contentsline{section}{eo\-Binary\-Hypervolume\-Indicator$<$ EOFitness $>$}{\pageref{classeoBinaryHypervolumeIndicator}}{} +\item \contentsline{section}{moeo\-Additive\-Binary\-Epsilon\-Indicator$<$ EOFitness $>$}{\pageref{classmoeoAdditiveBinaryEpsilonIndicator}}{} +\item \contentsline{section}{moeo\-Binary\-Hypervolume\-Indicator$<$ EOFitness $>$}{\pageref{classmoeoBinaryHypervolumeIndicator}}{} \end{CompactList} -\end{CompactList} -\item eo\-BF$<$ const EOFitness \&, const EOFitness \&, R $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-BM$<$ const EOFitness \&, const EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} +\item \contentsline{section}{moeo\-Binary\-Quality\-Indicator$<$ Fitness\-Eval $>$}{\pageref{classmoeoBinaryQualityIndicator}}{} +\item \contentsline{section}{moeo\-BM$<$ A1, A2, R $>$}{\pageref{classmoeoBM}}{} \begin{CompactList} \item \contentsline{section}{moeo\-Solution\-Vs\-Solution\-BM$<$ EOT, R, EOFitness $>$}{\pageref{classmoeoSolutionVsSolutionBM}}{} -\end{CompactList} -\end{CompactList} -\item eo\-BF$<$ const EOT \&, moeo\-Archive$<$ EOT $>$ \&, void $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-MOLS$<$ EOT $>$}{\pageref{classmoeoMOLS}}{} -\begin{CompactList} -\item \contentsline{section}{moeo\-Combined\-MOLS$<$ EOT $>$}{\pageref{classmoeoCombinedMOLS}}{} -\end{CompactList} -\end{CompactList} -\item eo\-BF$<$ const Fitness\-Eval \&, const Fitness\-Eval \&, double $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{eo\-Binary\-Quality\-Indicator$<$ Fitness\-Eval $>$}{\pageref{classeoBinaryQualityIndicator}}{} -\end{CompactList} -\item eo\-BF$<$ const std::vector$<$ EOFitness $>$ \&, const EOFitness \&, R $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-BM$<$ const std::vector$<$ EOFitness $>$ \&, const EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} -\begin{CompactList} \item \contentsline{section}{moeo\-Vector\-Vs\-Solution\-BM$<$ EOT, R, EOFitness $>$}{\pageref{classmoeoVectorVsSolutionBM}}{} -\end{CompactList} -\end{CompactList} -\item eo\-BF$<$ const std::vector$<$ EOFitness $>$ \&, const std::vector$<$ EOFitness $>$ \&, R $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-BM$<$ const std::vector$<$ EOFitness $>$ \&, const std::vector$<$ EOFitness $>$ \&, R $>$}{\pageref{classmoeoBM}}{} -\begin{CompactList} \item \contentsline{section}{moeo\-Vector\-Vs\-Vector\-BM$<$ EOT, R, EOFitness $>$}{\pageref{classmoeoVectorVsVectorBM}}{} -\end{CompactList} -\end{CompactList} -\item eo\-BF$<$ const std::vector$<$ typename EOT::Fitness $>$ \&, const std::vector$<$ typename EOT::Fitness $>$ \&, double $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-BM$<$ const std::vector$<$ typename EOT::Fitness $>$ \&, const std::vector$<$ typename EOT::Fitness $>$ \&, double $>$}{\pageref{classmoeoBM}}{} -\begin{CompactList} \item \contentsline{section}{moeo\-Vector\-Vs\-Vector\-BM$<$ EOT, double $>$}{\pageref{classmoeoVectorVsVectorBM}}{} \begin{CompactList} \item \contentsline{section}{moeo\-Contribution\-Metric$<$ EOT $>$}{\pageref{classmoeoContributionMetric}}{} @@ -49,6 +20,24 @@ This inheritance list is sorted roughly, but not completely, alphabetically:\beg \end{CompactList} \end{CompactList} \end{CompactList} +\item eo\-BF$<$ const const EOFitness \&, EOFitness \&, R $>${\tt [external]}\begin{CompactList} +\item \contentsline{section}{moeo\-BM$<$ const const EOFitness \&, EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} +\end{CompactList} +\item eo\-BF$<$ const const std::vector$<$ EOFitness $>$ \&, EOFitness \&, R $>${\tt [external]}\begin{CompactList} +\item \contentsline{section}{moeo\-BM$<$ const const std::vector$<$ EOFitness $>$ \&, EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} +\end{CompactList} +\item eo\-BF$<$ const const std::vector$<$ EOFitness $>$ \&, std::vector$<$ EOFitness $>$ \&, R $>${\tt [external]}\begin{CompactList} +\item \contentsline{section}{moeo\-BM$<$ const const std::vector$<$ EOFitness $>$ \&, std::vector$<$ EOFitness $>$ \&, R $>$}{\pageref{classmoeoBM}}{} +\end{CompactList} +\item eo\-BF$<$ const const std::vector$<$ typename EOT::Fitness $>$ \&, std::vector$<$ typename EOT::Fitness $>$ \&, double $>${\tt [external]}\begin{CompactList} +\item \contentsline{section}{moeo\-BM$<$ const const std::vector$<$ typename EOT::Fitness $>$ \&, std::vector$<$ typename EOT::Fitness $>$ \&, double $>$}{\pageref{classmoeoBM}}{} +\end{CompactList} +\item eo\-BF$<$ const EOT \&, moeo\-Archive$<$ EOT $>$ \&, void $>${\tt [external]}\begin{CompactList} +\item \contentsline{section}{moeo\-MOLS$<$ EOT $>$}{\pageref{classmoeoMOLS}}{} +\begin{CompactList} +\item \contentsline{section}{moeo\-Combined\-MOLS$<$ EOT $>$}{\pageref{classmoeoCombinedMOLS}}{} +\end{CompactList} +\end{CompactList} \item eo\-BF$<$ eo\-Pop$<$ EOT $>$ \&, eo\-Pop$<$ EOT $>$ \&, void $>${\tt [external]}\begin{CompactList} \item eo\-Replacement$<$ EOT $>${\tt [external]}\begin{CompactList} \item \contentsline{section}{moeo\-Replacement$<$ EOT, Worth\-T $>$}{\pageref{classmoeoReplacement}}{} @@ -66,6 +55,11 @@ This inheritance list is sorted roughly, but not completely, alphabetically:\beg \item \contentsline{section}{moeo\-Hybrid\-MOLS$<$ EOT $>$}{\pageref{classmoeoHybridMOLS}}{} \end{CompactList} \end{CompactList} +\item eo\-UF$<$ A1, R $>${\tt [external]}\begin{CompactList} +\item eo\-Select\-One$<$ EOT $>${\tt [external]}\begin{CompactList} +\item \contentsline{section}{moeo\-Select\-One\-From\-Pop\-And\-Arch$<$ EOT $>$}{\pageref{classmoeoSelectOneFromPopAndArch}}{} +\end{CompactList} +\end{CompactList} \item eo\-UF$<$ A, R $>${\tt [external]}\begin{CompactList} \item \contentsline{section}{moeo\-UM$<$ A, R $>$}{\pageref{classmoeoUM}}{} \end{CompactList} @@ -75,30 +69,25 @@ This inheritance list is sorted roughly, but not completely, alphabetically:\beg \item \contentsline{section}{moeo\-Solution\-UM$<$ EOT, R, EOFitness $>$}{\pageref{classmoeoSolutionUM}}{} \end{CompactList} \end{CompactList} -\item eo\-UF$<$ const eo\-Pop$<$ EOT $>$ \&, const EOT \& $>${\tt [external]}\begin{CompactList} -\item eo\-Select\-One$<$ EOT $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{moeo\-Select\-One\-From\-Pop\-And\-Arch$<$ EOT $>$}{\pageref{classmoeoSelectOneFromPopAndArch}}{} -\end{CompactList} -\end{CompactList} \item eo\-UF$<$ const eo\-Pop$<$ EOT $>$ \&, void $>${\tt [external]}\begin{CompactList} \item eo\-Perf2Worth$<$ EOT, Worth\-T $>${\tt [external]}\begin{CompactList} \item eo\-Perf2Worth\-Cached$<$ EOT, double $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{eo\-IBEA$<$ EOT, Fitness $>$}{\pageref{classeoIBEA}}{} -\begin{CompactList} -\item \contentsline{section}{eo\-IBEASorting$<$ EOT, Fitness $>$}{\pageref{classeoIBEASorting}}{} -\end{CompactList} -\item \contentsline{section}{eo\-IBEA$<$ EOT, Fitness\-Eval $>$}{\pageref{classeoIBEA}}{} -\begin{CompactList} -\item \contentsline{section}{eo\-IBEAAvg\-Sorting$<$ EOT, Fitness\-Eval $>$}{\pageref{classeoIBEAAvgSorting}}{} -\item \contentsline{section}{eo\-IBEAStoch\-Sorting$<$ EOT, Fitness\-Eval $>$}{\pageref{classeoIBEAStochSorting}}{} -\end{CompactList} \item eo\-NDSorting$<$ EOT $>${\tt [external]}\begin{CompactList} \item \contentsline{section}{moeo\-NDSorting\_\-II$<$ EOT $>$}{\pageref{classmoeoNDSorting__II}}{} \end{CompactList} +\item \contentsline{section}{moeo\-IBEA$<$ EOT, Fitness $>$}{\pageref{classmoeoIBEA}}{} +\begin{CompactList} +\item \contentsline{section}{moeo\-IBEASorting$<$ EOT, Fitness $>$}{\pageref{classmoeoIBEASorting}}{} +\end{CompactList} +\item \contentsline{section}{moeo\-IBEA$<$ EOT, Fitness\-Eval $>$}{\pageref{classmoeoIBEA}}{} +\begin{CompactList} +\item \contentsline{section}{moeo\-IBEAAvg\-Sorting$<$ EOT, Fitness\-Eval $>$}{\pageref{classmoeoIBEAAvgSorting}}{} +\item \contentsline{section}{moeo\-IBEAStoch\-Sorting$<$ EOT, Fitness\-Eval $>$}{\pageref{classmoeoIBEAStochSorting}}{} +\end{CompactList} \end{CompactList} \end{CompactList} \item eo\-Perf2Worth$<$ EOT, worth\-T $>${\tt [external]}\begin{CompactList} -\item \contentsline{section}{eo\-Pareto\-Sharing$<$ EOT, worth\-T $>$}{\pageref{classeoParetoSharing}}{} +\item \contentsline{section}{moeo\-Pareto\-Sharing$<$ EOT, worth\-T $>$}{\pageref{classmoeoParetoSharing}}{} \end{CompactList} \end{CompactList} \item eo\-UF$<$ const std::vector$<$ EOFitness $>$ \&, R $>${\tt [external]}\begin{CompactList} @@ -115,10 +104,10 @@ This inheritance list is sorted roughly, but not completely, alphabetically:\beg \item \contentsline{section}{moeo\-Metric}{\pageref{classmoeoMetric}}{} \begin{CompactList} \item \contentsline{section}{moeo\-BM$<$ A1, A2, R $>$}{\pageref{classmoeoBM}}{} -\item \contentsline{section}{moeo\-BM$<$ const EOFitness \&, const EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} -\item \contentsline{section}{moeo\-BM$<$ const std::vector$<$ EOFitness $>$ \&, const EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} -\item \contentsline{section}{moeo\-BM$<$ const std::vector$<$ EOFitness $>$ \&, const std::vector$<$ EOFitness $>$ \&, R $>$}{\pageref{classmoeoBM}}{} -\item \contentsline{section}{moeo\-BM$<$ const std::vector$<$ typename EOT::Fitness $>$ \&, const std::vector$<$ typename EOT::Fitness $>$ \&, double $>$}{\pageref{classmoeoBM}}{} +\item \contentsline{section}{moeo\-BM$<$ const const EOFitness \&, EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} +\item \contentsline{section}{moeo\-BM$<$ const const std::vector$<$ EOFitness $>$ \&, EOFitness \&, R $>$}{\pageref{classmoeoBM}}{} +\item \contentsline{section}{moeo\-BM$<$ const const std::vector$<$ EOFitness $>$ \&, std::vector$<$ EOFitness $>$ \&, R $>$}{\pageref{classmoeoBM}}{} +\item \contentsline{section}{moeo\-BM$<$ const const std::vector$<$ typename EOT::Fitness $>$ \&, std::vector$<$ typename EOT::Fitness $>$ \&, double $>$}{\pageref{classmoeoBM}}{} \item \contentsline{section}{moeo\-UM$<$ A, R $>$}{\pageref{classmoeoUM}}{} \item \contentsline{section}{moeo\-UM$<$ const EOFitness \&, R $>$}{\pageref{classmoeoUM}}{} \item \contentsline{section}{moeo\-UM$<$ const std::vector$<$ EOFitness $>$ \&, R $>$}{\pageref{classmoeoUM}}{} @@ -135,14 +124,15 @@ This inheritance list is sorted roughly, but not completely, alphabetically:\beg \item eo\-Value\-Param$<$ std::vector$<$ worth\-T $>$ $>${\tt [external]}\begin{CompactList} \item eo\-Perf2Worth$<$ EOT, worth\-T $>${\tt [external]}\end{CompactList} \end{CompactList} -\item \contentsline{section}{eo\-Pareto\-Phen\-Dist$<$ EOT, Dist\-Type $>$}{\pageref{classeoParetoPhenDist}}{} -\begin{CompactList} -\item \contentsline{section}{eo\-Pareto\-Euclid\-Dist$<$ EOT, Dist\-Type $>$}{\pageref{classeoParetoEuclidDist}}{} -\end{CompactList} -\item \contentsline{section}{eo\-Pareto\-Sharing$<$ EOT, worth\-T $>$::d\-Matrix}{\pageref{classeoParetoSharing_1_1dMatrix}}{} \item eo\-Printable{\tt [external]}\begin{CompactList} \item eo\-Persistent{\tt [external]}\begin{CompactList} \item eo\-Pop$<$ EOT $>${\tt [external]}\end{CompactList} \end{CompactList} +\item \contentsline{section}{moeo\-Binary\-Quality\-Indicator$<$ EOFitness $>$::Range}{\pageref{classmoeoBinaryQualityIndicator_1_1Range}}{} \item \contentsline{section}{moeo\-NDSorting\_\-II$<$ EOT $>$::compare\_\-nodes}{\pageref{classmoeoNDSorting__II_1_1compare__nodes}}{} +\item \contentsline{section}{moeo\-Pareto\-Phen\-Dist$<$ EOT, Dist\-Type $>$}{\pageref{classmoeoParetoPhenDist}}{} +\begin{CompactList} +\item \contentsline{section}{moeo\-Pareto\-Euclid\-Dist$<$ EOT, Dist\-Type $>$}{\pageref{classmoeoParetoEuclidDist}}{} +\end{CompactList} +\item \contentsline{section}{moeo\-Pareto\-Sharing$<$ EOT, worth\-T $>$::d\-Matrix}{\pageref{classmoeoParetoSharing_1_1dMatrix}}{} \end{CompactList} diff --git a/trunk/paradiseo-moeo/docs/latex/main.tex b/trunk/paradiseo-moeo/docs/latex/main.tex index a16d9208c..7297a0ecb 100644 --- a/trunk/paradiseo-moeo/docs/latex/main.tex +++ b/trunk/paradiseo-moeo/docs/latex/main.tex @@ -1,5 +1,5 @@ \section{intro}\label{main_intro} Paradis\-EO-MOEO is a white-box object-oriented generic framework dedicated to the flexible design of evolutionary multi-objective algorithms. This paradigm-free software embeds some features and techniques for Pareto-based resolution and aims to provide a set of classes allowing to ease and speed up the development of computationally efficient programs. It is based on a clear conceptual distinction between the solution methods and the multi-objective problems they are intended to solve. This separation confers a maximum design and code reuse. Paradis\-EO-MOEO provides a broad range of archive-related features (such as elitism or performance metrics) and the most common Pareto-based fitness assignment strategies (MOGA, NSGA, SPEA, IBEA and more). Furthermore, parallel and distributed models as well as hybridization mechanisms can be applied to an algorithm designed within Paradis\-EO-MOEO using the whole version of Paradis\-EO.\section{tutorial}\label{main_tutorial} A tutorial about a bi-objective flow-shop scheduling problem will be available soon.\section{install}\label{main_install} -The installation procedure of the package is detailed in the README file in the top-directory of the source-tree.\section{design}\label{main_design} +The installation procedure of the package is detailed in the {\tt README} file in the top-directory of the source-tree.\section{design}\label{main_design} For an introduction to the design of Paradis\-EO-MOEO, you can look at the {\tt Paradis\-EO website}. \ No newline at end of file diff --git a/trunk/paradiseo-moeo/docs/latex/refman.tex b/trunk/paradiseo-moeo/docs/latex/refman.tex index 39c874911..15cb018d4 100644 --- a/trunk/paradiseo-moeo/docs/latex/refman.tex +++ b/trunk/paradiseo-moeo/docs/latex/refman.tex @@ -17,9 +17,9 @@ \begin{center} {\Large Paradis\-EO-MOEO Reference Manual\\[1ex]\large 0.1 }\\ \vspace*{1cm} -{\large Generated by Doxygen 1.4.6}\\ +{\large Generated by Doxygen 1.5.1}\\ \vspace*{0.5cm} -{\small Fri Dec 22 09:37:11 2006}\\ +{\small Mon Jan 15 14:19:18 2007}\\ \end{center} \end{titlepage} \clearemptydoublepage @@ -34,22 +34,14 @@ \chapter{Paradis\-EO-MOEO Class Index} \input{annotated} \chapter{Paradis\-EO-MOEO Class Documentation} -\input{classeoAdditiveBinaryEpsilonIndicator} -\include{classeoBinaryHypervolumeIndicator} -\include{classeoBinaryQualityIndicator} -\include{classeoBinaryQualityIndicator_1_1Range} -\include{classeoIBEA} -\include{classeoIBEAAvgSorting} -\include{classeoIBEASorting} -\include{classeoIBEAStochSorting} -\include{classeoParetoEuclidDist} -\include{classeoParetoPhenDist} -\include{classeoParetoSharing} -\include{classeoParetoSharing_1_1dMatrix} +\input{classmoeoAdditiveBinaryEpsilonIndicator} \include{classmoeoArchive} \include{classmoeoArchiveFitnessSavingUpdater} \include{classmoeoArchiveUpdater} +\include{classmoeoBinaryHypervolumeIndicator} \include{classmoeoBinaryMetricSavingUpdater} +\include{classmoeoBinaryQualityIndicator} +\include{classmoeoBinaryQualityIndicator_1_1Range} \include{classmoeoBM} \include{classmoeoCombinedMOLS} \include{classmoeoContributionMetric} @@ -57,11 +49,19 @@ \include{classmoeoElitistReplacement} \include{classmoeoEntropyMetric} \include{classmoeoHybridMOLS} +\include{classmoeoIBEA} +\include{classmoeoIBEAAvgSorting} +\include{classmoeoIBEASorting} +\include{classmoeoIBEAStochSorting} \include{classmoeoMetric} \include{classmoeoMOLS} \include{classmoeoNDSorting__II} \include{classmoeoNDSorting__II_1_1compare__nodes} \include{classmoeoNSGA__II} +\include{classmoeoParetoEuclidDist} +\include{classmoeoParetoPhenDist} +\include{classmoeoParetoSharing} +\include{classmoeoParetoSharing_1_1dMatrix} \include{classmoeoReplacement} \include{classmoeoSelectOneFromPopAndArch} \include{classmoeoSolutionUM} diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoArchive.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoArchive.3 index 06a4883d4..e1bf41ffa 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoArchive.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoArchive.3 @@ -1,4 +1,4 @@ -.TH "moeoArchive" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoArchive" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -24,11 +24,11 @@ Inherits \fBeoPop< EOT >< EOT >\fP. .in +1c .ti -1c -.RI "bool \fBdominates\fP (const \fBEOFitness\fP &_fit) const " +.RI "bool \fBdominates\fP (const \fBEOFitness\fP &_fit) const" .br .RI "\fIReturns true if the current archive dominates _fit. \fP" .ti -1c -.RI "bool \fBcontains\fP (const \fBEOFitness\fP &_fit) const " +.RI "bool \fBcontains\fP (const \fBEOFitness\fP &_fit) const" .br .RI "\fIReturns true if the current archive contains _fit. \fP" .ti -1c @@ -61,6 +61,8 @@ Returns true if the current archive dominates _fit. .PP Definition at line 39 of file moeoArchive.h. +.PP +Referenced by moeoArchive< EOT >::update(). .SS "template bool \fBmoeoArchive\fP< EOT >::contains (const \fBEOFitness\fP & _fit) const\fC [inline]\fP" .PP Returns true if the current archive contains _fit. @@ -85,6 +87,10 @@ Updates the archive with a given individual _eo. .PP Definition at line 63 of file moeoArchive.h. +.PP +References moeoArchive< EOT >::dominates(). +.PP +Referenced by moeoArchive< EOT >::update(). .SS "template void \fBmoeoArchive\fP< EOT >::update (const \fBeoPop\fP< EOT > & _pop)\fC [inline]\fP" .PP Updates the archive with a given population _pop. @@ -97,6 +103,8 @@ Updates the archive with a given population _pop. .PP Definition at line 98 of file moeoArchive.h. +.PP +References moeoArchive< EOT >::update(). .SH "Author" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveFitnessSavingUpdater.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveFitnessSavingUpdater.3 index dae00f3aa..2110dd8f7 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveFitnessSavingUpdater.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveFitnessSavingUpdater.3 @@ -1,4 +1,4 @@ -.TH "moeoArchiveFitnessSavingUpdater" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoArchiveFitnessSavingUpdater" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveUpdater.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveUpdater.3 index 262d87ced..a0e7c74e9 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveUpdater.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoArchiveUpdater.3 @@ -1,4 +1,4 @@ -.TH "moeoArchiveUpdater" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoArchiveUpdater" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoBM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoBM.3 index c21bc9aaf..dfa636828 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoBM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoBM.3 @@ -1,4 +1,4 @@ -.TH "moeoBM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoBM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -12,6 +12,8 @@ moeoBM \- Base class for binary metrics. .PP Inherits \fBeoBF< A1, A2, R >< A1, A2, R >\fP, and \fBmoeoMetric\fP. .PP +Inherited by \fBmoeoSolutionVsSolutionBM< EOT, R, EOFitness >\fP, \fBmoeoVectorVsSolutionBM< EOT, R, EOFitness >\fP, \fBmoeoVectorVsVectorBM< EOT, R, EOFitness >\fP, and \fBmoeoVectorVsVectorBM< EOT, double >\fP. +.PP .SH "Detailed Description" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoBinaryMetricSavingUpdater.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoBinaryMetricSavingUpdater.3 index 901f8f0c9..a296fd8d2 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoBinaryMetricSavingUpdater.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoBinaryMetricSavingUpdater.3 @@ -1,4 +1,4 @@ -.TH "moeoBinaryMetricSavingUpdater" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoBinaryMetricSavingUpdater" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoCombinedMOLS.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoCombinedMOLS.3 index eda165f13..c9f97bdc9 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoCombinedMOLS.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoCombinedMOLS.3 @@ -1,4 +1,4 @@ -.TH "moeoCombinedMOLS" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoCombinedMOLS" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoContributionMetric.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoContributionMetric.3 index cbbab0abd..c4c472986 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoContributionMetric.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoContributionMetric.3 @@ -1,4 +1,4 @@ -.TH "moeoContributionMetric" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoContributionMetric" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoDisctinctElitistReplacement.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoDisctinctElitistReplacement.3 index b58df9e51..2388951f9 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoDisctinctElitistReplacement.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoDisctinctElitistReplacement.3 @@ -1,4 +1,4 @@ -.TH "moeoDisctinctElitistReplacement" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoDisctinctElitistReplacement" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -96,6 +96,8 @@ creation of the new population of size _size .PP Definition at line 123 of file moeoReplacement.h. .PP +References moeoDisctinctElitistReplacement< EOT, WorthT >::perf2worth, and eoPop< EOT >::swap(). +.PP Referenced by moeoDisctinctElitistReplacement< EOT, WorthT >::operator()(). .SH "Author" diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoElitistReplacement.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoElitistReplacement.3 index e5b0a1910..5e1c4777d 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoElitistReplacement.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoElitistReplacement.3 @@ -1,4 +1,4 @@ -.TH "moeoElitistReplacement" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoElitistReplacement" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoEntropyMetric.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoEntropyMetric.3 index e2d44babb..2cf1583d5 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoEntropyMetric.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoEntropyMetric.3 @@ -1,4 +1,4 @@ -.TH "moeoEntropyMetric" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoEntropyMetric" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoHybridMOLS.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoHybridMOLS.3 index 47f81460a..a417ee37f 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoHybridMOLS.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoHybridMOLS.3 @@ -1,4 +1,4 @@ -.TH "moeoHybridMOLS" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoHybridMOLS" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoMOLS.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoMOLS.3 index dfa2f3f69..95a92aa15 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoMOLS.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoMOLS.3 @@ -1,4 +1,4 @@ -.TH "moeoMOLS" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoMOLS" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoMetric.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoMetric.3 index a289fd2cf..9a698fee7 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoMetric.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoMetric.3 @@ -1,4 +1,4 @@ -.TH "moeoMetric" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoMetric" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -12,7 +12,7 @@ moeoMetric \- Base class for performance metrics (also called quality indicators .PP Inherits \fBeoFunctorBase\fP. .PP -Inherited by \fBmoeoBM< A1, A2, R >\fP, \fBmoeoBM< const EOFitness &, const EOFitness &, R >\fP, \fBmoeoBM< const std::vector< EOFitness > &, const EOFitness &, R >\fP, \fBmoeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >\fP, \fBmoeoBM< const std::vector< typename EOT::Fitness > &, const std::vector< typename EOT::Fitness > &, double >\fP, \fBmoeoUM< A, R >\fP, \fBmoeoUM< const EOFitness &, R >\fP, and \fBmoeoUM< const std::vector< EOFitness > &, R >\fP. +Inherited by \fBmoeoBM< A1, A2, R >\fP, \fBmoeoBM< const const EOFitness &, EOFitness &, R >\fP, \fBmoeoBM< const const std::vector< EOFitness > &, EOFitness &, R >\fP, \fBmoeoBM< const const std::vector< EOFitness > &, std::vector< EOFitness > &, R >\fP, \fBmoeoBM< const const std::vector< typename EOT::Fitness > &, std::vector< typename EOT::Fitness > &, double >\fP, \fBmoeoUM< A, R >\fP, \fBmoeoUM< const EOFitness &, R >\fP, and \fBmoeoUM< const std::vector< EOFitness > &, R >\fP. .PP .SH "Detailed Description" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II.3 index ec0ae9e42..ef0618944 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II.3 @@ -1,8 +1,8 @@ -.TH "moeoNDSorting_II" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoNDSorting_II" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME -moeoNDSorting_II \- Fast Elitist Non-Dominant Sorting Genetic Algorithm. +moeoNDSorting_II \- Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie Note : This is a corrected version of the original \fBeoNDSorting_II\fP class. .PP .SH SYNOPSIS @@ -18,6 +18,7 @@ Inherits \fBeoNDSorting< EOT >< EOT >\fP. .ti -1c .RI "typedef std::pair< double, unsigned > \fBdouble_index_pair\fP" .br +.RI "\fIindex pair \fP" .in -1c .SS "Public Member Functions" @@ -25,6 +26,7 @@ Inherits \fBeoNDSorting< EOT >< EOT >\fP. .ti -1c .RI "\fBmoeoNDSorting_II\fP (bool nasty_flag_=false)" .br +.RI "\fIconstructor \fP" .ti -1c .RI "std::vector< double > \fBniche_penalty\fP (const std::vector< unsigned > &_cf, const \fBeoPop\fP< EOT > &_pop)" .br @@ -36,15 +38,14 @@ Inherits \fBeoNDSorting< EOT >< EOT >\fP. .ti -1c .RI "class \fBcompare_nodes\fP" .br +.RI "\fIA class to compare the nodes. \fP" .in -1c .SH "Detailed Description" .PP .SS "template class moeoNDSorting_II< EOT >" -Fast Elitist Non-Dominant Sorting Genetic Algorithm. +Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie Note : This is a corrected version of the original \fBeoNDSorting_II\fP class. -Note : This is a corrected version of the original \fBeoNDSorting_II\fP class -.PP \fBSee also:\fP .RS 4 \fBeoNDSorting_II\fP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II_compare_nodes.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II_compare_nodes.3 index beb952c10..735dd97b3 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II_compare_nodes.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoNDSorting_II_compare_nodes.3 @@ -1,25 +1,29 @@ -.TH "moeoNDSorting_II::compare_nodes" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoNDSorting_II::compare_nodes" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME -moeoNDSorting_II::compare_nodes \- +moeoNDSorting_II::compare_nodes \- A class to compare the nodes. + +.PP .SH SYNOPSIS .br .PP +\fC#include \fP +.PP .SS "Public Member Functions" .in +1c .ti -1c -.RI "bool \fBoperator()\fP (const \fBdouble_index_pair\fP &a, const \fBdouble_index_pair\fP &b) const " +.RI "bool \fBoperator()\fP (const \fBdouble_index_pair\fP &a, const \fBdouble_index_pair\fP &b) const" .br .in -1c .SH "Detailed Description" .PP .SS "template class moeoNDSorting_II< EOT >::compare_nodes" - +A class to compare the nodes. .PP -Definition at line 34 of file moeoNDSorting.h. +Definition at line 46 of file moeoNDSorting.h. .SH "Author" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoNSGA_II.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoNSGA_II.3 index 7a3d3c8ca..34da46cda 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoNSGA_II.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoNSGA_II.3 @@ -1,4 +1,4 @@ -.TH "moeoNSGA_II" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoNSGA_II" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -88,7 +88,7 @@ Deb, K., S. Agrawal, A. Pratap, and T. Meyarivan, A fast elitist non-dominated s .PP .PP -Definition at line 45 of file moeoNSGA_II.h. +Definition at line 46 of file moeoNSGA_II.h. .SH "Author" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoReplacement.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoReplacement.3 index b2fcc1b99..4c7f876c6 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoReplacement.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoReplacement.3 @@ -1,4 +1,4 @@ -.TH "moeoReplacement" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoReplacement" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoSelectOneFromPopAndArch.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoSelectOneFromPopAndArch.3 index b259334a4..6bd2ec495 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoSelectOneFromPopAndArch.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoSelectOneFromPopAndArch.3 @@ -1,4 +1,4 @@ -.TH "moeoSelectOneFromPopAndArch" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoSelectOneFromPopAndArch" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionUM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionUM.3 index dac1de48e..bbbdd40a7 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionUM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionUM.3 @@ -1,4 +1,4 @@ -.TH "moeoSolutionUM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoSolutionUM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionVsSolutionBM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionVsSolutionBM.3 index b02007d4d..1ba173f99 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionVsSolutionBM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoSolutionVsSolutionBM.3 @@ -1,4 +1,4 @@ -.TH "moeoSolutionVsSolutionBM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoSolutionVsSolutionBM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -10,7 +10,7 @@ moeoSolutionVsSolutionBM \- Base class for binary metrics dedicated to the perfo .PP \fC#include \fP .PP -Inherits \fBmoeoBM< const EOFitness &, const EOFitness &, R >\fP. +Inherits \fBmoeoBM< A1, A2, R >< const const EOFitness &, EOFitness &, R >\fP. .PP .SH "Detailed Description" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoUM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoUM.3 index a7a8055c7..42fbb8089 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoUM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoUM.3 @@ -1,4 +1,4 @@ -.TH "moeoUM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoUM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoVectorUM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoVectorUM.3 index 678e0e28a..441effd9a 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoVectorUM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoVectorUM.3 @@ -1,4 +1,4 @@ -.TH "moeoVectorUM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoVectorUM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsSolutionBM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsSolutionBM.3 index c662bc944..0159f5e27 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsSolutionBM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsSolutionBM.3 @@ -1,4 +1,4 @@ -.TH "moeoVectorVsSolutionBM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoVectorVsSolutionBM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -10,7 +10,7 @@ moeoVectorVsSolutionBM \- Base class for binary metrics dedicated to the perform .PP \fC#include \fP .PP -Inherits \fBmoeoBM< const std::vector< EOFitness > &, const EOFitness &, R >\fP. +Inherits \fBmoeoBM< A1, A2, R >< const const std::vector< EOFitness > &, EOFitness &, R >\fP. .PP .SH "Detailed Description" .PP diff --git a/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsVectorBM.3 b/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsVectorBM.3 index 2504f5beb..5a782680d 100644 --- a/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsVectorBM.3 +++ b/trunk/paradiseo-moeo/docs/man/man3/moeoVectorVsVectorBM.3 @@ -1,4 +1,4 @@ -.TH "moeoVectorVsVectorBM" 3 "22 Dec 2006" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- +.TH "moeoVectorVsVectorBM" 3 "15 Jan 2007" "Version 0.1" "ParadisEO-MOEO" \" -*- nroff -*- .ad l .nh .SH NAME @@ -10,7 +10,7 @@ moeoVectorVsVectorBM \- Base class for binary metrics dedicated to the performan .PP \fC#include \fP .PP -Inherits \fBmoeoBM< const std::vector< EOFitness > &, const std::vector< EOFitness > &, R >\fP. +Inherits \fBmoeoBM< A1, A2, R >< const const std::vector< EOFitness > &, std::vector< EOFitness > &, R >\fP. .PP .SH "Detailed Description" .PP diff --git a/trunk/paradiseo-moeo/docs/moeo.doxyfile b/trunk/paradiseo-moeo/docs/moeo.doxyfile index 779bac049..5b8de0c70 100644 --- a/trunk/paradiseo-moeo/docs/moeo.doxyfile +++ b/trunk/paradiseo-moeo/docs/moeo.doxyfile @@ -199,7 +199,7 @@ SKIP_FUNCTION_MACROS = YES #--------------------------------------------------------------------------- # Configuration::additions related to external references #--------------------------------------------------------------------------- -TAGFILES = "../../paradiseo-eo/doc/eo.doxytag=../../../paradiseo-eo/doc/html" "../../paradiseo-mo/docs/mo.doxytag=../../../paradiseo-mo/docs/html" +TAGFILES = ../../paradiseo-eo/doc/eo.doxytag=../../paradiseo-eo/doc/doc/html GENERATE_TAGFILE = moeo.doxytag ALLEXTERNALS = NO EXTERNAL_GROUPS = YES diff --git a/trunk/paradiseo-moeo/src/moeoNDSorting.h b/trunk/paradiseo-moeo/src/moeoNDSorting.h index 926c763f0..8cd7c4aa6 100644 --- a/trunk/paradiseo-moeo/src/moeoNDSorting.h +++ b/trunk/paradiseo-moeo/src/moeoNDSorting.h @@ -1,12 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -/* ----------------------------------------------------------------------------- - moeoNDSorting.h - (c) Deneche Abdelhakim, 2006 +//----------------------------------------------------------------------------- +// moeoNDSorting.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... - Contact: paradiseo-help@lists.gforge.inria.fr -*/ -//------------------------------------------------------------------------------ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef moeoNDSorting_h #define moeoNDSorting_h @@ -14,78 +16,93 @@ #include #include -# define INF 1.0e14 // DBL_MAX +# define INF 1.0e14 // DBL_MAX -/** @brief Fast Elitist Non-Dominant Sorting Genetic Algorithm - - Note : This is a corrected version of the original eoNDSorting_II class - . - @see eoNDSorting_II -*/ -template -class moeoNDSorting_II : public eoNDSorting +/** + * Fast Elitist Non-Dominant Sorting Genetic Algorithm assignment strategie + * Note : This is a corrected version of the original eoNDSorting_II class + * @see eoNDSorting_II + */ +template < class EOT > class moeoNDSorting_II:public eoNDSorting < EOT > { - public: +public: - moeoNDSorting_II(bool nasty_flag_ = false) : eoNDSorting(nasty_flag_) {} + /** + * constructor + */ +moeoNDSorting_II (bool nasty_flag_ = false):eoNDSorting < EOT > + (nasty_flag_) + { + } - typedef std::pair double_index_pair; + /** + * index pair + */ + typedef std::pair < double, unsigned >double_index_pair; + /** + * A class to compare the nodes + */ class compare_nodes { - public : - bool operator()(const double_index_pair& a, const double_index_pair& b) const + public:bool operator () (const double_index_pair & a, + const double_index_pair & b) const { return a.first < b.first; } }; /// _cf points into the elements that consist of the current front - std::vector niche_penalty(const std::vector& _cf, const eoPop& _pop) + std::vector < double >niche_penalty (const std::vector < unsigned >&_cf, + const eoPop < EOT > &_pop) { typedef typename EOT::Fitness::fitness_traits traits; unsigned i; - std::vector niche_count(_cf.size(), 0.); + std::vector < double >niche_count (_cf.size (), 0.); - unsigned nObjectives = traits::nObjectives(); //_pop[_cf[0]].fitness().size(); + unsigned nObjectives = traits::nObjectives (); //_pop[_cf[0]].fitness().size(); for (unsigned o = 0; o < nObjectives; ++o) - { - std::vector > performance(_cf.size()); - for (i =0; i < _cf.size(); ++i) { - performance[i].first = _pop[_cf[i]].fitness()[o]; - performance[i].second = i; + std::vector < std::pair < double, + unsigned > >performance (_cf.size ()); + for (i = 0; i < _cf.size (); ++i) + { + performance[i].first = _pop[_cf[i]].fitness ()[o]; + performance[i].second = i; + } + + std::sort (performance.begin (), performance.end (), compare_nodes ()); // a lambda operator would've been nice here + + // set boundary at INF (so it will get chosen over all the others + niche_count[performance[0].second] = INF; + niche_count[performance.back ().second] = INF; + + if (performance[0].first != performance.back ().first) + { + for (i = 1; i < _cf.size () - 1; ++i) + { + if (niche_count[performance[i].second] != INF) + { + niche_count[performance[i].second] += + (performance[i + 1].first - + performance[i - + 1].first) / (performance.back ().first - + performance[0].first); + } + } + } } - std::sort(performance.begin(), performance.end(), compare_nodes()); // a lambda operator would've been nice here + // transform niche_count into penality + for (i = 0; i < niche_count.size (); ++i) + { + niche_count[i] = INF - niche_count[i]; + } - // set boundary at INF (so it will get chosen over all the others - niche_count[performance[0].second] = INF; - niche_count[performance.back().second] = INF; - - if (performance[0].first != performance.back().first) - { - for (i = 1; i < _cf.size()-1; ++i) - { - if (niche_count[performance[i].second] != INF) - { - niche_count[performance[i].second] += (performance[i+1].first - performance[i-1].first)/ - (performance.back().first-performance[0].first); - } - } - } - } - - // transform niche_count into penality - for (i = 0; i < niche_count.size(); ++i) - { - niche_count[i] = INF - niche_count[i]; - } - - return niche_count; + return niche_count; } -}; +}; #endif diff --git a/trunk/paradiseo-moeo/src/moeoNSGA_II.h b/trunk/paradiseo-moeo/src/moeoNSGA_II.h index 5fb3c3c7d..07f19f0a8 100644 --- a/trunk/paradiseo-moeo/src/moeoNSGA_II.h +++ b/trunk/paradiseo-moeo/src/moeoNSGA_II.h @@ -28,7 +28,8 @@ /** */ -template class moeoNSGA_II: public eoAlgo { +template < class EOT > class moeoNSGA_II:public eoAlgo < EOT > +{ public: /** @@ -42,89 +43,64 @@ public: @param _op variation operator */ - moeoNSGA_II( - unsigned _max_gen, - eoEvalFunc& _eval, - eoGenOp& _op - ): continuator(*(new eoGenContinue(_max_gen))), - eval(_eval), - loopEval(_eval), - popEval(loopEval), - selectOne(sorting, 2), // binary tournament selection - replace(sorting), - genBreed(selectOne, _op), - breed(genBreed) - {} + moeoNSGA_II (unsigned _max_gen, eoEvalFunc < EOT > &_eval, eoGenOp < EOT > &_op):continuator (*(new eoGenContinue < EOT > (_max_gen))), eval (_eval), loopEval (_eval), popEval (loopEval), selectOne (sorting, 2), // binary tournament selection + replace (sorting), genBreed (selectOne, _op), breed (genBreed) + { + } - /// Ctor taking _max_gen, crossover and mutation - moeoNSGA_II( - unsigned _max_gen, - eoEvalFunc& _eval, - eoQuadOp& crossover, - double pCross, - eoMonOp& mutation, - double pMut - ): continuator(*(new eoGenContinue(_max_gen))), - eval(_eval), - loopEval(_eval), - popEval(loopEval), - selectOne(sorting, 2), // binary tournament selection - replace(sorting), - genBreed(selectOne, *new eoSGAGenOp(crossover, pCross, mutation, pMut)), - breed(genBreed) - {} + /// Ctor taking _max_gen, crossover and mutation + moeoNSGA_II (unsigned _max_gen, eoEvalFunc < EOT > &_eval, eoQuadOp < EOT > &crossover, double pCross, eoMonOp < EOT > &mutation, double pMut):continuator (*(new eoGenContinue < EOT > (_max_gen))), eval (_eval), loopEval (_eval), popEval (loopEval), selectOne (sorting, 2), // binary tournament selection + + replace (sorting), + genBreed (selectOne, + *new eoSGAGenOp < EOT > (crossover, pCross, mutation, pMut)), + breed (genBreed) + { + } - /// Ctor taking a continuator instead of _gen_max - moeoNSGA_II( - eoContinue& _continuator, - eoEvalFunc& _eval, - eoGenOp& _op - ): - continuator(_continuator), - eval (_eval), - loopEval(_eval), - popEval(loopEval), - selectOne(sorting, 2), // binary tournament selection - replace(sorting), - genBreed(selectOne, _op), - breed(genBreed) - {} + /// Ctor taking a continuator instead of _gen_max +moeoNSGA_II (eoContinue < EOT > &_continuator, eoEvalFunc < EOT > &_eval, eoGenOp < EOT > &_op): + continuator (_continuator), eval (_eval), loopEval (_eval), popEval (loopEval), selectOne (sorting, 2), // binary tournament selection + replace (sorting), genBreed (selectOne, _op), breed (genBreed) + { + } - ///Apply a few generation of evolution to the population. - virtual void operator()(eoPop& _pop) - { - eoPop offspring, empty_pop; - popEval(empty_pop, _pop); // a first eval of _pop - do - { - // generate offspring, worths are recalculated if necessary - breed(_pop, offspring); - - // eval of offspring - popEval(_pop, offspring); + ///Apply a few generation of evolution to the population. + virtual void operator () (eoPop < EOT > &_pop) + { + eoPop < EOT > offspring, empty_pop; + popEval (empty_pop, _pop); // a first eval of _pop + do + { + // generate offspring, worths are recalculated if necessary + breed (_pop, offspring); - // after replace, the new pop is in _pop. Worths are recalculated if necessary - replace(_pop, offspring); - - } while (continuator(_pop)); - } + // eval of offspring + popEval (_pop, offspring); + + // after replace, the new pop is in _pop. Worths are recalculated if necessary + replace (_pop, offspring); + + } + while (continuator (_pop)); + } protected: - eoContinue& continuator; - - eoEvalFunc& eval; - eoPopLoopEval loopEval; + eoContinue < EOT > &continuator; - eoPopEvalFunc& popEval; - - /// NSGAII sorting - moeoNDSorting_II sorting; - /// Binary tournament selection - eoDetTournamentWorthSelect selectOne; - /// Elitist replacement - moeoElitistReplacement replace; - eoGeneralBreeder genBreed; - eoBreed& breed; + eoEvalFunc < EOT > &eval; + eoPopLoopEval < EOT > loopEval; + + eoPopEvalFunc < EOT > &popEval; + + /// NSGAII sorting + moeoNDSorting_II < EOT > sorting; + /// Binary tournament selection + eoDetTournamentWorthSelect < EOT > selectOne; + /// Elitist replacement + moeoElitistReplacement < EOT > replace; + eoGeneralBreeder < EOT > genBreed; + eoBreed < EOT > &breed; }; #endif diff --git a/trunk/paradiseo-moeo/src/old/make_algo_MOEO.h b/trunk/paradiseo-moeo/src/old/make_algo_MOEO.h index 46af0756c..fc7ab9322 100644 --- a/trunk/paradiseo-moeo/src/old/make_algo_MOEO.h +++ b/trunk/paradiseo-moeo/src/old/make_algo_MOEO.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "make_algo_MOEO.h" +//----------------------------------------------------------------------------- +// make_algo_MOEO.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, June 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _make_algo_MOEO_h #define _make_algo_MOEO_h @@ -29,10 +18,10 @@ #include "utils/eoState.h" // selections #include "eoNDSorting.h" -#include "eoIBEA.h" -#include "eoBinaryQualityIndicator.h" +#include "old/moeoIBEA.h" +#include "old/moeoBinaryQualityIndicator.h" #include "eoParetoRanking.h" -#include "eoParetoSharing.h" +#include "moeoParetoSharing.h" #include "eoSelectFromWorth.h" #include "moeoSelectOneFromPopAndArch.h" // replacements @@ -88,21 +77,22 @@ template < class EOT > p2w = new eoNDSorting_I < EOT > (nicheSize); else if (selStr == string ("NSGA-II")) // NSGA-II p2w = new eoNDSorting_II < EOT > (); - /* - else if (selStr == string("IBEA")) { // IBEA - // the binary quality indicator - eoBinaryQualityIndicator* I; - if (indStr == string("Epsilon")) - I = new eoAdditiveBinaryEpsilonIndicator; - else if (indStr == string("Hypervolume")) - I = new eoBinaryHypervolumeIndicator(rho); - else { - string stmp = string("Invalid binary quality indicator (for IBEA): ") + indStr; - throw std::runtime_error(stmp.c_str()); - } - p2w = new eoIBEASorting(I, kappa); - } - */ + else if (selStr == string ("IBEA")) + { // IBEA + // the binary quality indicator + moeoBinaryQualityIndicator < EOFitness > *I; + if (indStr == string ("Epsilon")) + I = new moeoAdditiveBinaryEpsilonIndicator < EOFitness >; + else if (indStr == string ("Hypervolume")) + I = new moeoBinaryHypervolumeIndicator < EOFitness > (rho); + else + { + string stmp = + string ("Invalid binary quality indicator (for IBEA): ") + indStr; + throw std::runtime_error (stmp.c_str ()); + } + p2w = new moeoIBEASorting < EOT > (I, kappa); + } else if (selStr == string ("ParetoRanking")) { // Pareto Ranking eoDominanceMap < EOT > &dominance = @@ -111,7 +101,7 @@ template < class EOT > } else if (selStr == string ("ParetoSharing")) { // Pareto Sharing - p2w = new eoParetoSharing < EOT > (nicheSize); + p2w = new moeoParetoSharing < EOT > (nicheSize); } else { @@ -221,11 +211,17 @@ template < class EOT > 'R', "Evolution Engine").value (); eoReplacement < EOT > *replace; if (repStr == string ("Plus")) // Plus - replace = new moeoElitistReplacement < EOT, double >(*p2w); + { + replace = new moeoElitistReplacement < EOT, double >(*p2w); + } else if (repStr == string ("DistinctPlus")) // DistinctPlus - replace = new moeoDisctinctElitistReplacement < EOT, double >(*p2w); + { + replace = new moeoDisctinctElitistReplacement < EOT, double >(*p2w); + } else if (repStr == string ("Generational")) // Generational - replace = new eoGenerationalReplacement < EOT >; + { + replace = new eoGenerationalReplacement < EOT >; + } else { string stmp = string ("Invalid replacement: ") + repStr; @@ -242,7 +238,7 @@ template < class EOT > eoGeneralBreeder < EOT > *breed = new eoGeneralBreeder < EOT > (*select, _op, offspringRateParam.value ()); _state.storeFunctor (breed); - + // the eoEasyEA eoAlgo < EOT > *algo = new eoEasyEA < EOT > (_continue, _eval, *breed, *replace); diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShop.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShop.h index 284804b0a..df533b4df 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShop.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShop.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShop.h" +//----------------------------------------------------------------------------- +// FlowShop.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, April 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShop_h #define _FlowShop_h diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopBenchmarkParser.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopBenchmarkParser.h index 3b13d9872..f0e36d8fd 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopBenchmarkParser.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopBenchmarkParser.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopBenchmarkParser.h" +//----------------------------------------------------------------------------- +// FlowShopBenchmarkParser.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopBenchmarkParser_h #define _FlowShopBenchmarkParser_h @@ -38,7 +27,8 @@ const static * Class to handle parameters of a flow-shop instance from a benchmark file * benchmark files are available at www.lifl.fr/~basseur/BenchsUncertain/ */ -class FlowShopBenchmarkParser +class + FlowShopBenchmarkParser { public: @@ -74,7 +64,8 @@ public: * the processing times */ const - std::vector < std::vector < unsigned > > + std::vector < + std::vector < unsigned > > getP () { return p; @@ -144,9 +135,11 @@ private: void init (const string _benchmarkFileName) { - string buffer; + string + buffer; string::size_type start, end; - ifstream inputFile (_benchmarkFileName.data (), ios::in); + ifstream + inputFile (_benchmarkFileName.data (), ios::in); // opening of the benchmark file if (!inputFile) cerr << "*** ERROR : Unable to open the benchmark file '" << @@ -161,7 +154,7 @@ private: getline (inputFile, buffer, '\n'); // processing times and due-dates p = std::vector < std::vector < unsigned > > (M, N); - d = std::vector < unsigned > (N); + d = std::vector < unsigned >(N); // for each job... for (unsigned j = 0; j < N; j++) { diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEA.cpp b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEA.cpp index b22742025..3f9dbf3ee 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEA.cpp +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEA.cpp @@ -1,26 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopEA.cpp" - -// (c) OPAC Team, LIFL, October 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ +//----------------------------------------------------------------------------- +// FlowShopEA.cpp +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- // Miscilaneous include and declaration using namespace std; diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEval.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEval.h index a974d8fc4..10754ccaf 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEval.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopEval.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopEval.h" +//----------------------------------------------------------------------------- +// FlowShopEval.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopEval_h #define _FlowShopEval_h @@ -63,7 +52,7 @@ public: * computation of the multi-objective evaluation of an eoFlowShop object * @param FlowShop & _eo the FlowShop object to evaluate */ - void operator () (FlowShop & _eo) + void operator () (FlowShop & _eo) { FlowShopFitness fitness; fitness[0] = tardiness (_eo); @@ -82,9 +71,9 @@ private: /** number of jobs */ unsigned N; /** p[i][j] = processing time of job j on machine i */ - std::vector < std::vector < unsigned > > p; + std::vector < std::vector < unsigned > >p; /** d[j] = due-date of the job j */ - std::vector < unsigned > d; + std::vector < unsigned >d; @@ -98,7 +87,7 @@ private: vector < unsigned >scheduling = _eo.getScheduling (); // completion times computation for each job on each machine // C[i][j] = completion of the jth job of the scheduling on the ith machine - std::vector < std::vector < unsigned > > C = completionTime (_eo); + std::vector < std::vector < unsigned > >C = completionTime (_eo); // fitness == C[M-1][scheduling[N-1]]; return C[M - 1][scheduling[N - 1]]; } @@ -115,7 +104,7 @@ private: vector < unsigned >scheduling = _eo.getScheduling (); // completion times computation for each job on each machine // C[i][j] = completion of the jth job of the scheduling on the ith machine - std::vector < std::vector < unsigned > > C = completionTime (_eo); + std::vector < std::vector < unsigned > >C = completionTime (_eo); // tardiness computation unsigned long sum = 0; for (unsigned j = 0; j < N; j++) @@ -134,10 +123,10 @@ private: * C[i][j] = completion of the jth job of the scheduling on the ith machine * @param const FlowShop _eo the genotype to evaluate */ - std::vector < std::vector < unsigned > > completionTime (FlowShop _eo) + std::vector < std::vector < unsigned > >completionTime (FlowShop _eo) { - vector < unsigned > scheduling = _eo.getScheduling (); - std::vector < std::vector < unsigned > > C (M, N); + vector < unsigned >scheduling = _eo.getScheduling (); + std::vector < std::vector < unsigned > >C (M, N); C[0][scheduling[0]] = p[0][scheduling[0]]; for (unsigned j = 1; j < N; j++) C[0][scheduling[j]] = C[0][scheduling[j - 1]] + p[0][scheduling[j]]; diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopFitness.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopFitness.h index 10ae5cc01..e9094bd86 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopFitness.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopFitness.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopFitness.h" +//----------------------------------------------------------------------------- +// FlowShopFitness.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopFitness_h #define _FlowShopFitness_h diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopInit.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopInit.h index a72329195..616b52c39 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopInit.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopInit.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopInit.h" +//----------------------------------------------------------------------------- +// FlowShopInit.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopInit_h #define _FlowShopInit_h @@ -49,7 +38,7 @@ public: * randomize a genotype * @param FlowShop & _genotype a genotype that has been default-constructed */ - void operator () (FlowShop & _genotype) + void operator () (FlowShop & _genotype) { // scheduling vector vector < unsigned >scheduling (N); diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpCrossoverQuad.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpCrossoverQuad.h index 40d1e247d..c755664c4 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpCrossoverQuad.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpCrossoverQuad.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopOpCrossoverQuad.h" +//----------------------------------------------------------------------------- +// FlowShopOpCrossoverQuad.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, April 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopOpCrossoverQuad_h #define _FlowShopOpCrossoverQuad_h @@ -55,7 +44,7 @@ public: * @param FlowShop & _genotype1 the first parent * @param FlowShop & _genotype2 the second parent */ - bool operator () (FlowShop & _genotype1, FlowShop & _genotype2) + bool operator () (FlowShop & _genotype1, FlowShop & _genotype2) { bool oneAtLeastIsModified; diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationExchange.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationExchange.h index 13626313f..af9ded0d8 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationExchange.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationExchange.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopOpMutationExchange.h" +//----------------------------------------------------------------------------- +// FlowShopOpMutationExchange.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopOpMutationExchange_h #define _FlowShopOpMutationExchange_h @@ -55,7 +44,7 @@ public: * modifies the parent with an exchange mutation * @param FlowShop & _genotype the parent genotype (will be modified) */ - bool operator () (FlowShop & _genotype) + bool operator () (FlowShop & _genotype) { bool isModified; diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationShift.h b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationShift.h index a392c21f2..77ce5ec84 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationShift.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/FlowShopOpMutationShift.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "FlowShopOpMutationShift.h" +//----------------------------------------------------------------------------- +// FlowShopOpMutationShift.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _FlowShopOpMutationShift_h #define _FlowShopOpMutationShift_h @@ -55,7 +44,7 @@ public: * modifies the parent with a shift mutation * @param FlowShop & _genotype the parent genotype (will be modified) */ - bool operator () (FlowShop & _genotype) + bool operator () (FlowShop & _genotype) { bool isModified; int direction; diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/make_eval_FlowShop.h b/trunk/paradiseo-moeo/tutorials/lesson1/make_eval_FlowShop.h index 339ffec88..3ab17dc1d 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/make_eval_FlowShop.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/make_eval_FlowShop.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "make_eval_FlowShop.h" +//----------------------------------------------------------------------------- +// make_eval_FlowShop.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _make_eval_FlowShop_h #define _make_eval_FlowShop_h @@ -59,7 +48,7 @@ eoEvalFuncCounter < FlowShop > &do_make_eval (eoParser & _parser, FlowShopBenchmarkParser fParser (benchmarkFileName); unsigned M = fParser.getM (); unsigned N = fParser.getN (); - std::vector < std::vector < unsigned > > p = fParser.getP (); + std::vector < std::vector < unsigned > >p = fParser.getP (); std::vector < unsigned >d = fParser.getD (); // build of the initializer (a pointer, stored in the eoState) diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/make_genotype_FlowShop.h b/trunk/paradiseo-moeo/tutorials/lesson1/make_genotype_FlowShop.h index 33355f10e..771377183 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/make_genotype_FlowShop.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/make_genotype_FlowShop.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "make_genotype_FlowShop.h" +//----------------------------------------------------------------------------- +// make_genotype_FlowShop.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _make_genotype_FlowShop_h #define _make_genotype_FlowShop_h diff --git a/trunk/paradiseo-moeo/tutorials/lesson1/make_op_FlowShop.h b/trunk/paradiseo-moeo/tutorials/lesson1/make_op_FlowShop.h index be35884f3..6581838f1 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson1/make_op_FlowShop.h +++ b/trunk/paradiseo-moeo/tutorials/lesson1/make_op_FlowShop.h @@ -1,25 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -// "make_op_FlowShop.h" +//----------------------------------------------------------------------------- +// make_op_FlowShop.h +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... -// (c) OPAC Team, LIFL, March 2006 - -/* This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - Contact: Arnaud.Liefooghe@lifl.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- #ifndef _make_op_FlowShop_h #define _make_op_FlowShop_h diff --git a/trunk/paradiseo-moeo/tutorials/lesson2/Makefile.am b/trunk/paradiseo-moeo/tutorials/lesson2/Makefile.am index ee9b121d9..086363914 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson2/Makefile.am +++ b/trunk/paradiseo-moeo/tutorials/lesson2/Makefile.am @@ -1,7 +1,7 @@ noinst_PROGRAMS = Sch1 -Sch1_SOURCES = Sch1.cpp +Sch1_SOURCES = Sch1.cpp LDADD = -L$(top_builddir)/src ${EO_DIR}/src/libeo.a ${EO_DIR}/src/utils/libeoutils.a diff --git a/trunk/paradiseo-moeo/tutorials/lesson2/Sch1.cpp b/trunk/paradiseo-moeo/tutorials/lesson2/Sch1.cpp index 54255e60e..612a55128 100644 --- a/trunk/paradiseo-moeo/tutorials/lesson2/Sch1.cpp +++ b/trunk/paradiseo-moeo/tutorials/lesson2/Sch1.cpp @@ -1,9 +1,14 @@ // -*- mode: c++; c-indent-level: 4; c++-member-init-indent: 8; comment-column: 35; -*- -/* (c) OPAC Team, LIFL, October 2006 +//----------------------------------------------------------------------------- +// Sch1.cpp +// (c) OPAC Team (LIFL), Dolphin Project (INRIA), 2006 +/* + This library... - Contact: paradiseo-help@lists.gforge.inria.fr -*/ + Contact: paradiseo-help@lists.gforge.inria.fr, http://paradiseo.gforge.inria.fr + */ +//----------------------------------------------------------------------------- using namespace std; @@ -13,81 +18,92 @@ using namespace std; #include #include -/* ParadisEO-MOEO */ +/* ParadisEO-MOEO */ #include #include // Extend eoParetoFitnessTraits -class SCH1Traits : public eoParetoFitnessTraits +class SCH1Traits:public eoParetoFitnessTraits { -public : -static bool maximizing(int i) { return false; } // is the i-th objective -static unsigned nObjectives() { return 2;} // number of objectives + public:static bool maximizing (int i) + { + return false; + } // is the i-th objective + static unsigned nObjectives () + { + return 2; + } // number of objectives }; // Code decision variables -typedef eoParetoFitness SCH1Fit; +typedef eoParetoFitness < SCH1Traits > SCH1Fit; -class SCH1EO : public eoReal +class SCH1EO:public eoReal < SCH1Fit > { public: - SCH1EO(): eoReal(1) - {} -}; - -// evaluation of the individuals -class SCH1Eval : public eoEvalFunc -{ -public: - SCH1Eval(): eoEvalFunc() - {} - - void operator()(SCH1EO & _eo) { - SCH1Fit fitness; - double x = _eo[0]; - - fitness[0] = x*x; - fitness[1] = (x-2.0)*(x-2.0); - - _eo.fitness(fitness); + SCH1EO ():eoReal < SCH1Fit > (1) + { } }; -int main(int argc, char* argv[]) { +// evaluation of the individuals +class SCH1Eval:public eoEvalFunc < SCH1EO > +{ +public: + SCH1Eval ():eoEvalFunc < SCH1EO > () + { + } - unsigned POP_SIZE = 20; - unsigned MAX_GEN = 100; - double M_EPSILON = 0.01; - double P_CROSS = 0.25; - double P_MUT = 0.35; + void operator () (SCH1EO & _eo) + { + SCH1Fit fitness; + double x = _eo[0]; - // The fitness evaluation - SCH1Eval eval; + fitness[0] = x * x; + fitness[1] = (x - 2.0) * (x - 2.0); - // choose crossover and mutation - eoQuadCloneOp xover; - eoUniformMutation mutation(M_EPSILON); - - // generate initial population - eoRealVectorBounds bounds(1, 0.0, 2.0); // [0, 2] - eoRealInitBounded init(bounds); - eoPop pop(POP_SIZE, init); + _eo.fitness (fitness); + } +}; - // pass parameters to NSGA2 - moeoNSGA_II nsga2(MAX_GEN, eval, xover, P_CROSS, mutation, P_MUT); +int +main (int argc, char *argv[]) +{ - // run the algo - nsga2(pop); + unsigned POP_SIZE = 20; + unsigned MAX_GEN = 100; + double M_EPSILON = 0.01; + double P_CROSS = 0.25; + double P_MUT = 0.35; - // extract first front of the final population (this is the solution of nsga2) - moeoArchive arch; - arch.update(pop); + // The fitness evaluation + SCH1Eval eval; + + // choose crossover and mutation + eoQuadCloneOp < SCH1EO > xover; + eoUniformMutation < SCH1EO > mutation (M_EPSILON); + + // generate initial population + eoRealVectorBounds bounds (1, 0.0, 2.0); // [0, 2] + eoRealInitBounded < SCH1EO > init (bounds); + eoPop < SCH1EO > pop (POP_SIZE, init); + + // pass parameters to NSGA2 + moeoNSGA_II < SCH1EO > nsga2 (MAX_GEN, eval, xover, P_CROSS, mutation, + P_MUT); + + // run the algo + nsga2 (pop); + + // extract first front of the final population (this is the solution of nsga2) + moeoArchive < SCH1EO > arch; + arch.update (pop); + + // printing of the final archive + cout << "Final Archive\n"; + arch.sortedPrintOn (cout); + cout << endl; - // printing of the final archive - cout << "Final Archive\n"; - arch.sortedPrintOn(cout); - cout << endl; - return EXIT_SUCCESS; }