Files
ortools-clone/docs/cpp_algorithms/knapsack__solver_8h_source.html

158 lines
145 KiB
HTML
Raw Normal View History

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OR-Tools</title>
<meta http-equiv="Content-Type" content="text/html;"/>
<meta charset="utf-8"/>
<!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
<link rel="stylesheet" type="text/css" href="ortools.css" title="default" media="screen,print" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div id="banner-container">
<div id="banner">
2019-09-12 09:22:44 +02:00
<span id="sfml">Google OR-Tools 7.4</span>
</div>
</div>
2019-08-07 18:01:08 -07:00
<div id="content" style="width: 100%; overflow: hidden;">
<div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
2019-08-12 09:16:03 -07:00
<h2>C++ Reference</h2>
2019-08-07 18:01:08 -07:00
<ul>
<li><a href="../cpp_algorithms/annotated.html">Algorithms</a></li>
2019-08-12 09:16:03 -07:00
<li><a href="../cpp_sat/annotated.html">CP-SAT</a></li>
2019-08-07 18:01:08 -07:00
<li><a href="../cpp_graph/annotated.html">Graph</a></li>
<li><a href="../cpp_routing/annotated.html">Routing</a></li>
<li><a href="../cpp_linear/annotated.html">Linear solver</a></li>
</ul>
</div>
<div id="content">
2019-08-07 18:01:08 -07:00
<div align="center">
<h1 style="color: #145A32;">C++ Reference: Algorithms</h1>
</div>
2019-09-12 09:22:44 +02:00
<!-- Generated by Doxygen 1.8.15 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
2019-07-15 17:42:24 -07:00
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
2019-08-07 18:01:08 -07:00
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_a7cc1eeded8f693d0da6c729bc88c45a.html">ortools</a></li><li class="navelem"><a class="el" href="dir_80dda7a75b0dfcf996988638a63eb03a.html">algorithms</a></li> </ul>
2019-07-12 11:43:12 -07:00
</div>
2019-08-07 18:01:08 -07:00
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">knapsack_solver.h</div> </div>
</div><!--header-->
<div class="contents">
2019-09-12 09:22:44 +02:00
<a href="knapsack__solver_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// Copyright 2010-2018 Google LLC</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// you may not use this file except in compliance with the License.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// You may obtain a copy of the License at</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#ifndef OR_TOOLS_ALGORITHMS_KNAPSACK_SOLVER_H_</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#define OR_TOOLS_ALGORITHMS_KNAPSACK_SOLVER_H_</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#include &lt;math.h&gt;</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &quot;absl/memory/memory.h&quot;</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &quot;ortools/base/basictypes.h&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;ortools/base/integral_types.h&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;ortools/base/logging.h&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &quot;ortools/base/macros.h&quot;</span></div><div
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_afccfe4a5a27c2c805016d82886795da9"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#afccfe4a5a27c2c805016d82886795da9">operations_research::KnapsackCapacityPropagator::GetNextItemId</a></div><div class="ttdeci">int GetNextItemId() const override</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00522">knapsack_solver.h:522</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306ecaa020f211a1ff184e712aa4f372d6ea34"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306ecaa020f211a1ff184e712aa4f372d6ea34">operations_research::KnapsackSolver::KNAPSACK_64ITEMS_SOLVER</a></div><div class="ttdoc">Optimized method for single dimension small problems.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00142">knapsack_solver.h:142</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_accafea74a5951ec85cd803541f3ab3fe"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#accafea74a5951ec85cd803541f3ab3fe">operations_research::KnapsackPropagator::~KnapsackPropagator</a></div><div class="ttdeci">virtual ~KnapsackPropagator()</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a9b748c5fb5e1da5da53026ffb91db51f"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a9b748c5fb5e1da5da53026ffb91db51f">operations_research::KnapsackPropagator::state</a></div><div class="ttdeci">const KnapsackState &amp; state() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00481">knapsack_solver.h:481</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html_a41f9430cc0090383e7797a88c1dbacbc"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html#a41f9430cc0090383e7797a88c1dbacbc">operations_research::KnapsackState::KnapsackState</a></div><div class="ttdeci">KnapsackState()</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_ab7f8c7e53d1f8f72cb6b1a2bffae2407"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#ab7f8c7e53d1f8f72cb6b1a2bffae2407">operations_research::KnapsackSearchNode::set_profit_upper_bound</a></div><div class="ttdeci">void set_profit_upper_bound(int64 profit)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00334">knapsack_solver.h:334</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a0dbb4d48acf17b899ecf83ea7e38fdc6"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a0dbb4d48acf17b899ecf83ea7e38fdc6">operations_research::KnapsackPropagator::profit_lower_bound</a></div><div class="ttdeci">int64 profit_lower_bound() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00451">knapsack_solver.h:451</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_ab7f8c7e53d1f8f72cb6b1a2bffae2407"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#ab7f8c7e53d1f8f72cb6b1a2bffae2407">operations_research::KnapsackPropagator::set_profit_upper_bound</a></div><div class="ttdeci">void set_profit_upper_bound(int64 profit)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00485">knapsack_solver.h:485</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_ade05a213d54a2045bab20c41e56a2144"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#ade05a213d54a2045bab20c41e56a2144">operations_research::KnapsackPropagator::profit_upper_bound</a></div><div class="ttdeci">int64 profit_upper_bound() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00452">knapsack_solver.h:452</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_aa5b8e0a03c593bfc3cef0ba8d178844f"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#aa5b8e0a03c593bfc3cef0ba8d178844f">operations_research::KnapsackSolver::set_use_reduction</a></div><div class="ttdeci">void set_use_reduction(bool use_reduction)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00211">knapsack_solver.h:211</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_af4b38123d3654471f0868774c5ff877d"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#af4b38123d3654471f0868774c5ff877d">operations_research::KnapsackPropagator::Update</a></div><div class="ttdeci">bool Update(bool revert, const KnapsackAssignment &amp;assignment)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_abfd4cb3faa2f1d6840b8123765fa2fc4"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#abfd4cb3faa2f1d6840b8123765fa2fc4">operations_research::KnapsackGenericSolver::best_solution</a></div><div class="ttdeci">bool best_solution(int item_id) const override</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00620">knapsack_solver.h:620</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_afe9938cf4bbeb06ed8985c37646433fd"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#afe9938cf4bbeb06ed8985c37646433fd">operations_research::KnapsackSearchNode::parent</a></div><div class="ttdeci">const KnapsackSearchNode *const parent() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00327">knapsack_solver.h:327</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_a3cde41b7fa0c9734783a562aadd9ef8c"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#a3cde41b7fa0c9734783a562aadd9ef8c">operations_research::KnapsackCapacityPropagator::UpdatePropagator</a></div><div class="ttdeci">bool UpdatePropagator(bool revert, const KnapsackAssignment &amp;assignment) override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306ecae2ce6e36a247621de398e875d5feb575"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306ecae2ce6e36a247621de398e875d5feb575">operations_research::KnapsackSolver::KNAPSACK_MULTIDIMENSION_CBC_MIP_SOLVER</a></div><div class="ttdoc">CBC Based Solver.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00158">knapsack_solver.h:158</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306ec"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306ec">operations_research::KnapsackSolver::SolverType</a></div><div class="ttdeci">SolverType</div><div class="ttdoc">Enum controlling which underlying algorithm is used.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00127">knapsack_solver.h:127</a></div></div>
<div class="ttc" id="namespaceoperations__research_html_ada7d9b46f657c6053a197273a85043a7"><div class="ttname"><a href="namespaceoperations__research.html#ada7d9b46f657c6053a197273a85043a7">operations_research::KnapsackItemPtr</a></div><div class="ttdeci">KnapsackItem * KnapsackItemPtr</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00312">knapsack_solver.h:312</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a69d95c916b31aeb94a63596cabb507dd"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a69d95c916b31aeb94a63596cabb507dd">operations_research::KnapsackPropagator::set_profit_lower_bound</a></div><div class="ttdeci">void set_profit_lower_bound(int64 profit)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00484">knapsack_solver.h:484</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html_a5c677592ee5e7312c64475ebae949eab"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html#a5c677592ee5e7312c64475ebae949eab">operations_research::KnapsackState::GetNumberOfItems</a></div><div class="ttdeci">int GetNumberOfItems() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00408">knapsack_solver.h:408</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html">operations_research::KnapsackSearchNode</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00322">knapsack_solver.h:322</a></div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackItem_html_a64ae40793ade89d800a8c5646d2980fc"><div class="ttname"><a href="structoperations__research_1_1KnapsackItem.html#a64ae40793ade89d800a8c5646d2980fc">operations_research::KnapsackItem::id</a></div><div class="ttdeci">const int id</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00308">knapsack_solver.h:308</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_a5c677592ee5e7312c64475ebae949eab"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#a5c677592ee5e7312c64475ebae949eab">operations_research::KnapsackGenericSolver::GetNumberOfItems</a></div><div class="ttdeci">int GetNumberOfItems() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00605">knapsack_solver.h:605</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_a2a25594d97a0a532f9d814bdc6dea380"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#a2a25594d97a0a532f9d814bdc6dea380">operations_research::KnapsackGenericSolver::~KnapsackGenericSolver</a></div><div class="ttdeci">~KnapsackGenericSolver() override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_a388481288bf0c9bdc7e3583217150962"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#a388481288bf0c9bdc7e3583217150962">operations_research::KnapsackSearchNode::set_current_profit</a></div><div class="ttdeci">void set_current_profit(int64 profit)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00331">knapsack_solver.h:331</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_af41d4ebb02ec2b735851141b01f4769a"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#af41d4ebb02ec2b735851141b01f4769a">operations_research::KnapsackSearchNode::current_profit</a></div><div class="ttdeci">int64 current_profit() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00330">knapsack_solver.h:330</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html">operations_research::KnapsackSearchPath</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00376">knapsack_solver.h:376</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html">operations_research::KnapsackGenericSolver</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00596">knapsack_solver.h:596</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a89892382a4f8fa0a4baeb4a3451b8b32"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a89892382a4f8fa0a4baeb4a3451b8b32">operations_research::KnapsackSolver::Init</a></div><div class="ttdeci">void Init(const std::vector&lt; int64 &gt; &amp;profits, const std::vector&lt; std::vector&lt; int64 &gt; &gt; &amp;weights, const std::vector&lt; int64 &gt; &amp;capacities)</div><div class="ttdoc">Initializes the solver and enters the problem to be solved.</div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackItem_html_a3817595c1fbe521b9f18b15d9b90b1b6"><div class="ttname"><a href="structoperations__research_1_1KnapsackItem.html#a3817595c1fbe521b9f18b15d9b90b1b6">operations_research::KnapsackItem::GetEfficiency</a></div><div class="ttdeci">double GetEfficiency(int64 profit_max) const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00300">knapsack_solver.h:300</a></div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackItem_html_a965717cd1b82709b7fc2d04aa3f8796d"><div class="ttname"><a href="structoperations__research_1_1KnapsackItem.html#a965717cd1b82709b7fc2d04aa3f8796d">operations_research::KnapsackItem::weight</a></div><div class="ttdeci">const int64 weight</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00309">knapsack_solver.h:309</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_afca45ec0f9ea0c2b36804720f5fa8655"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#afca45ec0f9ea0c2b36804720f5fa8655">operations_research::KnapsackSearchNode::assignment</a></div><div class="ttdeci">const KnapsackAssignment &amp; assignment() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00328">knapsack_solver.h:328</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html">operations_research::KnapsackSolver</a></div><div class="ttdoc">This library solves knapsack problems.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00120">knapsack_solver.h:120</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a883cd053b1e7322727eb9e19940f69f6"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a883cd053b1e7322727eb9e19940f69f6">operations_research::KnapsackPropagator::InitPropagator</a></div><div class="ttdeci">virtual void InitPropagator()=0</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_a94dca4e57f87ba2a9e3b995c267c0821"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#a94dca4e57f87ba2a9e3b995c267c0821">operations_research::KnapsackSearchNode::next_item_id</a></div><div class="ttdeci">int next_item_id() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00336">knapsack_solver.h:336</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_ae2545020be753ee6a66c277daac41784"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#ae2545020be753ee6a66c277daac41784">operations_research::KnapsackCapacityPropagator::InitPropagator</a></div><div class="ttdeci">void InitPropagator() override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_a9921c39ed90a9cd32301ee0fee9491cb"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#a9921c39ed90a9cd32301ee0fee9491cb">operations_research::KnapsackCapacityPropagator::ComputeProfitBounds</a></div><div class="ttdeci">void ComputeProfitBounds() override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a6b46c35c8977efde66ae7ad97423bdf2"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a6b46c35c8977efde66ae7ad97423bdf2">operations_research::KnapsackSolver::KnapsackSolver</a></div><div class="ttdeci">KnapsackSolver(const std::string &amp;solver_name)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306eca2a4e77eec4f386d17001e7285e812a0b"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306eca2a4e77eec4f386d17001e7285e812a0b">operations_research::KnapsackSolver::KNAPSACK_MULTIDIMENSION_BRANCH_AND_BOUND_SOLVER</a></div><div class="ttdoc">Generic Solver.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00166">knapsack_solver.h:166</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a57d88f584d14b161580550918c8fbf3b"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a57d88f584d14b161580550918c8fbf3b">operations_research::KnapsackSolver::BestSolutionContains</a></div><div class="ttdeci">bool BestSolutionContains(int item_id) const</div><div class="ttdoc">Returns true if the item 'item_id' is packed in the optimal knapsack.</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_ad596c251b64c28e1e5b34e9de44b2dd7"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#ad596c251b64c28e1e5b34e9de44b2dd7">operations_research::KnapsackGenericSolver::Solve</a></div><div class="ttdeci">int64 Solve(TimeLimit *time_limit, bool *is_solution_optimal) override</div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html_ab5b44517ac32ba76590129831a826096"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html#ab5b44517ac32ba76590129831a826096">operations_research::BaseKnapsackSolver::~BaseKnapsackSolver</a></div><div class="ttdeci">virtual ~BaseKnapsackSolver()</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00561">knapsack_solver.h:561</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_ab803770e8e21bb448a2f3d940ab125f8"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#ab803770e8e21bb448a2f3d940ab125f8">operations_research::KnapsackPropagator::CopyCurrentStateToSolutionPropagator</a></div><div class="ttdeci">virtual void CopyCurrentStateToSolutionPropagator(std::vector&lt; bool &gt; *solution) const =0</div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html_ac6518fa5a6dd37173c7700bc2d9b6071"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html#ac6518fa5a6dd37173c7700bc2d9b6071">operations_research::BaseKnapsackSolver::BaseKnapsackSolver</a></div><div class="ttdeci">BaseKnapsackSolver(const std::string &amp;solver_name)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00559">knapsack_solver.h:559</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a9a98946a64f3893b085f650932c9dfee"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a9a98946a64f3893b085f650932c9dfee">operations_research::KnapsackSolver::GetName</a></div><div class="ttdeci">std::string GetName() const</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html_a1dcc659f782497ac856c5223c0819713"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html#a1dcc659f782497ac856c5223c0819713">operations_research::KnapsackSearchPath::via</a></div><div class="ttdeci">const KnapsackSearchNode &amp; via() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00382">knapsack_solver.h:382</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html_a89aa280d2321c1316aa1305106f1bb49"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html#a89aa280d2321c1316aa1305106f1bb49">operations_research::KnapsackState::is_bound</a></div><div class="ttdeci">bool is_bound(int id) const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00409">knapsack_solver.h:409</a></div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackItem_html_a45f114802d12884173686ec5d073351f"><div class="ttname"><a href="structoperations__research_1_1KnapsackItem.html#a45f114802d12884173686ec5d073351f">operations_research::KnapsackItem::KnapsackItem</a></div><div class="ttdeci">KnapsackItem(int _id, int64 _weight, int64 _profit)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00298">knapsack_solver.h:298</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_a3df2fc3d96fbcac78a632d7dbf3b8550"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#a3df2fc3d96fbcac78a632d7dbf3b8550">operations_research::KnapsackGenericSolver::set_master_propagator_id</a></div><div class="ttdeci">void set_master_propagator_id(int master_propagator_id)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00613">knapsack_solver.h:613</a></div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackAssignment_html_a8f85eb172a4c6bed0d042f7d269fc457"><div class="ttname"><a href="structoperations__research_1_1KnapsackAssignment.html#a8f85eb172a4c6bed0d042f7d269fc457">operations_research::KnapsackAssignment::KnapsackAssignment</a></div><div class="ttdeci">KnapsackAssignment(int _item_id, bool _is_in)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00279">knapsack_solver.h:279</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_ad17e46a2afcf393a4ec9159162c969f2"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#ad17e46a2afcf393a4ec9159162c969f2">operations_research::KnapsackSearchNode::KnapsackSearchNode</a></div><div class="ttdeci">KnapsackSearchNode(const KnapsackSearchNode *const parent, const KnapsackAssignment &amp;assignment)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a1fa45af1bf0d6aa9d5f86e2ed9ae5323"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a1fa45af1bf0d6aa9d5f86e2ed9ae5323">operations_research::KnapsackPropagator::CopyCurrentStateToSolution</a></div><div class="ttdeci">void CopyCurrentStateToSolution(bool has_one_propagator, std::vector&lt; bool &gt; *solution) const</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html_a3dc3602e1a640bc986956e0ce5e88d04"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html#a3dc3602e1a640bc986956e0ce5e88d04">operations_research::KnapsackSearchPath::KnapsackSearchPath</a></div><div class="ttdeci">KnapsackSearchPath(const KnapsackSearchNode &amp;from, const KnapsackSearchNode &amp;to)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_aa14e63156675c18c06073ac1cb8aa170"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#aa14e63156675c18c06073ac1cb8aa170">operations_research::KnapsackCapacityPropagator::~KnapsackCapacityPropagator</a></div><div class="ttdeci">~KnapsackCapacityPropagator() override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a8ae457a5297bac5ad83517ba54b819d1"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a8ae457a5297bac5ad83517ba54b819d1">operations_research::KnapsackPropagator::ComputeProfitBounds</a></div><div class="ttdeci">virtual void ComputeProfitBounds()=0</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_a0884060c60d64130c91ee7300cd3c4b0"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#a0884060c60d64130c91ee7300cd3c4b0">operations_research::KnapsackCapacityPropagator::KnapsackCapacityPropagator</a></div><div class="ttdeci">KnapsackCapacityPropagator(const KnapsackState &amp;state, int64 capacity)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_ade05a213d54a2045bab20c41e56a2144"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#ade05a213d54a2045bab20c41e56a2144">operations_research::KnapsackSearchNode::profit_upper_bound</a></div><div class="ttdeci">int64 profit_upper_bound() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00333">knapsack_solver.h:333</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html_a706a3a7c9568016131afd718f347ec8d"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html#a706a3a7c9568016131afd718f347ec8d">operations_research::KnapsackCapacityPropagator::CopyCurrentStateToSolutionPropagator</a></div><div class="ttdeci">void CopyCurrentStateToSolutionPropagator(std::vector&lt; bool &gt; *solution) const override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_adecc1cf1fe064b843459dd1f8aec12ff"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#adecc1cf1fe064b843459dd1f8aec12ff">operations_research::KnapsackSolver::~KnapsackSolver</a></div><div class="ttdeci">virtual ~KnapsackSolver()</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_a35bfa97bc24861491acb8d3d20087306"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#a35bfa97bc24861491acb8d3d20087306">operations_research::KnapsackGenericSolver::GetLowerAndUpperBoundWhenItem</a></div><div class="ttdeci">void GetLowerAndUpperBoundWhenItem(int item_id, bool is_item_in, int64 *lower_bound, int64 *upper_bound) override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a6b4f6cbb00a64b0e9745938f9b99d0c8"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a6b4f6cbb00a64b0e9745938f9b99d0c8">operations_research::KnapsackSolver::set_time_limit</a></div><div class="ttdeci">void set_time_limit(double time_limit_seconds)</div><div class="ttdoc">Time limit in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00218">knapsack_solver.h:218</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackCapacityPropagator_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackCapacityPropagator.html">operations_research::KnapsackCapacityPropagator</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00517">knapsack_solver.h:517</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html">operations_research::KnapsackPropagator</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00431">knapsack_solver.h:431</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html_a1e3b6d38df0786ccf7f938d60e386aae"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html#a1e3b6d38df0786ccf7f938d60e386aae">operations_research::KnapsackSearchPath::Init</a></div><div class="ttdeci">void Init()</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306ecac43056d6d2f96cee37fcb8a752b0ff45"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306ecac43056d6d2f96cee37fcb8a752b0ff45">operations_research::KnapsackSolver::KNAPSACK_BRUTE_FORCE_SOLVER</a></div><div class="ttdoc">Brute force method.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00134">knapsack_solver.h:134</a></div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html_ac978ac74a7ba1451dd87398ac903234c"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html#ac978ac74a7ba1451dd87398ac903234c">operations_research::BaseKnapsackSolver::Init</a></div><div class="ttdeci">virtual void Init(const std::vector&lt; int64 &gt; &amp;profits, const std::vector&lt; std::vector&lt; int64 &gt; &gt; &amp;weights, const std::vector&lt; int64 &gt; &amp;capacities)=0</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_aa4161d4fb0a577a3e854b7f285d7ace6"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#aa4161d4fb0a577a3e854b7f285d7ace6">operations_research::KnapsackPropagator::items</a></div><div class="ttdeci">const std::vector&lt; KnapsackItemPtr &gt; &amp; items() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00482">knapsack_solver.h:482</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_af28391017c090a638200c57b4c8a2ac1"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#af28391017c090a638200c57b4c8a2ac1">operations_research::KnapsackPropagator::KnapsackPropagator</a></div><div class="ttdeci">KnapsackPropagator(const KnapsackState &amp;state)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html_a6308c7a97200f84f6ebf5b2c487b0362"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html#a6308c7a97200f84f6ebf5b2c487b0362">operations_research::KnapsackState::Init</a></div><div class="ttdeci">void Init(int number_of_items)</div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackItem_html_a7a9c8a0c92aa590e21fcb9006e4dc004"><div class="ttname"><a href="structoperations__research_1_1KnapsackItem.html#a7a9c8a0c92aa590e21fcb9006e4dc004">operations_research::KnapsackItem::profit</a></div><div class="ttdeci">const int64 profit</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00310">knapsack_solver.h:310</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306eca793d998526508cfcc2bfc89fe25b3edd"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306eca793d998526508cfcc2bfc89fe25b3edd">operations_research::KnapsackSolver::KNAPSACK_DYNAMIC_PROGRAMMING_SOLVER</a></div><div class="ttdoc">Dynamic Programming approach for single dimension problems.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00150">knapsack_solver.h:150</a></div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html_af75968e8e76e35de6e7cdfaa0488b131"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html#af75968e8e76e35de6e7cdfaa0488b131">operations_research::BaseKnapsackSolver::best_solution</a></div><div class="ttdeci">virtual bool best_solution(int item_id) const =0</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a5a0d11be6f0d5b521477226fb7573db8"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a5a0d11be6f0d5b521477226fb7573db8">operations_research::KnapsackPropagator::UpdatePropagator</a></div><div class="ttdeci">virtual bool UpdatePropagator(bool revert, const KnapsackAssignment &amp;assignment)=0</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a8b06041d7c1fb05f379714f4312306eca1f4e1e2f80ab9c7d4fc1b14d9f5da959"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a8b06041d7c1fb05f379714f4312306eca1f4e1e2f80ab9c7d4fc1b14d9f5da959">operations_research::KnapsackSolver::KNAPSACK_MULTIDIMENSION_SCIP_MIP_SOLVER</a></div><div class="ttdoc">SCIP based solver.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00174">knapsack_solver.h:174</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_a51cac72a6280d047002a1b9bf34d7948"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#a51cac72a6280d047002a1b9bf34d7948">operations_research::KnapsackGenericSolver::Init</a></div><div class="ttdeci">void Init(const std::vector&lt; int64 &gt; &amp;profits, const std::vector&lt; std::vector&lt; int64 &gt; &gt; &amp;weights, const std::vector&lt; int64 &gt; &amp;capacities) override</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html_aa0c092cae536ba7418da2872c7b7d1a4"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html#aa0c092cae536ba7418da2872c7b7d1a4">operations_research::KnapsackSearchPath::MoveUpToDepth</a></div><div class="ttdeci">const KnapsackSearchNode * MoveUpToDepth(const KnapsackSearchNode &amp;node, int depth) const</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html_ab771ac0e538f991b73b011ee3ba11f05"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html#ab771ac0e538f991b73b011ee3ba11f05">operations_research::KnapsackState::UpdateState</a></div><div class="ttdeci">bool UpdateState(bool revert, const KnapsackAssignment &amp;assignment)</div></div>
<div class="ttc" id="namespaceoperations__research_html"><div class="ttname"><a href="namespaceoperations__research.html">operations_research</a></div><div class="ttdef"><b>Definition:</b> <a href="dense__doubly__linked__list_8h_source.html#l00021">dense_doubly_linked_list.h:21</a></div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackAssignment_html"><div class="ttname"><a href="structoperations__research_1_1KnapsackAssignment.html">operations_research::KnapsackAssignment</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00278">knapsack_solver.h:278</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_af41d4ebb02ec2b735851141b01f4769a"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#af41d4ebb02ec2b735851141b01f4769a">operations_research::KnapsackPropagator::current_profit</a></div><div class="ttdeci">int64 current_profit() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00450">knapsack_solver.h:450</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_a6fdd73f8011695b97659f2bea29325cb"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#a6fdd73f8011695b97659f2bea29325cb">operations_research::KnapsackSearchNode::depth</a></div><div class="ttdeci">int depth() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00326">knapsack_solver.h:326</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_ac7d0a3efa2aabe6a3e667b0724f63688"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#ac7d0a3efa2aabe6a3e667b0724f63688">operations_research::KnapsackSolver::use_reduction</a></div><div class="ttdeci">bool use_reduction() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00210">knapsack_solver.h:210</a></div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html_ae194e7bee4a383e5ee6c8ed341b49b7e"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html#ae194e7bee4a383e5ee6c8ed341b49b7e">operations_research::BaseKnapsackSolver::GetName</a></div><div class="ttdeci">virtual std::string GetName() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00581">knapsack_solver.h:581</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html_a862bf4e908cd82ea44f72e98558016ad"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html#a862bf4e908cd82ea44f72e98558016ad">operations_research::KnapsackState::is_in</a></div><div class="ttdeci">bool is_in(int id) const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00410">knapsack_solver.h:410</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchNode_html_a9962698a737cd21789c77ff32bef0d98"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchNode.html#a9962698a737cd21789c77ff32bef0d98">operations_research::KnapsackSearchNode::set_next_item_id</a></div><div class="ttdeci">void set_next_item_id(int id)</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00337">knapsack_solver.h:337</a></div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html">operations_research::BaseKnapsackSolver</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00557">knapsack_solver.h:557</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a9647a5f765048e8662e5efa54c7d8687"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a9647a5f765048e8662e5efa54c7d8687">operations_research::KnapsackSolver::IsSolutionOptimal</a></div><div class="ttdeci">bool IsSolutionOptimal() const</div><div class="ttdoc">Returns true if the solution was proven optimal.</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00207">knapsack_solver.h:207</a></div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackAssignment_html_a922620900c7a18d22de686d47e25d4ed"><div class="ttname"><a href="structoperations__research_1_1KnapsackAssignment.html#a922620900c7a18d22de686d47e25d4ed">operations_research::KnapsackAssignment::is_in</a></div><div class="ttdeci">bool is_in</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00282">knapsack_solver.h:282</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackGenericSolver_html_a2a7bff5cf8a51192eadec54eb0499064"><div class="ttname"><a href="classoperations__research_1_1KnapsackGenericSolver.html#a2a7bff5cf8a51192eadec54eb0499064">operations_research::KnapsackGenericSolver::KnapsackGenericSolver</a></div><div class="ttdeci">KnapsackGenericSolver(const std::string &amp;solver_name)</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html_aa4d0c972d711bfb97638280fa646f83d"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html#aa4d0c972d711bfb97638280fa646f83d">operations_research::KnapsackSearchPath::from</a></div><div class="ttdeci">const KnapsackSearchNode &amp; from() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00381">knapsack_solver.h:381</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSearchPath_html_af020a457732b35e71f0bce09433ba4f2"><div class="ttname"><a href="classoperations__research_1_1KnapsackSearchPath.html#af020a457732b35e71f0bce09433ba4f2">operations_research::KnapsackSearchPath::to</a></div><div class="ttdeci">const KnapsackSearchNode &amp; to() const</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00383">knapsack_solver.h:383</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackSolver_html_a666eb21bb3912d9500caf2c63f5bcefb"><div class="ttname"><a href="classoperations__research_1_1KnapsackSolver.html#a666eb21bb3912d9500caf2c63f5bcefb">operations_research::KnapsackSolver::Solve</a></div><div class="ttdeci">int64 Solve()</div><div class="ttdoc">Solves the problem and returns the profit of the optimal solution.</div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackItem_html"><div class="ttname"><a href="structoperations__research_1_1KnapsackItem.html">operations_research::KnapsackItem</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00297">knapsack_solver.h:297</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a9aea5e61ac71dca1139fda445cc2dfee"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a9aea5e61ac71dca1139fda445cc2dfee">operations_research::KnapsackPropagator::GetNextItemId</a></div><div class="ttdeci">virtual int GetNextItemId() const =0</div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackState_html"><div class="ttname"><a href="classoperations__research_1_1KnapsackState.html">operations_research::KnapsackState</a></div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00397">knapsack_solver.h:397</a></div></div>
<div class="ttc" id="classoperations__research_1_1KnapsackPropagator_html_a9fdde4d0e47bfb9ca54f16554a69ce1b"><div class="ttname"><a href="classoperations__research_1_1KnapsackPropagator.html#a9fdde4d0e47bfb9ca54f16554a69ce1b">operations_research::KnapsackPropagator::Init</a></div><div class="ttdeci">void Init(const std::vector&lt; int64 &gt; &amp;profits, const std::vector&lt; int64 &gt; &amp;weights)</div></div>
<div class="ttc" id="structoperations__research_1_1KnapsackAssignment_html_a1c0c3c835f3c4363b650fba65c7ebf32"><div class="ttname"><a href="structoperations__research_1_1KnapsackAssignment.html#a1c0c3c835f3c4363b650fba65c7ebf32">operations_research::KnapsackAssignment::item_id</a></div><div class="ttdeci">int item_id</div><div class="ttdef"><b>Definition:</b> <a href="knapsack__solver_8h_source.html#l00281">knapsack_solver.h:281</a></div></div>
<div class="ttc" id="classoperations__research_1_1BaseKnapsackSolver_html_a64d6539ac3d0d0cd8c1e6c4ea41dac52"><div class="ttname"><a href="classoperations__research_1_1BaseKnapsackSolver.html#a64d6539ac3d0d0cd8c1e6c4ea41dac52">operations_research::BaseKnapsackSolver::Solve</a></div><div class="ttdeci">virtual int64 Solve(TimeLimit *time_limit, bool *is_solution_optimal)=0</div></div>
</div><!-- fragment --></div><!-- contents -->
2019-08-07 18:01:08 -07:00
</div>
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>