- end</code></pre></div><a class="docs-sourcelink" target="_blank" href="https://github.com/atoptima/Coluna.jl/blob/d9004b26e874c665a6254557c57f7b3ebe48067d/src/interface.jl#L12-L26">source</a></section></article><h2 id="Init"><a class="docs-heading-anchor" href="#Init">Init</a><a id="Init-1"></a><a class="docs-heading-anchor-permalink" href="#Init" title="Permalink"></a></h2><h3 id="Parameters-checking"><a class="docs-heading-anchor" href="#Parameters-checking">Parameters checking</a><a id="Parameters-checking-1"></a><a class="docs-heading-anchor-permalink" href="#Parameters-checking" title="Permalink"></a></h3><p>When Coluna starts, it initializes the algorithms chosen by the user. A most important step is to check the consistency of the parameters supplied by the user and the compatibility of the algorithms with the model that will be received (usually <code>MathProg.Reformulation</code>). Algorithms usually have many parameters and are sometimes interdependent and nested. It is crucial to ensure that the user-supplied parameters are correct and give hints to fix them otherwise.</p><p>The entry-point of the parameter consistency checking is the following method:</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Coluna.Algorithm.check_alg_parameters" href="#Coluna.Algorithm.check_alg_parameters"><code>Coluna.Algorithm.check_alg_parameters</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">check_alg_parameters(top_algo, reform) -> Vector{Tuple{Symbol, AbstractAlgorithm, Any}}</code></pre><p>Checks the consistency of the parameters of the top algorithm and its children algorithms. Returns a vector of tuples (name of the parameter, algorithm, value of the parameter) that lists all the inconsistencies found in the algorithms tree.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/atoptima/Coluna.jl/blob/d9004b26e874c665a6254557c57f7b3ebe48067d/src/Algorithm/interface.jl#L166-L172">source</a></section></article><p>Developer of an algorithm must implement the following methods:</p><div class="admonition is-warning"><header class="admonition-header">Missing docstring.</header><div class="admonition-body"><p>Missing docstring for <code>Coluna.Algorithm.check_parameter</code>. Check Documenter's build log for details.</p></div></div><h3 id="Units-usage"><a class="docs-heading-anchor" href="#Units-usage">Units usage</a><a id="Units-usage-1"></a><a class="docs-heading-anchor-permalink" href="#Units-usage" title="Permalink"></a></h3><div class="admonition is-warning"><header class="admonition-header">Missing docstring.</header><div class="admonition-body"><p>Missing docstring for <code>Coluna.AlgoAPI.get_child_algorithms</code>. Check Documenter's build log for details.</p></div></div><div class="admonition is-warning"><header class="admonition-header">Missing docstring.</header><div class="admonition-body"><p>Missing docstring for <code>Coluna.AlgoAPI.get_units_usage</code>. Check Documenter's build log for details.</p></div></div><h2 id="Run"><a class="docs-heading-anchor" href="#Run">Run</a><a id="Run-1"></a><a class="docs-heading-anchor-permalink" href="#Run" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Coluna.AlgoAPI.run!" href="#Coluna.AlgoAPI.run!"><code>Coluna.AlgoAPI.run!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">run!(algo::AbstractAlgorithm, env, model, input)</code></pre><p>Default method to call an algorithm.</p></div><a class="docs-sourcelink" target="_blank" href="https://github.com/atoptima/Coluna.jl/blob/d9004b26e874c665a6254557c57f7b3ebe48067d/src/interface.jl#L28-L32">source</a></section></article><script type="module">import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs';
0 commit comments