1 | using HeuristicLab.PluginInfrastructure;
|
---|
2 |
|
---|
3 | namespace HeuristicLab.Algorithms.NSGA3
|
---|
4 | {
|
---|
5 | [Plugin("HeuristicLab.Algorithms.NSGA3", "Provides the reference point based, non-dominated sorting genetic algorithm III (NSGA-III) as described in Deb et al. 2013. An Evolutionary Many-Objective Optimization Algorithm Using Reference Point Based Non-dominated Sorting Approach. IEEE Transactions on Evolutionary Computation, 18(4), pp. 577-601.", "3.3.16.17198")]
|
---|
6 | [PluginFile("HeuristicLab.Algorithms.NSGA3-3.3.dll", PluginFileType.Assembly)] // each plugin represents a collection of files. The minimum is one file; the assembly.
|
---|
7 |
|
---|
8 | // Usually your plugin references other HeuristicLab dlls. If you are referencing files (e.g. assemblies)
|
---|
9 | // from another plugin the corresponding plugin should be added as a dependency.
|
---|
10 | // Usually, if this information is incorrect you will still be able to use you plugin, but HL functionality
|
---|
11 | // which uses plugin dependency resolution will not work correctly. For instance if plugin dependencies are
|
---|
12 | // not correct then your plugin cannot be used on HeuristicLab.Hive
|
---|
13 | [PluginDependency("HeuristicLab.Collections", "3.3")]
|
---|
14 | [PluginDependency("HeuristicLab.Common", "3.3")]
|
---|
15 | [PluginDependency("HeuristicLab.Core", "3.3")]
|
---|
16 | [PluginDependency("HeuristicLab.Data", "3.3")]
|
---|
17 | [PluginDependency("HeuristicLab.Encodings.BinaryVectorEncoding", "3.3")]
|
---|
18 | [PluginDependency("HeuristicLab.Encodings.RealVectorEncoding", "3.3")]
|
---|
19 | [PluginDependency("HeuristicLab.Operators", "3.3")]
|
---|
20 | [PluginDependency("HeuristicLab.Optimization", "3.3")]
|
---|
21 | [PluginDependency("HeuristicLab.Parameters", "3.3")]
|
---|
22 | [PluginDependency("HeuristicLab.Persistence", "3.3")]
|
---|
23 | [PluginDependency("HeuristicLab.Problems.Binary", "3.3")]
|
---|
24 | [PluginDependency("HeuristicLab.Random", "3.3")]
|
---|
25 |
|
---|
26 | // HL plugin infrastructure discovers plugins on startup by trying to load all .dll and .exe files and looking for
|
---|
27 | // classes deriving from PluginBase. The meta-information for the plugin class is specified in the attributes
|
---|
28 | // above, and used by plugin infrastructure primarily for plugin dependency resolution.
|
---|
29 |
|
---|
30 | // Steps:
|
---|
31 | // (1) Check out HL source code (e.g. the trunk version)
|
---|
32 | // (2) Build external libraries HeuristicLab.ExtLibs.sln using the Build.cmd (in the path of the HL source code)
|
---|
33 | // (3) Build HeuristicLab 3.3.sln using the Build.cmd
|
---|
34 | // (4) Build this project. The output path for binaries is set to "".
|
---|
35 | // this assumes you have the following folder structure
|
---|
36 | // <ROOT>
|
---|
37 | // |..hl
|
---|
38 | // |..branches
|
---|
39 | // | |..Templates
|
---|
40 | // | |..EmptyPlugin
|
---|
41 | // |..trunk
|
---|
42 | // |.. bin
|
---|
43 |
|
---|
44 | // (5) Check that the output file has been added to the HL binaries folder (hl/trunk/bin/EmptyPlugin.dll)
|
---|
45 | // (6) Start hl/trunk/bin/HeuristicLab.exe and open the "Plugin Manager".
|
---|
46 | // Make sure your EmptyPlugin appears in the list of loaded plugins
|
---|
47 | public class Plugin : PluginBase
|
---|
48 | {
|
---|
49 | }
|
---|
50 | } |
---|