|
|
|
|
|
<!DOCTYPE html>
|
|
|
|
|
|
<html>
|
|
|
<head>
|
|
|
<meta charset="utf-8" />
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
|
<title>2. Maximum Weight Stable Set — MIPLearn<br/><small>0.2.0</small></title>
|
|
|
|
|
|
<link href="../../_static/css/theme.css" rel="stylesheet" />
|
|
|
<link href="../../_static/css/index.c5995385ac14fb8791e8eb36b4908be2.css" rel="stylesheet" />
|
|
|
|
|
|
|
|
|
<link rel="stylesheet"
|
|
|
href="../../_static/vendor/fontawesome/5.13.0/css/all.min.css">
|
|
|
<link rel="preload" as="font" type="font/woff2" crossorigin
|
|
|
href="../../_static/vendor/fontawesome/5.13.0/webfonts/fa-solid-900.woff2">
|
|
|
<link rel="preload" as="font" type="font/woff2" crossorigin
|
|
|
href="../../_static/vendor/fontawesome/5.13.0/webfonts/fa-brands-400.woff2">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
|
|
|
<link rel="stylesheet" href="../../_static/sphinx-book-theme.acff12b8f9c144ce68a297486a2fa670.css" type="text/css" />
|
|
|
<link rel="stylesheet" type="text/css" href="../../_static/custom.css" />
|
|
|
|
|
|
<link rel="preload" as="script" href="../../_static/js/index.1c5a1a01449ed65a7b51.js">
|
|
|
|
|
|
<script id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
|
|
|
<script src="../../_static/jquery.js"></script>
|
|
|
<script src="../../_static/underscore.js"></script>
|
|
|
<script src="../../_static/doctools.js"></script>
|
|
|
<script crossorigin="anonymous" integrity="sha256-Ae2Vz/4ePdIu6ZyI/5ZGsYnb+m0JlOmKPjt6XZ9JJkA=" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.4/require.min.js"></script>
|
|
|
<script src="../../_static/sphinx-book-theme.12a9622fbb08dcb3a2a40b2c02b83a57.js"></script>
|
|
|
<script async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
|
|
|
<script type="text/x-mathjax-config">MathJax.Hub.Config({"tex2jax": {"inlineMath": [["\\(", "\\)"]], "displayMath": [["\\[", "\\]"]], "processRefs": false, "processEnvironments": false}})</script>
|
|
|
<link rel="index" title="Index" href="../../genindex/" />
|
|
|
<link rel="search" title="Search" href="../../search/" />
|
|
|
<link rel="next" title="3. Multidimensional Knapsack" href="../knapsack/" />
|
|
|
<link rel="prev" title="1. Preliminaries" href="../preliminaries/" />
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
|
<meta name="docsearch:language" content="en" />
|
|
|
|
|
|
</head>
|
|
|
<body data-spy="scroll" data-target="#bd-toc-nav" data-offset="80">
|
|
|
|
|
|
<div class="container-fluid" id="banner"></div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="container-xl">
|
|
|
<div class="row">
|
|
|
|
|
|
<div class="col-12 col-md-3 bd-sidebar site-navigation show" id="site-navigation">
|
|
|
|
|
|
<div class="navbar-brand-box">
|
|
|
<a class="navbar-brand text-wrap" href="../../">
|
|
|
|
|
|
|
|
|
<h1 class="site-logo" id="site-title">MIPLearn<br/><small>0.2.0</small></h1>
|
|
|
|
|
|
</a>
|
|
|
</div><form class="bd-search d-flex align-items-center" action="../../search/" method="get">
|
|
|
<i class="icon fas fa-search"></i>
|
|
|
<input type="search" class="form-control" name="q" id="search-input" placeholder="Search the docs ..." aria-label="Search the docs ..." autocomplete="off" >
|
|
|
</form><nav class="bd-links" id="bd-docs-nav" aria-label="Main navigation">
|
|
|
<div class="bd-toc-item active">
|
|
|
<p class="caption">
|
|
|
<span class="caption-text">
|
|
|
Julia Tutorials
|
|
|
</span>
|
|
|
</p>
|
|
|
<ul class="nav bd-sidenav">
|
|
|
<li class="toctree-l1">
|
|
|
<a class="reference internal" href="../../jump-tutorials/getting-started/">
|
|
|
1. Getting started with MIPLearn
|
|
|
</a>
|
|
|
</li>
|
|
|
</ul>
|
|
|
<p class="caption">
|
|
|
<span class="caption-text">
|
|
|
Benchmarks
|
|
|
</span>
|
|
|
</p>
|
|
|
<ul class="current nav bd-sidenav">
|
|
|
<li class="toctree-l1">
|
|
|
<a class="reference internal" href="../preliminaries/">
|
|
|
1. Preliminaries
|
|
|
</a>
|
|
|
</li>
|
|
|
<li class="toctree-l1 current active">
|
|
|
<a class="current reference internal" href="#">
|
|
|
2. Maximum Weight Stable Set
|
|
|
</a>
|
|
|
</li>
|
|
|
<li class="toctree-l1">
|
|
|
<a class="reference internal" href="../knapsack/">
|
|
|
3. Multidimensional Knapsack
|
|
|
</a>
|
|
|
</li>
|
|
|
<li class="toctree-l1">
|
|
|
<a class="reference internal" href="../tsp/">
|
|
|
4. Traveling Salesman
|
|
|
</a>
|
|
|
</li>
|
|
|
</ul>
|
|
|
|
|
|
</div>
|
|
|
</nav> <!-- To handle the deprecated key -->
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<main class="col py-md-3 pl-md-4 bd-content overflow-auto" role="main">
|
|
|
|
|
|
<div class="topbar container-xl fixed-top">
|
|
|
<div class="topbar-contents row">
|
|
|
<div class="col-12 col-md-3 bd-topbar-whitespace site-navigation show"></div>
|
|
|
<div class="col pl-md-4 topbar-main">
|
|
|
|
|
|
<button id="navbar-toggler" class="navbar-toggler ml-0" type="button" data-toggle="collapse"
|
|
|
data-toggle="tooltip" data-placement="bottom" data-target=".site-navigation" aria-controls="navbar-menu"
|
|
|
aria-expanded="true" aria-label="Toggle navigation" aria-controls="site-navigation"
|
|
|
title="Toggle navigation" data-toggle="tooltip" data-placement="left">
|
|
|
<i class="fas fa-bars"></i>
|
|
|
<i class="fas fa-arrow-left"></i>
|
|
|
<i class="fas fa-arrow-up"></i>
|
|
|
</button>
|
|
|
|
|
|
|
|
|
<div class="dropdown-buttons-trigger">
|
|
|
<button id="dropdown-buttons-trigger" class="btn btn-secondary topbarbtn" aria-label="Download this page"><i
|
|
|
class="fas fa-download"></i></button>
|
|
|
|
|
|
<div class="dropdown-buttons">
|
|
|
<!-- ipynb file if we had a myst markdown file -->
|
|
|
|
|
|
<!-- Download raw file -->
|
|
|
<a class="dropdown-buttons" href="../../_sources/benchmarks/stab.ipynb.txt"><button type="button"
|
|
|
class="btn btn-secondary topbarbtn" title="Download source file" data-toggle="tooltip"
|
|
|
data-placement="left">.ipynb</button></a>
|
|
|
<!-- Download PDF via print -->
|
|
|
<button type="button" id="download-print" class="btn btn-secondary topbarbtn" title="Print to PDF"
|
|
|
onClick="window.print()" data-toggle="tooltip" data-placement="left">.pdf</button>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<!-- Source interaction buttons -->
|
|
|
|
|
|
<!-- Full screen (wrap in <a> to have style consistency -->
|
|
|
|
|
|
<a class="full-screen-button"><button type="button" class="btn btn-secondary topbarbtn" data-toggle="tooltip"
|
|
|
data-placement="bottom" onclick="toggleFullScreen()" aria-label="Fullscreen mode"
|
|
|
title="Fullscreen mode"><i
|
|
|
class="fas fa-expand"></i></button></a>
|
|
|
|
|
|
<!-- Launch buttons -->
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<!-- Table of contents -->
|
|
|
<div class="d-none d-md-block col-md-2 bd-toc show">
|
|
|
|
|
|
<div class="tocsection onthispage pt-5 pb-3">
|
|
|
<i class="fas fa-list"></i> Contents
|
|
|
</div>
|
|
|
<nav id="bd-toc-nav">
|
|
|
<ul class="visible nav section-nav flex-column">
|
|
|
<li class="toc-h2 nav-item toc-entry">
|
|
|
<a class="reference internal nav-link" href="#Problem-definition">
|
|
|
2.1. Problem definition
|
|
|
</a>
|
|
|
</li>
|
|
|
<li class="toc-h2 nav-item toc-entry">
|
|
|
<a class="reference internal nav-link" href="#Random-instance-generator">
|
|
|
2.2. Random instance generator
|
|
|
</a>
|
|
|
</li>
|
|
|
<li class="toc-h2 nav-item toc-entry">
|
|
|
<a class="reference internal nav-link" href="#Challenge-A">
|
|
|
2.3. Challenge A
|
|
|
</a>
|
|
|
</li>
|
|
|
</ul>
|
|
|
|
|
|
</nav>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div id="main-content" class="row">
|
|
|
<div class="col-12 col-md-9 pl-md-3 pr-md-0">
|
|
|
|
|
|
<div>
|
|
|
|
|
|
|
|
|
<style>
|
|
|
/* CSS for nbsphinx extension */
|
|
|
|
|
|
/* remove conflicting styling from Sphinx themes */
|
|
|
div.nbinput.container div.prompt *,
|
|
|
div.nboutput.container div.prompt *,
|
|
|
div.nbinput.container div.input_area pre,
|
|
|
div.nboutput.container div.output_area pre,
|
|
|
div.nbinput.container div.input_area .highlight,
|
|
|
div.nboutput.container div.output_area .highlight {
|
|
|
border: none;
|
|
|
padding: 0;
|
|
|
margin: 0;
|
|
|
box-shadow: none;
|
|
|
}
|
|
|
|
|
|
div.nbinput.container > div[class*=highlight],
|
|
|
div.nboutput.container > div[class*=highlight] {
|
|
|
margin: 0;
|
|
|
}
|
|
|
|
|
|
div.nbinput.container div.prompt *,
|
|
|
div.nboutput.container div.prompt * {
|
|
|
background: none;
|
|
|
}
|
|
|
|
|
|
div.nboutput.container div.output_area .highlight,
|
|
|
div.nboutput.container div.output_area pre {
|
|
|
background: unset;
|
|
|
}
|
|
|
|
|
|
div.nboutput.container div.output_area div.highlight {
|
|
|
color: unset; /* override Pygments text color */
|
|
|
}
|
|
|
|
|
|
/* avoid gaps between output lines */
|
|
|
div.nboutput.container div[class*=highlight] pre {
|
|
|
line-height: normal;
|
|
|
}
|
|
|
|
|
|
/* input/output containers */
|
|
|
div.nbinput.container,
|
|
|
div.nboutput.container {
|
|
|
display: -webkit-flex;
|
|
|
display: flex;
|
|
|
align-items: flex-start;
|
|
|
margin: 0;
|
|
|
width: 100%;
|
|
|
}
|
|
|
@media (max-width: 540px) {
|
|
|
div.nbinput.container,
|
|
|
div.nboutput.container {
|
|
|
flex-direction: column;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/* input container */
|
|
|
div.nbinput.container {
|
|
|
padding-top: 5px;
|
|
|
}
|
|
|
|
|
|
/* last container */
|
|
|
div.nblast.container {
|
|
|
padding-bottom: 5px;
|
|
|
}
|
|
|
|
|
|
/* input prompt */
|
|
|
div.nbinput.container div.prompt pre {
|
|
|
color: #307FC1;
|
|
|
}
|
|
|
|
|
|
/* output prompt */
|
|
|
div.nboutput.container div.prompt pre {
|
|
|
color: #BF5B3D;
|
|
|
}
|
|
|
|
|
|
/* all prompts */
|
|
|
div.nbinput.container div.prompt,
|
|
|
div.nboutput.container div.prompt {
|
|
|
width: 4.5ex;
|
|
|
padding-top: 5px;
|
|
|
position: relative;
|
|
|
user-select: none;
|
|
|
}
|
|
|
|
|
|
div.nbinput.container div.prompt > div,
|
|
|
div.nboutput.container div.prompt > div {
|
|
|
position: absolute;
|
|
|
right: 0;
|
|
|
margin-right: 0.3ex;
|
|
|
}
|
|
|
|
|
|
@media (max-width: 540px) {
|
|
|
div.nbinput.container div.prompt,
|
|
|
div.nboutput.container div.prompt {
|
|
|
width: unset;
|
|
|
text-align: left;
|
|
|
padding: 0.4em;
|
|
|
}
|
|
|
div.nboutput.container div.prompt.empty {
|
|
|
padding: 0;
|
|
|
}
|
|
|
|
|
|
div.nbinput.container div.prompt > div,
|
|
|
div.nboutput.container div.prompt > div {
|
|
|
position: unset;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/* disable scrollbars on prompts */
|
|
|
div.nbinput.container div.prompt pre,
|
|
|
div.nboutput.container div.prompt pre {
|
|
|
overflow: hidden;
|
|
|
}
|
|
|
|
|
|
/* input/output area */
|
|
|
div.nbinput.container div.input_area,
|
|
|
div.nboutput.container div.output_area {
|
|
|
-webkit-flex: 1;
|
|
|
flex: 1;
|
|
|
overflow: auto;
|
|
|
}
|
|
|
@media (max-width: 540px) {
|
|
|
div.nbinput.container div.input_area,
|
|
|
div.nboutput.container div.output_area {
|
|
|
width: 100%;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/* input area */
|
|
|
div.nbinput.container div.input_area {
|
|
|
border: 1px solid #e0e0e0;
|
|
|
border-radius: 2px;
|
|
|
/*background: #f5f5f5;*/
|
|
|
}
|
|
|
|
|
|
/* override MathJax center alignment in output cells */
|
|
|
div.nboutput.container div[class*=MathJax] {
|
|
|
text-align: left !important;
|
|
|
}
|
|
|
|
|
|
/* override sphinx.ext.imgmath center alignment in output cells */
|
|
|
div.nboutput.container div.math p {
|
|
|
text-align: left;
|
|
|
}
|
|
|
|
|
|
/* standard error */
|
|
|
div.nboutput.container div.output_area.stderr {
|
|
|
background: #fdd;
|
|
|
}
|
|
|
|
|
|
/* ANSI colors */
|
|
|
.ansi-black-fg { color: #3E424D; }
|
|
|
.ansi-black-bg { background-color: #3E424D; }
|
|
|
.ansi-black-intense-fg { color: #282C36; }
|
|
|
.ansi-black-intense-bg { background-color: #282C36; }
|
|
|
.ansi-red-fg { color: #E75C58; }
|
|
|
.ansi-red-bg { background-color: #E75C58; }
|
|
|
.ansi-red-intense-fg { color: #B22B31; }
|
|
|
.ansi-red-intense-bg { background-color: #B22B31; }
|
|
|
.ansi-green-fg { color: #00A250; }
|
|
|
.ansi-green-bg { background-color: #00A250; }
|
|
|
.ansi-green-intense-fg { color: #007427; }
|
|
|
.ansi-green-intense-bg { background-color: #007427; }
|
|
|
.ansi-yellow-fg { color: #DDB62B; }
|
|
|
.ansi-yellow-bg { background-color: #DDB62B; }
|
|
|
.ansi-yellow-intense-fg { color: #B27D12; }
|
|
|
.ansi-yellow-intense-bg { background-color: #B27D12; }
|
|
|
.ansi-blue-fg { color: #208FFB; }
|
|
|
.ansi-blue-bg { background-color: #208FFB; }
|
|
|
.ansi-blue-intense-fg { color: #0065CA; }
|
|
|
.ansi-blue-intense-bg { background-color: #0065CA; }
|
|
|
.ansi-magenta-fg { color: #D160C4; }
|
|
|
.ansi-magenta-bg { background-color: #D160C4; }
|
|
|
.ansi-magenta-intense-fg { color: #A03196; }
|
|
|
.ansi-magenta-intense-bg { background-color: #A03196; }
|
|
|
.ansi-cyan-fg { color: #60C6C8; }
|
|
|
.ansi-cyan-bg { background-color: #60C6C8; }
|
|
|
.ansi-cyan-intense-fg { color: #258F8F; }
|
|
|
.ansi-cyan-intense-bg { background-color: #258F8F; }
|
|
|
.ansi-white-fg { color: #C5C1B4; }
|
|
|
.ansi-white-bg { background-color: #C5C1B4; }
|
|
|
.ansi-white-intense-fg { color: #A1A6B2; }
|
|
|
.ansi-white-intense-bg { background-color: #A1A6B2; }
|
|
|
|
|
|
.ansi-default-inverse-fg { color: #FFFFFF; }
|
|
|
.ansi-default-inverse-bg { background-color: #000000; }
|
|
|
|
|
|
.ansi-bold { font-weight: bold; }
|
|
|
.ansi-underline { text-decoration: underline; }
|
|
|
|
|
|
|
|
|
div.nbinput.container div.input_area div[class*=highlight] > pre,
|
|
|
div.nboutput.container div.output_area div[class*=highlight] > pre,
|
|
|
div.nboutput.container div.output_area div[class*=highlight].math,
|
|
|
div.nboutput.container div.output_area.rendered_html,
|
|
|
div.nboutput.container div.output_area > div.output_javascript,
|
|
|
div.nboutput.container div.output_area:not(.rendered_html) > img{
|
|
|
padding: 5px;
|
|
|
margin: 0;
|
|
|
}
|
|
|
|
|
|
/* fix copybtn overflow problem in chromium (needed for 'sphinx_copybutton') */
|
|
|
div.nbinput.container div.input_area > div[class^='highlight'],
|
|
|
div.nboutput.container div.output_area > div[class^='highlight']{
|
|
|
overflow-y: hidden;
|
|
|
}
|
|
|
|
|
|
/* hide copybtn icon on prompts (needed for 'sphinx_copybutton') */
|
|
|
.prompt a.copybtn {
|
|
|
display: none;
|
|
|
}
|
|
|
|
|
|
/* Some additional styling taken form the Jupyter notebook CSS */
|
|
|
div.rendered_html table {
|
|
|
border: none;
|
|
|
border-collapse: collapse;
|
|
|
border-spacing: 0;
|
|
|
color: black;
|
|
|
font-size: 12px;
|
|
|
table-layout: fixed;
|
|
|
}
|
|
|
div.rendered_html thead {
|
|
|
border-bottom: 1px solid black;
|
|
|
vertical-align: bottom;
|
|
|
}
|
|
|
div.rendered_html tr,
|
|
|
div.rendered_html th,
|
|
|
div.rendered_html td {
|
|
|
text-align: right;
|
|
|
vertical-align: middle;
|
|
|
padding: 0.5em 0.5em;
|
|
|
line-height: normal;
|
|
|
white-space: normal;
|
|
|
max-width: none;
|
|
|
border: none;
|
|
|
}
|
|
|
div.rendered_html th {
|
|
|
font-weight: bold;
|
|
|
}
|
|
|
div.rendered_html tbody tr:nth-child(odd) {
|
|
|
background: #f5f5f5;
|
|
|
}
|
|
|
div.rendered_html tbody tr:hover {
|
|
|
background: rgba(66, 165, 245, 0.2);
|
|
|
}
|
|
|
</style>
|
|
|
<div class="section" id="Maximum-Weight-Stable-Set">
|
|
|
<h1><span class="section-number">2. </span>Maximum Weight Stable Set<a class="headerlink" href="#Maximum-Weight-Stable-Set" title="Permalink to this headline">¶</a></h1>
|
|
|
<div class="section" id="Problem-definition">
|
|
|
<h2><span class="section-number">2.1. </span>Problem definition<a class="headerlink" href="#Problem-definition" title="Permalink to this headline">¶</a></h2>
|
|
|
<p>Given a simple undirected graph <span class="math notranslate nohighlight">\(G=(V,E)\)</span> and weights <span class="math notranslate nohighlight">\(w \in \mathbb{R}^V\)</span>, the problem is to find a stable set <span class="math notranslate nohighlight">\(S \subseteq V\)</span> that maximizes $ <span class="math">\sum</span>_{v <span class="math">\in `V} w_v$. We recall that a subset :math:`S \subseteq V</span> is a <em>stable set</em> if no two vertices of <span class="math notranslate nohighlight">\(S\)</span> are adjacent. This is one of Karp’s 21 NP-complete problems.</p>
|
|
|
</div>
|
|
|
<div class="section" id="Random-instance-generator">
|
|
|
<h2><span class="section-number">2.2. </span>Random instance generator<a class="headerlink" href="#Random-instance-generator" title="Permalink to this headline">¶</a></h2>
|
|
|
<p>The class <code class="docutils literal notranslate"><span class="pre">MaxWeightStableSetGenerator</span></code> can be used to generate random instances of this problem, with user-specified probability distributions. When the constructor parameter <code class="docutils literal notranslate"><span class="pre">fix_graph=True</span></code> is provided, one random Erdős-Rényi graph <span class="math notranslate nohighlight">\(G_{n,p}\)</span> is generated during the constructor, where <span class="math notranslate nohighlight">\(n\)</span> and <span class="math notranslate nohighlight">\(p\)</span> are sampled from user-provided probability distributions <code class="docutils literal notranslate"><span class="pre">n</span></code> and <code class="docutils literal notranslate"><span class="pre">p</span></code>. To generate each instance, the generator independently samples each <span class="math notranslate nohighlight">\(w_v\)</span> from the user-provided
|
|
|
probability distribution <code class="docutils literal notranslate"><span class="pre">w</span></code>. When <code class="docutils literal notranslate"><span class="pre">fix_graph=False</span></code>, a new random graph is generated for each instance, while the remaining parameters are sampled in the same way.</p>
|
|
|
</div>
|
|
|
<div class="section" id="Challenge-A">
|
|
|
<h2><span class="section-number">2.3. </span>Challenge A<a class="headerlink" href="#Challenge-A" title="Permalink to this headline">¶</a></h2>
|
|
|
<ul class="simple">
|
|
|
<li><p>Fixed random Erdős-Rényi graph <span class="math notranslate nohighlight">\(G_{n,p}\)</span> with <span class="math notranslate nohighlight">\(n=200\)</span> and <span class="math notranslate nohighlight">\(p=5\%\)</span></p></li>
|
|
|
<li><p>Random vertex weights <span class="math notranslate nohighlight">\(w_v \sim U(100, 150)\)</span></p></li>
|
|
|
<li><p>500 training instances, 50 test instances</p></li>
|
|
|
</ul>
|
|
|
<div class="nbinput nblast docutils container">
|
|
|
<div class="prompt highlight-none notranslate"><div class="highlight"><pre><span></span>[ ]:
|
|
|
</pre></div>
|
|
|
</div>
|
|
|
<div class="input_area highlight-ipython3 notranslate"><div class="highlight"><pre>
|
|
|
<span></span><span class="n">MaxWeightStableSetGenerator</span><span class="p">(</span>
|
|
|
<span class="n">w</span><span class="o">=</span><span class="n">uniform</span><span class="p">(</span><span class="n">loc</span><span class="o">=</span><span class="mf">100.</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="mf">50.</span><span class="p">),</span>
|
|
|
<span class="n">n</span><span class="o">=</span><span class="n">randint</span><span class="p">(</span><span class="n">low</span><span class="o">=</span><span class="mi">200</span><span class="p">,</span> <span class="n">high</span><span class="o">=</span><span class="mi">201</span><span class="p">),</span>
|
|
|
<span class="n">p</span><span class="o">=</span><span class="n">uniform</span><span class="p">(</span><span class="n">loc</span><span class="o">=</span><span class="mf">0.05</span><span class="p">,</span> <span class="n">scale</span><span class="o">=</span><span class="mf">0.0</span><span class="p">),</span>
|
|
|
<span class="n">fix_graph</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
|
|
|
<span class="p">)</span>
|
|
|
</pre></div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
<div class='prev-next-bottom'>
|
|
|
|
|
|
<a class='left-prev' id="prev-link" href="../preliminaries/" title="previous page"><span class="section-number">1. </span>Preliminaries</a>
|
|
|
<a class='right-next' id="next-link" href="../knapsack/" title="next page"><span class="section-number">3. </span>Multidimensional Knapsack</a>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
</div>
|
|
|
<footer class="footer mt-5 mt-md-0">
|
|
|
<div class="container">
|
|
|
<p>
|
|
|
|
|
|
© Copyright 2020-2021, UChicago Argonne, LLC.<br/>
|
|
|
</p>
|
|
|
</div>
|
|
|
</footer>
|
|
|
</main>
|
|
|
|
|
|
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
<script src="../../_static/js/index.1c5a1a01449ed65a7b51.js"></script>
|
|
|
|
|
|
|
|
|
</body>
|
|
|
</html> |