Skip to content

Commit

Permalink
Update documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed Aug 31, 2024
1 parent ab29e40 commit 72d241d
Show file tree
Hide file tree
Showing 15 changed files with 134 additions and 76 deletions.
2 changes: 1 addition & 1 deletion CaseStudies/a_blending_problem.html
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@
<div itemprop="articleBody">

<section id="a-blending-problem">
<h1>A Blending Problem<a class="headerlink" href="#a-blending-problem" title="Link to this heading"></a></h1>
<span id="blending-problem"></span><h1>A Blending Problem<a class="headerlink" href="#a-blending-problem" title="Link to this heading"></a></h1>
<section id="problem-description">
<h2>Problem Description<a class="headerlink" href="#problem-description" title="Link to this heading"></a></h2>
<img alt="../_images/whiskas_label.jpg" src="../_images/whiskas_label.jpg" />
Expand Down
2 changes: 2 additions & 0 deletions _sources/CaseStudies/a_blending_problem.rst.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _blending_problem:

A Blending Problem
===================

Expand Down
36 changes: 28 additions & 8 deletions _sources/index.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,21 @@
Optimization with PuLP
----------------------

You can begin learning Python and using PuLP
by looking at the content below. We recommend that you read The Optimisation Process,
Optimisation Concepts, and the Introduction to Python
before beginning the case-studies. For instructions for the installation of PuLP
see :ref:`installation`.

The full PuLP function documentation is available, and useful functions
will be explained in the case studies.
PuLP is an linear and mixed integer programming modeler written in Python.

With PuLP, it is simple to create MILP optimisation problems and solve them with the
latest open-source (or proprietary) solvers. PuLP can generate MPS or LP files and
call solvers such as GLPK_, COIN-OR CLP/`CBC`_, CPLEX_, GUROBI_, MOSEK_, XPRESS_,
CHOCO_, MIPCL_, HiGHS_, SCIP_/FSCIP_.

Here are some ways to get started using PuLP:

* for instructions about installing PuLP see :ref:`installation`.
* If you're new to Python and optimisation we recommend that you read :ref:`optimisation_concepts`, :ref:`optimisation_process`, and the :ref:`getting_started_with_python`.
* If you want to jump right in then start reading the case studies starting with :ref:`blending_problem`.

The full PuLP API documentation is available, and useful functions
are also explained in the case studies.
The case studies are in order, so the later case studies will assume you have
(at least) read the earlier case studies. However, we will provide links to any
relevant information you will need.
Expand All @@ -34,3 +41,16 @@ Authors
The authors of this documentation (the pulp documentation team) include:

.. include:: AUTHORS.txt


.. _GLPK: http://www.gnu.org/software/glpk/glpk.html
.. _CBC: https://github.com/coin-or/Cbc
.. _CPLEX: http://www.cplex.com/
.. _GUROBI: http://www.gurobi.com/
.. _MOSEK: https://www.mosek.com/
.. _XPRESS: https://www.fico.com/es/products/fico-xpress-solver
.. _CHOCO: https://choco-solver.org/
.. _MIPCL: http://mipcl-cpp.appspot.com/
.. _SCIP: https://www.scipopt.org/
.. _HiGHS: https://highs.dev
.. _FSCIP: https://ug.zib.de
3 changes: 3 additions & 0 deletions _sources/main/basic_python_coding.rst.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
.. _getting_started_with_python:


Basic Python Coding
===================

Expand Down
2 changes: 2 additions & 0 deletions _sources/main/optimisation_concepts.rst.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
.. _optimisation_concepts:

Optimisation Concepts
=====================

Expand Down
3 changes: 3 additions & 0 deletions _sources/main/the_optimisation_process.rst.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
.. _optimisation_process:


The Optimisation Process
========================

Expand Down
7 changes: 4 additions & 3 deletions _static/searchtools.js
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ const Search = {

htmlToText: (htmlString, anchor) => {
const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html');
for (const removalQuery of [".headerlinks", "script", "style"]) {
for (const removalQuery of [".headerlink", "script", "style"]) {
htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() });
}
if (anchor) {
Expand Down Expand Up @@ -328,13 +328,14 @@ const Search = {
for (const [title, foundTitles] of Object.entries(allTitles)) {
if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) {
for (const [file, id] of foundTitles) {
let score = Math.round(100 * queryLower.length / title.length)
const score = Math.round(Scorer.title * queryLower.length / title.length);
const boost = titles[file] === title ? 1 : 0; // add a boost for document titles
normalResults.push([
docNames[file],
titles[file] !== title ? `${titles[file]} > ${title}` : title,
id !== null ? "#" + id : "",
null,
score,
score + boost,
filenames[file],
]);
}
Expand Down
20 changes: 13 additions & 7 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -82,13 +82,19 @@

<section id="optimization-with-pulp">
<h1>Optimization with PuLP<a class="headerlink" href="#optimization-with-pulp" title="Link to this heading"></a></h1>
<p>You can begin learning Python and using PuLP
by looking at the content below. We recommend that you read The Optimisation Process,
Optimisation Concepts, and the Introduction to Python
before beginning the case-studies. For instructions for the installation of PuLP
see <a class="reference internal" href="main/installing_pulp_at_home.html#installation"><span class="std std-ref">Installing PuLP at Home</span></a>.</p>
<p>The full PuLP function documentation is available, and useful functions
will be explained in the case studies.
<p>PuLP is an linear and mixed integer programming modeler written in Python.</p>
<p>With PuLP, it is simple to create MILP optimisation problems and solve them with the
latest open-source (or proprietary) solvers. PuLP can generate MPS or LP files and
call solvers such as <a class="reference external" href="http://www.gnu.org/software/glpk/glpk.html">GLPK</a>, COIN-OR CLP/<a class="reference external" href="https://github.com/coin-or/Cbc">CBC</a>, <a class="reference external" href="http://www.cplex.com/">CPLEX</a>, <a class="reference external" href="http://www.gurobi.com/">GUROBI</a>, <a class="reference external" href="https://www.mosek.com/">MOSEK</a>, <a class="reference external" href="https://www.fico.com/es/products/fico-xpress-solver">XPRESS</a>,
<a class="reference external" href="https://choco-solver.org/">CHOCO</a>, <a class="reference external" href="http://mipcl-cpp.appspot.com/">MIPCL</a>, <a class="reference external" href="https://highs.dev">HiGHS</a>, <a class="reference external" href="https://www.scipopt.org/">SCIP</a>/<a class="reference external" href="https://ug.zib.de">FSCIP</a>.</p>
<p>Here are some ways to get started using PuLP:</p>
<ul class="simple">
<li><p>for instructions about installing PuLP see <a class="reference internal" href="main/installing_pulp_at_home.html#installation"><span class="std std-ref">Installing PuLP at Home</span></a>.</p></li>
<li><p>If you’re new to Python and optimisation we recommend that you read <a class="reference internal" href="main/optimisation_concepts.html#optimisation-concepts"><span class="std std-ref">Optimisation Concepts</span></a>, <a class="reference internal" href="main/the_optimisation_process.html#optimisation-process"><span class="std std-ref">The Optimisation Process</span></a>, and the <a class="reference internal" href="main/basic_python_coding.html#getting-started-with-python"><span class="std std-ref">Basic Python Coding</span></a>.</p></li>
<li><p>If you want to jump right in then start reading the case studies starting with <a class="reference internal" href="CaseStudies/a_blending_problem.html#blending-problem"><span class="std std-ref">A Blending Problem</span></a>.</p></li>
</ul>
<p>The full PuLP API documentation is available, and useful functions
are also explained in the case studies.
The case studies are in order, so the later case studies will assume you have
(at least) read the earlier case studies. However, we will provide links to any
relevant information you will need.</p>
Expand Down
2 changes: 1 addition & 1 deletion main/basic_python_coding.html
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@
<div itemprop="articleBody">

<section id="basic-python-coding">
<h1>Basic Python Coding<a class="headerlink" href="#basic-python-coding" title="Link to this heading"></a></h1>
<span id="getting-started-with-python"></span><h1>Basic Python Coding<a class="headerlink" href="#basic-python-coding" title="Link to this heading"></a></h1>
<p>In this course you will learn basic programming in Python, but there is also
excellent Python Language reference material available on the internet freely.
You can download the book <a class="reference external" href="http://www.diveintopython.org/">Dive Into Python</a>
Expand Down
Loading

0 comments on commit 72d241d

Please sign in to comment.