Files
ortools-clone/docs/cpp_linear/classoperations__research_1_1MPObjective.html
2019-07-15 14:27:40 -07:00

885 lines
44 KiB
HTML

<!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">OR-Tools 7.2</span>
</div>
</div>
<link rel="icon" href="https://developers.google.com/optimization/images/orLogo.png">
<div id="content">
<!-- Generated by Doxygen 1.8.15 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classoperations__research_1_1MPObjective.html','');});
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classoperations__research_1_1MPObjective-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">operations_research::MPObjective Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A class to express a linear objective. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00919">919</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2131c9028ff6d7047c8272c3ea3e62e3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a2131c9028ff6d7047c8272c3ea3e62e3">Clear</a> ()</td></tr>
<tr class="memdesc:a2131c9028ff6d7047c8272c3ea3e62e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears the offset, all variables and coefficients, and the optimization direction. <a href="#a2131c9028ff6d7047c8272c3ea3e62e3">More...</a><br /></td></tr>
<tr class="separator:a2131c9028ff6d7047c8272c3ea3e62e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad1b0ca33b3a2c45d91e2875feb98c66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#aad1b0ca33b3a2c45d91e2875feb98c66">SetCoefficient</a> (const <a class="el" href="classoperations__research_1_1MPVariable.html">MPVariable</a> *const var, double coeff)</td></tr>
<tr class="memdesc:aad1b0ca33b3a2c45d91e2875feb98c66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the coefficient of the variable in the objective. <a href="#aad1b0ca33b3a2c45d91e2875feb98c66">More...</a><br /></td></tr>
<tr class="separator:aad1b0ca33b3a2c45d91e2875feb98c66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba6c839cf1c09f5d48ff6072cd6b28c5"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#aba6c839cf1c09f5d48ff6072cd6b28c5">GetCoefficient</a> (const <a class="el" href="classoperations__research_1_1MPVariable.html">MPVariable</a> *const var) const</td></tr>
<tr class="memdesc:aba6c839cf1c09f5d48ff6072cd6b28c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the coefficient of a given variable in the objective. <a href="#aba6c839cf1c09f5d48ff6072cd6b28c5">More...</a><br /></td></tr>
<tr class="separator:aba6c839cf1c09f5d48ff6072cd6b28c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1f99be84ce9efa28b4c1050af954835"><td class="memItemLeft" align="right" valign="top">const absl::flat_hash_map&lt; const <a class="el" href="classoperations__research_1_1MPVariable.html">MPVariable</a> *, double &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ae1f99be84ce9efa28b4c1050af954835">terms</a> () const</td></tr>
<tr class="memdesc:ae1f99be84ce9efa28b4c1050af954835"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a map from variables to their coefficients in the objective. <a href="#ae1f99be84ce9efa28b4c1050af954835">More...</a><br /></td></tr>
<tr class="separator:ae1f99be84ce9efa28b4c1050af954835"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24611f7b12b571fe1e73b629a8a6c17b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a24611f7b12b571fe1e73b629a8a6c17b">SetOffset</a> (double value)</td></tr>
<tr class="memdesc:a24611f7b12b571fe1e73b629a8a6c17b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the constant term in the objective. <a href="#a24611f7b12b571fe1e73b629a8a6c17b">More...</a><br /></td></tr>
<tr class="separator:a24611f7b12b571fe1e73b629a8a6c17b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d6bb2249af13a783033763d292763d4"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a8d6bb2249af13a783033763d292763d4">offset</a> () const</td></tr>
<tr class="memdesc:a8d6bb2249af13a783033763d292763d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the constant term in the objective. <a href="#a8d6bb2249af13a783033763d292763d4">More...</a><br /></td></tr>
<tr class="separator:a8d6bb2249af13a783033763d292763d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1829576c2533e5de48b38447d9f6823"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ab1829576c2533e5de48b38447d9f6823">OptimizeLinearExpr</a> (const LinearExpr &amp;linear_expr, bool is_maximization)</td></tr>
<tr class="memdesc:ab1829576c2533e5de48b38447d9f6823"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets the current objective to take the value of linear_expr, and sets the objective direction to maximize if "is_maximize", otherwise minimizes. <a href="#ab1829576c2533e5de48b38447d9f6823">More...</a><br /></td></tr>
<tr class="separator:ab1829576c2533e5de48b38447d9f6823"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6927f7e28f694c55d72496c94a9a6b01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a6927f7e28f694c55d72496c94a9a6b01">MaximizeLinearExpr</a> (const LinearExpr &amp;linear_expr)</td></tr>
<tr class="memdesc:a6927f7e28f694c55d72496c94a9a6b01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets the current objective to maximize linear_expr. <a href="#a6927f7e28f694c55d72496c94a9a6b01">More...</a><br /></td></tr>
<tr class="separator:a6927f7e28f694c55d72496c94a9a6b01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19a354c154bf034196d7a273feeff737"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a19a354c154bf034196d7a273feeff737">MinimizeLinearExpr</a> (const LinearExpr &amp;linear_expr)</td></tr>
<tr class="memdesc:a19a354c154bf034196d7a273feeff737"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets the current objective to minimize linear_expr. <a href="#a19a354c154bf034196d7a273feeff737">More...</a><br /></td></tr>
<tr class="separator:a19a354c154bf034196d7a273feeff737"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e03dec6fb0099d48a119dd525879dd7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a9e03dec6fb0099d48a119dd525879dd7">AddLinearExpr</a> (const LinearExpr &amp;linear_expr)</td></tr>
<tr class="memdesc:a9e03dec6fb0099d48a119dd525879dd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds linear_expr to the current objective, does not change the direction. <a href="#a9e03dec6fb0099d48a119dd525879dd7">More...</a><br /></td></tr>
<tr class="separator:a9e03dec6fb0099d48a119dd525879dd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add0f9517dc64b1f768952fc490f7be00"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#add0f9517dc64b1f768952fc490f7be00">SetOptimizationDirection</a> (bool maximize)</td></tr>
<tr class="memdesc:add0f9517dc64b1f768952fc490f7be00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the optimization direction (maximize: true or minimize: false). <a href="#add0f9517dc64b1f768952fc490f7be00">More...</a><br /></td></tr>
<tr class="separator:add0f9517dc64b1f768952fc490f7be00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9eea25e667a52dcad270495025e1202"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#af9eea25e667a52dcad270495025e1202">SetMinimization</a> ()</td></tr>
<tr class="memdesc:af9eea25e667a52dcad270495025e1202"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the optimization direction to minimize. <a href="#af9eea25e667a52dcad270495025e1202">More...</a><br /></td></tr>
<tr class="separator:af9eea25e667a52dcad270495025e1202"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f1396f72628328fd85ac852191fcc70"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a7f1396f72628328fd85ac852191fcc70">SetMaximization</a> ()</td></tr>
<tr class="memdesc:a7f1396f72628328fd85ac852191fcc70"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the optimization direction to maximize. <a href="#a7f1396f72628328fd85ac852191fcc70">More...</a><br /></td></tr>
<tr class="separator:a7f1396f72628328fd85ac852191fcc70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a883fc7ee2a166fc6ff257296f78e9565"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a883fc7ee2a166fc6ff257296f78e9565">maximization</a> () const</td></tr>
<tr class="memdesc:a883fc7ee2a166fc6ff257296f78e9565"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is the optimization direction set to maximize? <a href="#a883fc7ee2a166fc6ff257296f78e9565">More...</a><br /></td></tr>
<tr class="separator:a883fc7ee2a166fc6ff257296f78e9565"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a700788b8583ef4c69730be08a1a3ac28"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a700788b8583ef4c69730be08a1a3ac28">minimization</a> () const</td></tr>
<tr class="memdesc:a700788b8583ef4c69730be08a1a3ac28"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is the optimization direction set to minimize? <a href="#a700788b8583ef4c69730be08a1a3ac28">More...</a><br /></td></tr>
<tr class="separator:a700788b8583ef4c69730be08a1a3ac28"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43fd3a9687cfef2591b22c96cbe02477"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a43fd3a9687cfef2591b22c96cbe02477">Value</a> () const</td></tr>
<tr class="memdesc:a43fd3a9687cfef2591b22c96cbe02477"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the objective value of the best solution found so far. <a href="#a43fd3a9687cfef2591b22c96cbe02477">More...</a><br /></td></tr>
<tr class="separator:a43fd3a9687cfef2591b22c96cbe02477"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ab47aaf7b73ae8a2664dd262227e3a9"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a1ab47aaf7b73ae8a2664dd262227e3a9">BestBound</a> () const</td></tr>
<tr class="memdesc:a1ab47aaf7b73ae8a2664dd262227e3a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the best objective bound. <a href="#a1ab47aaf7b73ae8a2664dd262227e3a9">More...</a><br /></td></tr>
<tr class="separator:a1ab47aaf7b73ae8a2664dd262227e3a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:ac2c01b4de8f7670e37daa7d42b804dd4"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ac2c01b4de8f7670e37daa7d42b804dd4">MPSolver</a></td></tr>
<tr class="separator:ac2c01b4de8f7670e37daa7d42b804dd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0aea0786e75adbb2d24c41c15e7456c"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ac0aea0786e75adbb2d24c41c15e7456c">MPSolverInterface</a></td></tr>
<tr class="separator:ac0aea0786e75adbb2d24c41c15e7456c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5a7cf0c655f37c0b388a2ddcf32ac3e"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#af5a7cf0c655f37c0b388a2ddcf32ac3e">CBCInterface</a></td></tr>
<tr class="separator:af5a7cf0c655f37c0b388a2ddcf32ac3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60944ecdcad88cfb4d4d32feea70c9b5"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a60944ecdcad88cfb4d4d32feea70c9b5">CLPInterface</a></td></tr>
<tr class="separator:a60944ecdcad88cfb4d4d32feea70c9b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1a3e0a695903c8e6effd524a7f92784"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ae1a3e0a695903c8e6effd524a7f92784">GLPKInterface</a></td></tr>
<tr class="separator:ae1a3e0a695903c8e6effd524a7f92784"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a236f9752f4df4c5134617330a040ec8a"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a236f9752f4df4c5134617330a040ec8a">SCIPInterface</a></td></tr>
<tr class="separator:a236f9752f4df4c5134617330a040ec8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c083b37243075a00bf909840dc7c933"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a5c083b37243075a00bf909840dc7c933">SLMInterface</a></td></tr>
<tr class="separator:a5c083b37243075a00bf909840dc7c933"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac28a56eeedb62d070578a9231f1875ea"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ac28a56eeedb62d070578a9231f1875ea">GurobiInterface</a></td></tr>
<tr class="separator:ac28a56eeedb62d070578a9231f1875ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7cbd08108e1636184f28c1a71c42393"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#ae7cbd08108e1636184f28c1a71c42393">CplexInterface</a></td></tr>
<tr class="separator:ae7cbd08108e1636184f28c1a71c42393"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c754b527a347994b06eeb49a09ac222"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a6c754b527a347994b06eeb49a09ac222">GLOPInterface</a></td></tr>
<tr class="separator:a6c754b527a347994b06eeb49a09ac222"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7383308e6b9b63b18196798db342ce8a"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#a7383308e6b9b63b18196798db342ce8a">BopInterface</a></td></tr>
<tr class="separator:a7383308e6b9b63b18196798db342ce8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbd4413b1370baca9c45aecb0cb8ebd2"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#acbd4413b1370baca9c45aecb0cb8ebd2">SatInterface</a></td></tr>
<tr class="separator:acbd4413b1370baca9c45aecb0cb8ebd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee1ddf25e86286c16face31551751bda"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1MPObjective.html#aee1ddf25e86286c16face31551751bda">KnapsackInterface</a></td></tr>
<tr class="separator:aee1ddf25e86286c16face31551751bda"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9e03dec6fb0099d48a119dd525879dd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e03dec6fb0099d48a119dd525879dd7">&#9670;&nbsp;</a></span>AddLinearExpr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::AddLinearExpr </td>
<td>(</td>
<td class="paramtype">const LinearExpr &amp;&#160;</td>
<td class="paramname"><em>linear_expr</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Adds linear_expr to the current objective, does not change the direction. </p>
</div>
</div>
<a id="a1ab47aaf7b73ae8a2664dd262227e3a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ab47aaf7b73ae8a2664dd262227e3a9">&#9670;&nbsp;</a></span>BestBound()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double operations_research::MPObjective::BestBound </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the best objective bound. </p>
<p>In case of minimization, it is a lower bound on the objective value of the optimal integer solution. Only available for discrete problems. </p>
</div>
</div>
<a id="a2131c9028ff6d7047c8272c3ea3e62e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2131c9028ff6d7047c8272c3ea3e62e3">&#9670;&nbsp;</a></span>Clear()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::Clear </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Clears the offset, all variables and coefficients, and the optimization direction. </p>
</div>
</div>
<a id="aba6c839cf1c09f5d48ff6072cd6b28c5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba6c839cf1c09f5d48ff6072cd6b28c5">&#9670;&nbsp;</a></span>GetCoefficient()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double operations_research::MPObjective::GetCoefficient </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1MPVariable.html">MPVariable</a> *const&#160;</td>
<td class="paramname"><em>var</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the coefficient of a given variable in the objective. </p>
<p>It returns 0 if the variable does not appear in the objective). </p>
</div>
</div>
<a id="a883fc7ee2a166fc6ff257296f78e9565"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a883fc7ee2a166fc6ff257296f78e9565">&#9670;&nbsp;</a></span>maximization()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool operations_research::MPObjective::maximization </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Is the optimization direction set to maximize? </p>
</div>
</div>
<a id="a6927f7e28f694c55d72496c94a9a6b01"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6927f7e28f694c55d72496c94a9a6b01">&#9670;&nbsp;</a></span>MaximizeLinearExpr()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::MaximizeLinearExpr </td>
<td>(</td>
<td class="paramtype">const LinearExpr &amp;&#160;</td>
<td class="paramname"><em>linear_expr</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Resets the current objective to maximize linear_expr. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00970">970</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a700788b8583ef4c69730be08a1a3ac28"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a700788b8583ef4c69730be08a1a3ac28">&#9670;&nbsp;</a></span>minimization()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool operations_research::MPObjective::minimization </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Is the optimization direction set to minimize? </p>
</div>
</div>
<a id="a19a354c154bf034196d7a273feeff737"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a19a354c154bf034196d7a273feeff737">&#9670;&nbsp;</a></span>MinimizeLinearExpr()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::MinimizeLinearExpr </td>
<td>(</td>
<td class="paramtype">const LinearExpr &amp;&#160;</td>
<td class="paramname"><em>linear_expr</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Resets the current objective to minimize linear_expr. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00976">976</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a8d6bb2249af13a783033763d292763d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8d6bb2249af13a783033763d292763d4">&#9670;&nbsp;</a></span>offset()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double operations_research::MPObjective::offset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the constant term in the objective. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00959">959</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="ab1829576c2533e5de48b38447d9f6823"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1829576c2533e5de48b38447d9f6823">&#9670;&nbsp;</a></span>OptimizeLinearExpr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::OptimizeLinearExpr </td>
<td>(</td>
<td class="paramtype">const LinearExpr &amp;&#160;</td>
<td class="paramname"><em>linear_expr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_maximization</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Resets the current objective to take the value of linear_expr, and sets the objective direction to maximize if "is_maximize", otherwise minimizes. </p>
</div>
</div>
<a id="aad1b0ca33b3a2c45d91e2875feb98c66"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aad1b0ca33b3a2c45d91e2875feb98c66">&#9670;&nbsp;</a></span>SetCoefficient()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::SetCoefficient </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classoperations__research_1_1MPVariable.html">MPVariable</a> *const&#160;</td>
<td class="paramname"><em>var</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>coeff</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the coefficient of the variable in the objective. </p>
<p>If the variable does not belong to the solver, the function just returns, or crashes in non-opt mode. </p>
</div>
</div>
<a id="a7f1396f72628328fd85ac852191fcc70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f1396f72628328fd85ac852191fcc70">&#9670;&nbsp;</a></span>SetMaximization()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::SetMaximization </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the optimization direction to maximize. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00998">998</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="af9eea25e667a52dcad270495025e1202"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9eea25e667a52dcad270495025e1202">&#9670;&nbsp;</a></span>SetMinimization()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::SetMinimization </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the optimization direction to minimize. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00993">993</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a24611f7b12b571fe1e73b629a8a6c17b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24611f7b12b571fe1e73b629a8a6c17b">&#9670;&nbsp;</a></span>SetOffset()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::SetOffset </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the constant term in the objective. </p>
</div>
</div>
<a id="add0f9517dc64b1f768952fc490f7be00"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add0f9517dc64b1f768952fc490f7be00">&#9670;&nbsp;</a></span>SetOptimizationDirection()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void operations_research::MPObjective::SetOptimizationDirection </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>maximize</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the optimization direction (maximize: true or minimize: false). </p>
</div>
</div>
<a id="ae1f99be84ce9efa28b4c1050af954835"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1f99be84ce9efa28b4c1050af954835">&#9670;&nbsp;</a></span>terms()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const absl::flat_hash_map&lt;const <a class="el" href="classoperations__research_1_1MPVariable.html">MPVariable</a> *, double&gt;&amp; operations_research::MPObjective::terms </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns a map from variables to their coefficients in the objective. </p>
<p>If a variable is not present in the map, then its coefficient is zero. </p>
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l00947">947</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a43fd3a9687cfef2591b22c96cbe02477"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43fd3a9687cfef2591b22c96cbe02477">&#9670;&nbsp;</a></span>Value()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double operations_research::MPObjective::Value </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the objective value of the best solution found so far. </p>
<p>It is the optimal objective value if the problem has been solved to optimality.</p>
<p>Note: the objective value may be slightly different than what you could compute yourself using <code><a class="el" href="classoperations__research_1_1MPVariable.html#a9c7aabb1c218e733e719ce2966939586" title="Returns the value of the variable in the current solution.">MPVariable::solution_value()</a></code>; please use the &ndash;verify_solution flag to gain confidence about the numerical stability of your solution. </p>
</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="a7383308e6b9b63b18196798db342ce8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7383308e6b9b63b18196798db342ce8a">&#9670;&nbsp;</a></span>BopInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class BopInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01041">1041</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="af5a7cf0c655f37c0b388a2ddcf32ac3e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5a7cf0c655f37c0b388a2ddcf32ac3e">&#9670;&nbsp;</a></span>CBCInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class CBCInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01033">1033</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a60944ecdcad88cfb4d4d32feea70c9b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60944ecdcad88cfb4d4d32feea70c9b5">&#9670;&nbsp;</a></span>CLPInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class CLPInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01034">1034</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="ae7cbd08108e1636184f28c1a71c42393"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae7cbd08108e1636184f28c1a71c42393">&#9670;&nbsp;</a></span>CplexInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class CplexInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01039">1039</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a6c754b527a347994b06eeb49a09ac222"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c754b527a347994b06eeb49a09ac222">&#9670;&nbsp;</a></span>GLOPInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class GLOPInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01040">1040</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="ae1a3e0a695903c8e6effd524a7f92784"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae1a3e0a695903c8e6effd524a7f92784">&#9670;&nbsp;</a></span>GLPKInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class GLPKInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01035">1035</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="ac28a56eeedb62d070578a9231f1875ea"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac28a56eeedb62d070578a9231f1875ea">&#9670;&nbsp;</a></span>GurobiInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class GurobiInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01038">1038</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="aee1ddf25e86286c16face31551751bda"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aee1ddf25e86286c16face31551751bda">&#9670;&nbsp;</a></span>KnapsackInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class KnapsackInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01043">1043</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="ac2c01b4de8f7670e37daa7d42b804dd4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2c01b4de8f7670e37daa7d42b804dd4">&#9670;&nbsp;</a></span>MPSolver</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class <a class="el" href="classoperations__research_1_1MPSolver.html">MPSolver</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01031">1031</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="ac0aea0786e75adbb2d24c41c15e7456c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0aea0786e75adbb2d24c41c15e7456c">&#9670;&nbsp;</a></span>MPSolverInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class <a class="el" href="classoperations__research_1_1MPSolverInterface.html">MPSolverInterface</a></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01032">1032</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="acbd4413b1370baca9c45aecb0cb8ebd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acbd4413b1370baca9c45aecb0cb8ebd2">&#9670;&nbsp;</a></span>SatInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class SatInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01042">1042</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a236f9752f4df4c5134617330a040ec8a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a236f9752f4df4c5134617330a040ec8a">&#9670;&nbsp;</a></span>SCIPInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class SCIPInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01036">1036</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<a id="a5c083b37243075a00bf909840dc7c933"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c083b37243075a00bf909840dc7c933">&#9670;&nbsp;</a></span>SLMInterface</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">friend class SLMInterface</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="linear__solver_8h_source.html#l01037">1037</a> of file <a class="el" href="linear__solver_8h_source.html">linear_solver.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="linear__solver_8h_source.html">linear_solver.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>