Skip to content

Commit

Permalink
Merge f11d5c9 into dfbd014
Browse files Browse the repository at this point in the history
  • Loading branch information
felixreimann committed Mar 15, 2018
2 parents dfbd014 + f11d5c9 commit 3679389
Show file tree
Hide file tree
Showing 17 changed files with 572 additions and 309 deletions.
Original file line number Diff line number Diff line change
@@ -1,35 +1,32 @@
/*******************************************************************************
* Copyright (c) 2014 Opt4J
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*******************************************************************************/


package org.opt4j.benchmarks.dtlz;

import static org.opt4j.core.config.annotations.Citation.PublicationMonth.MAY;

import org.opt4j.benchmarks.BinaryCreator;
import org.opt4j.benchmarks.BinaryToDoubleDecoder;
import org.opt4j.benchmarks.Bits;
import org.opt4j.benchmarks.DoubleCopyDecoder;
import org.opt4j.benchmarks.DoubleCreator;
import org.opt4j.benchmarks.M;
import org.opt4j.benchmarks.N;
import org.opt4j.core.config.annotations.Citation;
import org.opt4j.core.config.annotations.Info;
import org.opt4j.core.config.annotations.Order;
import org.opt4j.core.config.annotations.Required;
Expand All @@ -40,14 +37,14 @@
import org.opt4j.core.start.Constant;

/**
* Module for the DTLZ benchmarks as proposed in "Scalable multi-objective
* optimization test problems, Kalyanmoy Deb,Lothar Thiele, Marco Laumanns,
* Eckart Zitzler, Proc. Congress Evolutionary Computation Volume 1 (May 2002)".
* Module for the DTLZ benchmarks as proposed in "Scalable multi-objective optimization test problems, Kalyanmoy Deb,
* Lothar Thiele, Marco Laumanns, Eckart Zitzler, Proc. Congress Evolutionary Computation Volume 1 (May 2002)".
*
* @author lukasiewycz
*
*/
@Info("DTLZ Problem Suite. (n = m + k - 1)")
@Citation(title = "Scalable multi-objective optimization test problems", authors = "Kalyanmoy Deb, Lothar Thiele, Marco Laumanns, and Eckart Zitzler", journal = "Proceedings of the 2002 Congress on Evolutionary Computation", volume = 1, month = MAY, year = 2002, doi = "10.1109/CEC.2002.1007032")
public class DTLZModule extends ProblemModule {

@Order(0)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,47 +1,44 @@
/*******************************************************************************
* Copyright (c) 2014 Opt4J
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*******************************************************************************/

package org.opt4j.benchmarks.knapsack;

import static org.opt4j.core.config.annotations.Citation.PublicationMonth.NOVEMBER;

import org.opt4j.core.config.annotations.Citation;
import org.opt4j.core.config.annotations.File;
import org.opt4j.core.config.annotations.Info;
import org.opt4j.core.config.annotations.Required;
import org.opt4j.core.problem.ProblemModule;
import org.opt4j.core.start.Constant;

/**
* The multiobjective 0/1 ILP knapsack problem as proposed in "E. Zitzler and L.
* Thiele: Multiobjective evolutionary algorithms: A comparative case study and
* the strength Pareto approach. IEEE Transactions on Evolutionary Computation,
* vol. 3, no. 4, pp. 257-271, Nov. 1999.". Either one of the nine benchmark
* problems from Zitzler and Thiele 1999 can be selected or the number of
* knapsacks and items can be set manually.
* The multiobjective 0/1 ILP knapsack problem as proposed in "E. Zitzler and L. Thiele: Multiobjective evolutionary
* algorithms: A comparative case study and the strength Pareto approach. IEEE Transactions on Evolutionary Computation,
* vol. 3, no. 4, pp. 257-271, Nov. 1999.". Either one of the nine benchmark problems from Zitzler and Thiele 1999 can
* be selected or the number of knapsacks and items can be set manually.
*
* @see <a
* href="http://www.tik.ee.ethz.ch/sop/download/supplementary/testProblemSuite/">http://www.tik.ee.ethz.ch/sop/download/supplementary/testProblemSuite/</a>
* @see <a href=
* "http://www.tik.ee.ethz.ch/sop/download/supplementary/testProblemSuite/">http://www.tik.ee.ethz.ch/sop/download/supplementary/testProblemSuite/</a>
*
* @author reimann, lukasiewycz
*
*/
@Citation(authors = "E. Zitzler and L. Thiele", title = "Multiobjective evolutionary algorithms: A comparative case study and the strength Pareto approach", journal = "IEEE Transactions on Evolutionary Computation", volume = 3, number = 4, pageFirst = 257, pageLast = 271, month = NOVEMBER, year = 1999)
public class KnapsackModule extends ProblemModule {

protected int knapsacks = 5;
Expand Down Expand Up @@ -140,7 +137,8 @@ protected void config() {
KnapsackProfitEvaluator.class);
break;
case SAT:
bindProblem(KnapsackSATCreatorDecoder.class, KnapsackSATCreatorDecoder.class, KnapsackProfitEvaluator.class);
bindProblem(KnapsackSATCreatorDecoder.class, KnapsackSATCreatorDecoder.class,
KnapsackProfitEvaluator.class);
break;
}
addEvaluator(KnapsackOverloadEvaluator.class);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,19 @@
/*******************************************************************************
* Copyright (c) 2014 Opt4J
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*******************************************************************************/


package org.opt4j.benchmarks.wfg;

Expand All @@ -31,6 +25,8 @@
import org.opt4j.benchmarks.K;
import org.opt4j.benchmarks.M;
import org.opt4j.benchmarks.N;
import org.opt4j.core.config.annotations.Citation;
import org.opt4j.core.config.annotations.Citation.PublicationMonth;
import org.opt4j.core.config.annotations.Info;
import org.opt4j.core.config.annotations.Order;
import org.opt4j.core.config.annotations.Required;
Expand All @@ -40,14 +36,14 @@
import org.opt4j.core.problem.ProblemModule;

/**
* Module for the WFG (Walking Fish Group) benchmarks, see "A Scalable
* Multi-objective Test Problem Toolkit, Simon Huband, Luigi Barone, R. Lyndon
* While, and Philip Hingston (EMO 2005)".
* Module for the WFG (Walking Fish Group) benchmarks, see "A Scalable Multi-objective Test Problem Toolkit, Simon
* Huband, Luigi Barone, R. Lyndon While, and Philip Hingston (EMO 2005)".
*
* @author lukasiewycz
*
*/
@Info("WFG Problem Suite. The number of search variables is n=k+l.")
@Citation(title = "A Scalable Multi-objective Test Problem Toolkit", authors = "Simon Huband, Luigi Barone, R. Lyndon While, and Philip Hingston", journal = "Evolutionary Multi-Criterion Optimization", pageFirst = 280, pageLast = 295, year = 2005, month = PublicationMonth.UNKNOWN, doi = "10.1007/978-3-540-31880-4_20")
public class WFGModule extends ProblemModule {

@Order(0)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,19 @@
/*******************************************************************************
* Copyright (c) 2014 Opt4J
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
* Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
* documentation files (the "Software"), to deal in the Software without restriction, including without limitation the
* rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*******************************************************************************/


package org.opt4j.benchmarks.zdt;

Expand All @@ -30,6 +24,8 @@
import org.opt4j.benchmarks.DoubleCopyDecoder;
import org.opt4j.benchmarks.DoubleCreator;
import org.opt4j.benchmarks.N;
import org.opt4j.core.config.annotations.Citation;
import org.opt4j.core.config.annotations.Citation.PublicationMonth;
import org.opt4j.core.config.annotations.Info;
import org.opt4j.core.config.annotations.Order;
import org.opt4j.core.config.annotations.Required;
Expand All @@ -39,15 +35,15 @@
import org.opt4j.core.problem.ProblemModule;

/**
* The {@link ZDTModule} configures the ZDT benchmarks, see "Comparison of
* Multiobjective Evolutionary Algorithms: Empirical Results, Eckart Zitzler,
* Kalyanmoy Deb, Lothar Thiele, Evolutionary Computation Volume 8 , Issue 2
* (June 2000)".
* The {@link ZDTModule} configures the ZDT benchmarks, see "Comparison of Multiobjective Evolutionary Algorithms:
* Empirical Results, Eckart Zitzler, Kalyanmoy Deb, Lothar Thiele, Evolutionary Computation Volume 8 , Issue 2 (June
* 2000)".
*
* @author lukasiewycz
*
*/
@Info("ZDT Problem Suite.")
@Citation(title = "Comparison of Multiobjective Evolutionary Algorithms: Empirical Results", authors = "Eckart Zitzler, Kalyanmoy Deb, Lothar Thiele", journal = "Evolutionary Computation Volume", volume = 8, number = 2, month = PublicationMonth.JUNE, year = 2000)
public class ZDTModule extends ProblemModule {

@Order(0)
Expand Down
Loading

0 comments on commit 3679389

Please sign in to comment.