macop.html 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388
  1. <!DOCTYPE html>
  2. <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
  3. <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
  4. <head>
  5. <meta charset="utf-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Documentation &mdash; macop v1.0.0 documentation</title>
  8. <script type="text/javascript" src="_static/js/modernizr.min.js"></script>
  9. <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
  10. <script type="text/javascript" src="_static/jquery.js"></script>
  11. <script type="text/javascript" src="_static/underscore.js"></script>
  12. <script type="text/javascript" src="_static/doctools.js"></script>
  13. <script type="text/javascript" src="_static/language_data.js"></script>
  14. <script type="text/javascript" src="_static/js/theme.js"></script>
  15. <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  16. <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
  17. <link rel="index" title="Index" href="genindex.html" />
  18. <link rel="search" title="Search" href="search.html" />
  19. <link rel="next" title="macop.algorithms.Algorithm" href="macop/macop.algorithms.Algorithm.html" />
  20. <link rel="prev" title="Description" href="description.html" />
  21. </head>
  22. <body class="wy-body-for-nav">
  23. <div class="wy-grid-for-nav">
  24. <nav data-toggle="wy-nav-shift" class="wy-nav-side">
  25. <div class="wy-side-scroll">
  26. <div class="wy-side-nav-search" >
  27. <a href="index.html" class="icon icon-home"> macop
  28. </a>
  29. <div class="version">
  30. 1.0.0
  31. </div>
  32. <div role="search">
  33. <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
  34. <input type="text" name="q" placeholder="Search docs" />
  35. <input type="hidden" name="check_keywords" value="yes" />
  36. <input type="hidden" name="area" value="default" />
  37. </form>
  38. </div>
  39. </div>
  40. <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
  41. <p class="caption"><span class="caption-text">Contents:</span></p>
  42. <ul class="current">
  43. <li class="toctree-l1"><a class="reference internal" href="description.html">Description</a></li>
  44. <li class="toctree-l1 current"><a class="current reference internal" href="#">Documentation</a><ul>
  45. <li class="toctree-l2"><a class="reference internal" href="#macop">macop</a></li>
  46. <li class="toctree-l2"><a class="reference internal" href="#macop-algorithms">macop.algorithms</a><ul>
  47. <li class="toctree-l3"><a class="reference internal" href="macop/macop.algorithms.Algorithm.html">macop.algorithms.Algorithm</a></li>
  48. <li class="toctree-l3"><a class="reference internal" href="macop/macop.algorithms.mono.IteratedLocalSearch.html">macop.algorithms.mono.IteratedLocalSearch</a></li>
  49. <li class="toctree-l3"><a class="reference internal" href="macop/macop.algorithms.mono.LocalSearch.html">macop.algorithms.mono.LocalSearch</a></li>
  50. <li class="toctree-l3"><a class="reference internal" href="macop/macop.algorithms.multi.MOEAD.html">macop.algorithms.multi.MOEAD</a></li>
  51. <li class="toctree-l3"><a class="reference internal" href="macop/macop.algorithms.multi.MOSubProblem.html">macop.algorithms.multi.MOSubProblem</a></li>
  52. </ul>
  53. </li>
  54. <li class="toctree-l2"><a class="reference internal" href="#macop-callbacks">macop.callbacks</a><ul>
  55. <li class="toctree-l3"><a class="reference internal" href="macop/macop.callbacks.BasicCheckpoint.html">macop.callbacks.BasicCheckpoint</a></li>
  56. <li class="toctree-l3"><a class="reference internal" href="macop/macop.callbacks.MultiCheckpoint.html">macop.callbacks.MultiCheckpoint</a></li>
  57. <li class="toctree-l3"><a class="reference internal" href="macop/macop.callbacks.ParetoCheckpoint.html">macop.callbacks.ParetoCheckpoint</a></li>
  58. <li class="toctree-l3"><a class="reference internal" href="macop/macop.callbacks.UCBCheckpoint.html">macop.callbacks.UCBCheckpoint</a></li>
  59. <li class="toctree-l3"><a class="reference internal" href="macop/macop.callbacks.Callback.html">macop.callbacks.Callback</a></li>
  60. </ul>
  61. </li>
  62. <li class="toctree-l2"><a class="reference internal" href="#macop-evaluators">macop.evaluators</a><ul>
  63. <li class="toctree-l3"><a class="reference internal" href="macop/macop.evaluators.EvaluatorExample.html">macop.evaluators.EvaluatorExample</a></li>
  64. </ul>
  65. </li>
  66. <li class="toctree-l2"><a class="reference internal" href="#macop-operators">macop.operators</a><ul>
  67. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.crossovers.Crossover.html">macop.operators.crossovers.Crossover</a></li>
  68. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.crossovers.RandomSplitCrossover.html">macop.operators.crossovers.RandomSplitCrossover</a></li>
  69. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.crossovers.SimpleCrossover.html">macop.operators.crossovers.SimpleCrossover</a></li>
  70. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.mutators.Mutation.html">macop.operators.mutators.Mutation</a></li>
  71. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.mutators.SimpleBinaryMutation.html">macop.operators.mutators.SimpleBinaryMutation</a></li>
  72. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.mutators.SimpleMutation.html">macop.operators.mutators.SimpleMutation</a></li>
  73. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.policies.Policy.html">macop.operators.policies.Policy</a></li>
  74. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.policies.RandomPolicy.html">macop.operators.policies.RandomPolicy</a></li>
  75. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.policies.UCBPolicy.html">macop.operators.policies.UCBPolicy</a></li>
  76. <li class="toctree-l3"><a class="reference internal" href="macop/macop.operators.Operator.html">macop.operators.Operator</a></li>
  77. </ul>
  78. </li>
  79. <li class="toctree-l2"><a class="reference internal" href="#macop-solution">macop.solution</a><ul>
  80. <li class="toctree-l3"><a class="reference internal" href="macop/macop.solutions.BinarySolution.html">macop.solutions.BinarySolution</a></li>
  81. <li class="toctree-l3"><a class="reference internal" href="macop/macop.solutions.CombinatoryIntegerSolution.html">macop.solutions.CombinatoryIntegerSolution</a></li>
  82. <li class="toctree-l3"><a class="reference internal" href="macop/macop.solutions.IntegerSolution.html">macop.solutions.IntegerSolution</a></li>
  83. <li class="toctree-l3"><a class="reference internal" href="macop/macop.solutions.Solution.html">macop.solutions.Solution</a></li>
  84. </ul>
  85. </li>
  86. </ul>
  87. </li>
  88. <li class="toctree-l1"><a class="reference internal" href="examples.html">Some examples</a></li>
  89. <li class="toctree-l1"><a class="reference internal" href="contributing.html">Contributing</a></li>
  90. </ul>
  91. </div>
  92. </div>
  93. </nav>
  94. <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
  95. <nav class="wy-nav-top" aria-label="top navigation">
  96. <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
  97. <a href="index.html">macop</a>
  98. </nav>
  99. <div class="wy-nav-content">
  100. <div class="rst-content">
  101. <div role="navigation" aria-label="breadcrumbs navigation">
  102. <ul class="wy-breadcrumbs">
  103. <li><a href="index.html">Docs</a> &raquo;</li>
  104. <li>Documentation</li>
  105. <li class="wy-breadcrumbs-aside">
  106. <a href="https://github.com/prise-3d/macop/blob/master/docs/source/macop.rst" class="fa fa-github"> Edit on GitHub</a>
  107. </li>
  108. </ul>
  109. <hr/>
  110. </div>
  111. <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
  112. <div itemprop="articleBody">
  113. <div class="section" id="documentation">
  114. <h1>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">¶</a></h1>
  115. <div class="section" id="macop">
  116. <h2>macop<a class="headerlink" href="#macop" title="Permalink to this headline">¶</a></h2>
  117. </div>
  118. <div class="section" id="macop-algorithms">
  119. <h2>macop.algorithms<a class="headerlink" href="#macop-algorithms" title="Permalink to this headline">¶</a></h2>
  120. <table class="longtable docutils align-default">
  121. <colgroup>
  122. <col style="width: 10%" />
  123. <col style="width: 90%" />
  124. </colgroup>
  125. <tbody>
  126. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.algorithms.Algorithm.html#module-macop.algorithms.Algorithm" title="macop.algorithms.Algorithm"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.algorithms.Algorithm</span></code></a></p></td>
  127. <td><p>Abstract Algorithm class used as basic algorithm implementation with some specific initialization</p></td>
  128. </tr>
  129. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.algorithms.mono.IteratedLocalSearch.html#module-macop.algorithms.mono.IteratedLocalSearch" title="macop.algorithms.mono.IteratedLocalSearch"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.algorithms.mono.IteratedLocalSearch</span></code></a></p></td>
  130. <td><p>Iterated Local Search Algorithm implementation</p></td>
  131. </tr>
  132. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.algorithms.mono.LocalSearch.html#module-macop.algorithms.mono.LocalSearch" title="macop.algorithms.mono.LocalSearch"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.algorithms.mono.LocalSearch</span></code></a></p></td>
  133. <td><p>Local Search algorithm</p></td>
  134. </tr>
  135. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.algorithms.multi.MOEAD.html#module-macop.algorithms.multi.MOEAD" title="macop.algorithms.multi.MOEAD"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.algorithms.multi.MOEAD</span></code></a></p></td>
  136. <td><p>Multi-Ojective Evolutionary Algorithm with Scalar Decomposition algorithm</p></td>
  137. </tr>
  138. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.algorithms.multi.MOSubProblem.html#module-macop.algorithms.multi.MOSubProblem" title="macop.algorithms.multi.MOSubProblem"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.algorithms.multi.MOSubProblem</span></code></a></p></td>
  139. <td><p>MOEAD sub problem algorithm class</p></td>
  140. </tr>
  141. </tbody>
  142. </table>
  143. </div>
  144. <div class="section" id="macop-callbacks">
  145. <h2>macop.callbacks<a class="headerlink" href="#macop-callbacks" title="Permalink to this headline">¶</a></h2>
  146. <table class="longtable docutils align-default">
  147. <colgroup>
  148. <col style="width: 10%" />
  149. <col style="width: 90%" />
  150. </colgroup>
  151. <tbody>
  152. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.callbacks.BasicCheckpoint.html#module-macop.callbacks.BasicCheckpoint" title="macop.callbacks.BasicCheckpoint"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.callbacks.BasicCheckpoint</span></code></a></p></td>
  153. <td><p>Basic Checkpoint class implementation</p></td>
  154. </tr>
  155. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.callbacks.MultiCheckpoint.html#module-macop.callbacks.MultiCheckpoint" title="macop.callbacks.MultiCheckpoint"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.callbacks.MultiCheckpoint</span></code></a></p></td>
  156. <td><p>Multi Checkpoint class implementation</p></td>
  157. </tr>
  158. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.callbacks.ParetoCheckpoint.html#module-macop.callbacks.ParetoCheckpoint" title="macop.callbacks.ParetoCheckpoint"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.callbacks.ParetoCheckpoint</span></code></a></p></td>
  159. <td><p>Pareto front Checkpoint class implementation</p></td>
  160. </tr>
  161. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.callbacks.UCBCheckpoint.html#module-macop.callbacks.UCBCheckpoint" title="macop.callbacks.UCBCheckpoint"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.callbacks.UCBCheckpoint</span></code></a></p></td>
  162. <td><p>UCB policy Checkpoint class implementation</p></td>
  163. </tr>
  164. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.callbacks.Callback.html#module-macop.callbacks.Callback" title="macop.callbacks.Callback"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.callbacks.Callback</span></code></a></p></td>
  165. <td><p>Abstract Checkpoint class</p></td>
  166. </tr>
  167. </tbody>
  168. </table>
  169. </div>
  170. <div class="section" id="macop-evaluators">
  171. <h2>macop.evaluators<a class="headerlink" href="#macop-evaluators" title="Permalink to this headline">¶</a></h2>
  172. <table class="longtable docutils align-default">
  173. <colgroup>
  174. <col style="width: 10%" />
  175. <col style="width: 90%" />
  176. </colgroup>
  177. <tbody>
  178. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.evaluators.EvaluatorExample.html#module-macop.evaluators.EvaluatorExample" title="macop.evaluators.EvaluatorExample"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.evaluators.EvaluatorExample</span></code></a></p></td>
  179. <td><p>Python evaluator function example</p></td>
  180. </tr>
  181. </tbody>
  182. </table>
  183. </div>
  184. <div class="section" id="macop-operators">
  185. <h2>macop.operators<a class="headerlink" href="#macop-operators" title="Permalink to this headline">¶</a></h2>
  186. <table class="longtable docutils align-default">
  187. <colgroup>
  188. <col style="width: 10%" />
  189. <col style="width: 90%" />
  190. </colgroup>
  191. <tbody>
  192. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.operators.crossovers.Crossover.html#module-macop.operators.crossovers.Crossover" title="macop.operators.crossovers.Crossover"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.crossovers.Crossover</span></code></a></p></td>
  193. <td><p>Abstract Crossover class</p></td>
  194. </tr>
  195. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.operators.crossovers.RandomSplitCrossover.html#module-macop.operators.crossovers.RandomSplitCrossover" title="macop.operators.crossovers.RandomSplitCrossover"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.crossovers.RandomSplitCrossover</span></code></a></p></td>
  196. <td><p>Crossover implementation which generated new solution by randomly splitting best solution and current solution</p></td>
  197. </tr>
  198. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.operators.crossovers.SimpleCrossover.html#module-macop.operators.crossovers.SimpleCrossover" title="macop.operators.crossovers.SimpleCrossover"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.crossovers.SimpleCrossover</span></code></a></p></td>
  199. <td><p>Crossover implementation which generated new solution by splitting at mean size best solution and current solution</p></td>
  200. </tr>
  201. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.operators.mutators.Mutation.html#module-macop.operators.mutators.Mutation" title="macop.operators.mutators.Mutation"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.mutators.Mutation</span></code></a></p></td>
  202. <td><p>Abstract Mutation class</p></td>
  203. </tr>
  204. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.operators.mutators.SimpleBinaryMutation.html#module-macop.operators.mutators.SimpleBinaryMutation" title="macop.operators.mutators.SimpleBinaryMutation"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.mutators.SimpleBinaryMutation</span></code></a></p></td>
  205. <td><p>Mutation implementation for binary solution, swap bit randomly from solution</p></td>
  206. </tr>
  207. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.operators.mutators.SimpleMutation.html#module-macop.operators.mutators.SimpleMutation" title="macop.operators.mutators.SimpleMutation"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.mutators.SimpleMutation</span></code></a></p></td>
  208. <td><p>Mutation implementation for binary solution, swap two bits randomly from solution</p></td>
  209. </tr>
  210. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.operators.policies.Policy.html#module-macop.operators.policies.Policy" title="macop.operators.policies.Policy"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.policies.Policy</span></code></a></p></td>
  211. <td><p>Abstract class which is used for applying strategy when selecting and applying operator</p></td>
  212. </tr>
  213. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.operators.policies.RandomPolicy.html#module-macop.operators.policies.RandomPolicy" title="macop.operators.policies.RandomPolicy"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.policies.RandomPolicy</span></code></a></p></td>
  214. <td><p>Policy class implementation which is used for selecting operator randomly</p></td>
  215. </tr>
  216. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.operators.policies.UCBPolicy.html#module-macop.operators.policies.UCBPolicy" title="macop.operators.policies.UCBPolicy"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.policies.UCBPolicy</span></code></a></p></td>
  217. <td><p>Policy class implementation which is used for selecting operator using Upper Confidence Bound</p></td>
  218. </tr>
  219. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.operators.Operator.html#module-macop.operators.Operator" title="macop.operators.Operator"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.operators.Operator</span></code></a></p></td>
  220. <td><p>Abstract Operator class</p></td>
  221. </tr>
  222. </tbody>
  223. </table>
  224. </div>
  225. <div class="section" id="macop-solution">
  226. <h2>macop.solution<a class="headerlink" href="#macop-solution" title="Permalink to this headline">¶</a></h2>
  227. <table class="longtable docutils align-default">
  228. <colgroup>
  229. <col style="width: 10%" />
  230. <col style="width: 90%" />
  231. </colgroup>
  232. <tbody>
  233. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.solutions.BinarySolution.html#module-macop.solutions.BinarySolution" title="macop.solutions.BinarySolution"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.solutions.BinarySolution</span></code></a></p></td>
  234. <td><p>Binary solution class implementation</p></td>
  235. </tr>
  236. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.solutions.CombinatoryIntegerSolution.html#module-macop.solutions.CombinatoryIntegerSolution" title="macop.solutions.CombinatoryIntegerSolution"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.solutions.CombinatoryIntegerSolution</span></code></a></p></td>
  237. <td><p>Combinatory integer solution class implementation</p></td>
  238. </tr>
  239. <tr class="row-odd"><td><p><a class="reference internal" href="macop/macop.solutions.IntegerSolution.html#module-macop.solutions.IntegerSolution" title="macop.solutions.IntegerSolution"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.solutions.IntegerSolution</span></code></a></p></td>
  240. <td><p>Integer solution class implementation</p></td>
  241. </tr>
  242. <tr class="row-even"><td><p><a class="reference internal" href="macop/macop.solutions.Solution.html#module-macop.solutions.Solution" title="macop.solutions.Solution"><code class="xref py py-obj docutils literal notranslate"><span class="pre">macop.solutions.Solution</span></code></a></p></td>
  243. <td><p>Abstract solution class</p></td>
  244. </tr>
  245. </tbody>
  246. </table>
  247. </div>
  248. </div>
  249. </div>
  250. </div>
  251. <footer>
  252. <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
  253. <a href="macop/macop.algorithms.Algorithm.html" class="btn btn-neutral float-right" title="macop.algorithms.Algorithm" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
  254. <a href="description.html" class="btn btn-neutral float-left" title="Description" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
  255. </div>
  256. <hr/>
  257. <div role="contentinfo">
  258. <p>
  259. &copy; Copyright 2020, Jérôme BUISINE
  260. </p>
  261. </div>
  262. Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
  263. </footer>
  264. </div>
  265. </div>
  266. </section>
  267. </div>
  268. <script type="text/javascript">
  269. jQuery(function () {
  270. SphinxRtdTheme.Navigation.enable(true);
  271. });
  272. </script>
  273. </body>
  274. </html>