KnapsackSolver_8java_source.html 37.8 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
<!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">
                <span id="sfml">Google OR-Tools 7.7</span>
            </div>
        </div>
        <div id="content" style="width: 100%; overflow: hidden;">
        <div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
        <h2>Java Reference</h2>
        <ul>
          <li><a href="../java/namespacecom_1_1google_1_1ortools_1_1sat.html">CP-SAT</a></li>
          <li><a href="../java/namespacecom_1_1google_1_1ortools_1_1graph.html">Graph</a></li>
          <li><a href="../java/namespacecom_1_1google_1_1ortools_1_1algorithms.html">Knapsack solver</a></li>
          <li><a href="../java/namespacecom_1_1google_1_1ortools_1_1linearsolver.html">Linear solver</a></li>
          <li><a href="../java/namespacecom_1_1google_1_1ortools_1_1constraintsolver.html">Routing</a></li>
          <li><a href="../java/namespacecom_1_1google_1_1ortools_1_1util.html">Util</a></li>
        </ul>
        </div>
        <div id="content">
            <div align="center">
                <h1 style="color: #145A32;">Java Reference</h1>
            </div>
<!-- Generated by Doxygen 1.8.18 -->
  <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>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
<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_b2c6d49957bf5d0c7726edb4b829cd4d.html">gen</a></li><li class="navelem"><a class="el" href="dir_f88e9bf20ef7a2edacadc7398821128c.html">java</a></li><li class="navelem"><a class="el" href="dir_ed872c04379ecb0f2b963a12120d6d44.html">com</a></li><li class="navelem"><a class="el" href="dir_a4779522fcbc2aba7a0363cf99e3f053.html">google</a></li><li class="navelem"><a class="el" href="dir_c2366ecc8bf89298d2ab512247846781.html">ortools</a></li><li class="navelem"><a class="el" href="dir_53c6357c7deea8bed997909a7cc970fc.html">algorithms</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">KnapsackSolver.java</div>  </div>
</div><!--header-->
<div class="contents">
<a href="KnapsackSolver_8java.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">/* ----------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * This file was automatically generated by SWIG (http://www.swig.org).</span></div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> * Version 4.0.1</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * Do not make changes to this file unless you know what you are doing--modify</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> * the SWIG interface file instead.</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; </div>
<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="namespacecom_1_1google_1_1ortools_1_1algorithms.html">    9</a></span>&#160;<span class="keyword">package </span>com.google.ortools.algorithms;</div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160; </div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html">   97</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html">KnapsackSolver</a> {</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;  <span class="keyword">private</span> <span class="keyword">transient</span> <span class="keywordtype">long</span> swigCPtr;</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;  <span class="keyword">protected</span> <span class="keyword">transient</span> <span class="keywordtype">boolean</span> swigCMemOwn;</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160; </div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a5a34e5c7e57b5b97108c0ca319a9e532">  101</a></span>&#160;  <span class="keyword">protected</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a5a34e5c7e57b5b97108c0ca319a9e532">KnapsackSolver</a>(<span class="keywordtype">long</span> cPtr, <span class="keywordtype">boolean</span> cMemoryOwn) {</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    swigCMemOwn = cMemoryOwn;</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;    swigCPtr = cPtr;</div>
<div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;  }</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; </div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  <span class="keyword">protected</span> <span class="keyword">static</span> <span class="keywordtype">long</span> getCPtr(<a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html">KnapsackSolver</a> obj) {</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    <span class="keywordflow">return</span> (obj == <span class="keyword">null</span>) ? 0 : obj.swigCPtr;</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;  }</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160; </div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  @SuppressWarnings(<span class="stringliteral">&quot;deprecation&quot;</span>)</div>
<div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;  protected <span class="keywordtype">void</span> finalize() {</div>
<div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    <span class="keyword">delete</span>();</div>
<div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;  }</div>
<div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a155da317e33b817886120f10038c12cf">  115</a></span>&#160;  <span class="keyword">public</span> <span class="keyword">synchronized</span> <span class="keywordtype">void</span> <span class="keyword">delete</span>() {</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    <span class="keywordflow">if</span> (swigCPtr != 0) {</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;      <span class="keywordflow">if</span> (swigCMemOwn) {</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        swigCMemOwn = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        mainJNI.delete_KnapsackSolver(swigCPtr);</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;      }</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;      swigCPtr = 0;</div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    }</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  }</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160; </div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1b60fff25fee921a74e7c882486d573b">  125</a></span>&#160;  <span class="keyword">public</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1b60fff25fee921a74e7c882486d573b">KnapsackSolver</a>(String solver_name) {</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <span class="keyword">this</span>(mainJNI.new_KnapsackSolver__SWIG_0(solver_name), <span class="keyword">true</span>);</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  }</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160; </div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a428541c42e6e795ef2afcbdb9f82431b">  129</a></span>&#160;  <span class="keyword">public</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a428541c42e6e795ef2afcbdb9f82431b">KnapsackSolver</a>(<a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html">KnapsackSolver</a>.<a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a> solver_type, String solver_name) {</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;    <span class="keyword">this</span>(mainJNI.new_KnapsackSolver__SWIG_1(solver_type.swigValue(), solver_name), <span class="keyword">true</span>);</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;  }</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160; </div>
<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1990a3432b2dda788b57013d9c9385f6">  136</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">void</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1990a3432b2dda788b57013d9c9385f6">init</a>(<span class="keywordtype">long</span>[] profits, <span class="keywordtype">long</span>[][] weights, <span class="keywordtype">long</span>[] capacities) {</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    mainJNI.KnapsackSolver_init(swigCPtr, <span class="keyword">this</span>, profits, weights, capacities);</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  }</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160; </div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1a149fcd68c2a4e370f7b9d171a1ca48">  143</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">long</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1a149fcd68c2a4e370f7b9d171a1ca48">solve</a>() {</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;    <span class="keywordflow">return</span> mainJNI.KnapsackSolver_solve(swigCPtr, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;  }</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160; </div>
<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#ab197dcc4afcd5c74285ed4b70ed0a16e">  150</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">boolean</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#ab197dcc4afcd5c74285ed4b70ed0a16e">bestSolutionContains</a>(<span class="keywordtype">int</span> item_id) {</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    <span class="keywordflow">return</span> mainJNI.KnapsackSolver_bestSolutionContains(swigCPtr, <span class="keyword">this</span>, item_id);</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  }</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a3df739a2d84a936adba6bd1421a705b6">  157</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">boolean</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a3df739a2d84a936adba6bd1421a705b6">isSolutionOptimal</a>() {</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;    <span class="keywordflow">return</span> mainJNI.KnapsackSolver_isSolutionOptimal(swigCPtr, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  }</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a78ee178b6a73658d65ca60da4d1e6683">  161</a></span>&#160;  <span class="keyword">public</span> String <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a78ee178b6a73658d65ca60da4d1e6683">getName</a>() {</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    <span class="keywordflow">return</span> mainJNI.KnapsackSolver_getName(swigCPtr, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;  }</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160; </div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#ae3fb2037c22db362ab3349139ce19ba5">  165</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">boolean</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#ae3fb2037c22db362ab3349139ce19ba5">useReduction</a>() {</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    <span class="keywordflow">return</span> mainJNI.KnapsackSolver_useReduction(swigCPtr, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  }</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160; </div>
<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#af6b9045f4a2d184e82f4695176b1db0d">  169</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">void</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#af6b9045f4a2d184e82f4695176b1db0d">setUseReduction</a>(<span class="keywordtype">boolean</span> use_reduction) {</div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    mainJNI.KnapsackSolver_setUseReduction(swigCPtr, <span class="keyword">this</span>, use_reduction);</div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;  }</div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a9f6a41ed1718d61764c2a965b2e6a6a3">  179</a></span>&#160;  <span class="keyword">public</span> <span class="keywordtype">void</span> <a class="code" href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a9f6a41ed1718d61764c2a965b2e6a6a3">setTimeLimit</a>(<span class="keywordtype">double</span> time_limit_seconds) {</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;    mainJNI.KnapsackSolver_setTimeLimit(swigCPtr, <span class="keyword">this</span>, time_limit_seconds);</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;  }</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160; </div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">  189</a></span>&#160;  <span class="keyword">public</span> <span class="keyword">enum</span> <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a> {</div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ac8a2a25d2eb059cf0edd14d351bff019">  198</a></span>&#160;    <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ac8a2a25d2eb059cf0edd14d351bff019">KNAPSACK_BRUTE_FORCE_SOLVER</a>(mainJNI.KnapsackSolver_KNAPSACK_BRUTE_FORCE_SOLVER_get()),</div>
<div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a937cac4cf730d006d544209fa2e161f8">  206</a></span>&#160;    <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a937cac4cf730d006d544209fa2e161f8">KNAPSACK_64ITEMS_SOLVER</a>(mainJNI.KnapsackSolver_KNAPSACK_64ITEMS_SOLVER_get()),</div>
<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab4681ad1cf2eb38d5ae7c8bc05f04bb2">  214</a></span>&#160;    <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab4681ad1cf2eb38d5ae7c8bc05f04bb2">KNAPSACK_DYNAMIC_PROGRAMMING_SOLVER</a>(mainJNI.KnapsackSolver_KNAPSACK_DYNAMIC_PROGRAMMING_SOLVER_get()),</div>
<div class="line"><a name="l00221"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a89153f5268eda524c9221a919c3bc486">  221</a></span>&#160;    <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a89153f5268eda524c9221a919c3bc486">KNAPSACK_MULTIDIMENSION_CBC_MIP_SOLVER</a>(mainJNI.KnapsackSolver_KNAPSACK_MULTIDIMENSION_CBC_MIP_SOLVER_get()),</div>
<div class="line"><a name="l00228"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab2e039228749cc14e88c43d7ebf2d31d">  228</a></span>&#160;    <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab2e039228749cc14e88c43d7ebf2d31d">KNAPSACK_MULTIDIMENSION_BRANCH_AND_BOUND_SOLVER</a>(mainJNI.KnapsackSolver_KNAPSACK_MULTIDIMENSION_BRANCH_AND_BOUND_SOLVER_get());</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160; </div>
<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab43b8ea551128c58807e93b368cf5547">  230</a></span>&#160;    <span class="keyword">public</span> <span class="keyword">final</span> <span class="keywordtype">int</span> <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab43b8ea551128c58807e93b368cf5547">swigValue</a>() {</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;      <span class="keywordflow">return</span> swigValue;</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    }</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160; </div>
<div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a5a46e9523106e952654fdb6f0cf1c958">  234</a></span>&#160;    <span class="keyword">public</span> <span class="keyword">static</span> <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a> <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a5a46e9523106e952654fdb6f0cf1c958">swigToEnum</a>(<span class="keywordtype">int</span> swigValue) {</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;      <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a>[] swigValues = <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a>.class.getEnumConstants();</div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;      <span class="keywordflow">if</span> (swigValue &lt; swigValues.length &amp;&amp; swigValue &gt;= 0 &amp;&amp; swigValues[swigValue].swigValue == swigValue)</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        <span class="keywordflow">return</span> swigValues[swigValue];</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;      <span class="keywordflow">for</span> (<a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a> swigEnum : swigValues)</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        <span class="keywordflow">if</span> (swigEnum.swigValue == swigValue)</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;          <span class="keywordflow">return</span> swigEnum;</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;      <span class="keywordflow">throw</span> <span class="keyword">new</span> IllegalArgumentException(<span class="stringliteral">&quot;No enum &quot;</span> + <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a>.class + <span class="stringliteral">&quot; with value &quot;</span> + swigValue);</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;    }</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160; </div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    @SuppressWarnings(<span class="stringliteral">&quot;unused&quot;</span>)</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;    private <a class="code" href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">SolverType</a>() {</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;      this.swigValue = SwigNext.next++;</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;    }</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160; </div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;    @SuppressWarnings(<span class="stringliteral">&quot;unused&quot;</span>)</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    private SolverType(<span class="keywordtype">int</span> swigValue) {</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;      this.swigValue = swigValue;</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;      SwigNext.next = swigValue+1;</div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    }</div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160; </div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    @SuppressWarnings(<span class="stringliteral">&quot;unused&quot;</span>)</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    private SolverType(SolverType swigEnum) {</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;      this.swigValue = swigEnum.swigValue;</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;      SwigNext.next = this.swigValue+1;</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    }</div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160; </div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    <span class="keyword">private</span> <span class="keyword">final</span> <span class="keywordtype">int</span> swigValue;</div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160; </div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">class </span>SwigNext {</div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;      <span class="keyword">private</span> <span class="keyword">static</span> <span class="keywordtype">int</span> next = 0;</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;    }</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;  }</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160; </div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_a5a46e9523106e952654fdb6f0cf1c958"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a5a46e9523106e952654fdb6f0cf1c958">com.google.ortools.algorithms.KnapsackSolver.SolverType.swigToEnum</a></div><div class="ttdeci">static SolverType swigToEnum(int swigValue)</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00234">KnapsackSolver.java:234</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a1b60fff25fee921a74e7c882486d573b"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1b60fff25fee921a74e7c882486d573b">com.google.ortools.algorithms.KnapsackSolver.KnapsackSolver</a></div><div class="ttdeci">KnapsackSolver(String solver_name)</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00125">KnapsackSolver.java:125</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_a89153f5268eda524c9221a919c3bc486"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a89153f5268eda524c9221a919c3bc486">com.google.ortools.algorithms.KnapsackSolver.SolverType.KNAPSACK_MULTIDIMENSION_CBC_MIP_SOLVER</a></div><div class="ttdeci">KNAPSACK_MULTIDIMENSION_CBC_MIP_SOLVER</div><div class="ttdoc">CBC Based Solver    This solver can deal with both large number of items and several  dimensions.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00221">KnapsackSolver.java:221</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_ae3fb2037c22db362ab3349139ce19ba5"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#ae3fb2037c22db362ab3349139ce19ba5">com.google.ortools.algorithms.KnapsackSolver.useReduction</a></div><div class="ttdeci">boolean useReduction()</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00165">KnapsackSolver.java:165</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_ab43b8ea551128c58807e93b368cf5547"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab43b8ea551128c58807e93b368cf5547">com.google.ortools.algorithms.KnapsackSolver.SolverType.swigValue</a></div><div class="ttdeci">final int swigValue()</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00230">KnapsackSolver.java:230</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_af6b9045f4a2d184e82f4695176b1db0d"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#af6b9045f4a2d184e82f4695176b1db0d">com.google.ortools.algorithms.KnapsackSolver.setUseReduction</a></div><div class="ttdeci">void setUseReduction(boolean use_reduction)</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00169">KnapsackSolver.java:169</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a78ee178b6a73658d65ca60da4d1e6683"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a78ee178b6a73658d65ca60da4d1e6683">com.google.ortools.algorithms.KnapsackSolver.getName</a></div><div class="ttdeci">String getName()</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00161">KnapsackSolver.java:161</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_ab4681ad1cf2eb38d5ae7c8bc05f04bb2"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab4681ad1cf2eb38d5ae7c8bc05f04bb2">com.google.ortools.algorithms.KnapsackSolver.SolverType.KNAPSACK_DYNAMIC_PROGRAMMING_SOLVER</a></div><div class="ttdeci">KNAPSACK_DYNAMIC_PROGRAMMING_SOLVER</div><div class="ttdoc">Dynamic Programming approach for single dimension problems    Limited to one dimension,...</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00214">KnapsackSolver.java:214</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a1990a3432b2dda788b57013d9c9385f6"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1990a3432b2dda788b57013d9c9385f6">com.google.ortools.algorithms.KnapsackSolver.init</a></div><div class="ttdeci">void init(long[] profits, long[][] weights, long[] capacities)</div><div class="ttdoc">Initializes the solver and enters the problem to be solved.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00136">KnapsackSolver.java:136</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_ab2e039228749cc14e88c43d7ebf2d31d"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ab2e039228749cc14e88c43d7ebf2d31d">com.google.ortools.algorithms.KnapsackSolver.SolverType.KNAPSACK_MULTIDIMENSION_BRANCH_AND_BOUND_SOLVER</a></div><div class="ttdeci">KNAPSACK_MULTIDIMENSION_BRANCH_AND_BOUND_SOLVER</div><div class="ttdoc">Generic Solver.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00228">KnapsackSolver.java:228</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a3df739a2d84a936adba6bd1421a705b6"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a3df739a2d84a936adba6bd1421a705b6">com.google.ortools.algorithms.KnapsackSolver.isSolutionOptimal</a></div><div class="ttdeci">boolean isSolutionOptimal()</div><div class="ttdoc">Returns true if the solution was proven optimal.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00157">KnapsackSolver.java:157</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a1a149fcd68c2a4e370f7b9d171a1ca48"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a1a149fcd68c2a4e370f7b9d171a1ca48">com.google.ortools.algorithms.KnapsackSolver.solve</a></div><div class="ttdeci">long solve()</div><div class="ttdoc">Solves the problem and returns the profit of the optimal solution.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00143">KnapsackSolver.java:143</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_ac8a2a25d2eb059cf0edd14d351bff019"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#ac8a2a25d2eb059cf0edd14d351bff019">com.google.ortools.algorithms.KnapsackSolver.SolverType.KNAPSACK_BRUTE_FORCE_SOLVER</a></div><div class="ttdeci">KNAPSACK_BRUTE_FORCE_SOLVER</div><div class="ttdoc">Brute force method.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00198">KnapsackSolver.java:198</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a9f6a41ed1718d61764c2a965b2e6a6a3"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a9f6a41ed1718d61764c2a965b2e6a6a3">com.google.ortools.algorithms.KnapsackSolver.setTimeLimit</a></div><div class="ttdeci">void setTimeLimit(double time_limit_seconds)</div><div class="ttdoc">Time limit in seconds.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00179">KnapsackSolver.java:179</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a5a34e5c7e57b5b97108c0ca319a9e532"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a5a34e5c7e57b5b97108c0ca319a9e532">com.google.ortools.algorithms.KnapsackSolver.KnapsackSolver</a></div><div class="ttdeci">KnapsackSolver(long cPtr, boolean cMemoryOwn)</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00101">KnapsackSolver.java:101</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html">com.google.ortools.algorithms.KnapsackSolver</a></div><div class="ttdoc">This library solves knapsack problems.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00097">KnapsackSolver.java:97</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html_a937cac4cf730d006d544209fa2e161f8"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html#a937cac4cf730d006d544209fa2e161f8">com.google.ortools.algorithms.KnapsackSolver.SolverType.KNAPSACK_64ITEMS_SOLVER</a></div><div class="ttdeci">KNAPSACK_64ITEMS_SOLVER</div><div class="ttdoc">Optimized method for single dimension small problems    Limited to 64 items and one dimension,...</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00206">KnapsackSolver.java:206</a></div></div>
<div class="ttc" id="aenumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType_html"><div class="ttname"><a href="enumcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_1_1SolverType.html">com.google.ortools.algorithms.KnapsackSolver.SolverType</a></div><div class="ttdoc">Enum controlling which underlying algorithm is used.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00189">KnapsackSolver.java:189</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_ab197dcc4afcd5c74285ed4b70ed0a16e"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#ab197dcc4afcd5c74285ed4b70ed0a16e">com.google.ortools.algorithms.KnapsackSolver.bestSolutionContains</a></div><div class="ttdeci">boolean bestSolutionContains(int item_id)</div><div class="ttdoc">Returns true if the item 'item_id' is packed in the optimal knapsack.</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00150">KnapsackSolver.java:150</a></div></div>
<div class="ttc" id="aclasscom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver_html_a428541c42e6e795ef2afcbdb9f82431b"><div class="ttname"><a href="classcom_1_1google_1_1ortools_1_1algorithms_1_1KnapsackSolver.html#a428541c42e6e795ef2afcbdb9f82431b">com.google.ortools.algorithms.KnapsackSolver.KnapsackSolver</a></div><div class="ttdeci">KnapsackSolver(KnapsackSolver.SolverType solver_type, String solver_name)</div><div class="ttdef"><b>Definition:</b> <a href="KnapsackSolver_8java_source.html#l00129">KnapsackSolver.java:129</a></div></div>
        </div>
        </div>
        <div id="footer-container">
            <div id="footer">
            </div>
        </div>
    </body>
</html>