diff --git a/.github/workflows/test_branches.yml b/.github/workflows/test_branches.yml index 1d6b1da05dc..25acb5e5204 100644 --- a/.github/workflows/test_branches.yml +++ b/.github/workflows/test_branches.yml @@ -77,7 +77,8 @@ jobs: # Exclude: # - Jenkins because it's behind a firewall # - RTD because a magically-generated string triggers failures - exclude_urls: https://pyomo-jenkins.sandia.gov/,https://pyomo.readthedocs.io/en/%s/errors.html + # - scipopt.org as they perform "validation" on the webclient (which fails) + exclude_urls: https://pyomo-jenkins.sandia.gov/,https://pyomo.readthedocs.io/en/%s/errors.html,https://www.scipopt.org # Exclude: # - All gnu.org links because they consistently fail the checker # - All lpsolve.sourceforge.net links because SF appears to reject from GHA diff --git a/.github/workflows/test_pr_and_main.yml b/.github/workflows/test_pr_and_main.yml index c015b579a61..7349443c7ac 100644 --- a/.github/workflows/test_pr_and_main.yml +++ b/.github/workflows/test_pr_and_main.yml @@ -89,7 +89,8 @@ jobs: # Exclude: # - Jenkins because it's behind a firewall # - RTD because a magically-generated string triggers failures - exclude_urls: https://pyomo-jenkins.sandia.gov/,https://pyomo.readthedocs.io/en/%s/errors.html + # - scipopt.org as they perform "validation" on the webclient (which fails) + exclude_urls: https://pyomo-jenkins.sandia.gov/,https://pyomo.readthedocs.io/en/%s/errors.html,https://www.scipopt.org # Exclude: # - All gnu.org links because they consistently fail the checker # - All lpsolve.sourceforge.net links because SF appears to reject from GHA diff --git a/.github/workflows/url_check.yml b/.github/workflows/url_check.yml index daf7e74c7a8..de87596955c 100644 --- a/.github/workflows/url_check.yml +++ b/.github/workflows/url_check.yml @@ -40,7 +40,8 @@ jobs: # Exclude: # - Jenkins because it's behind a firewall # - RTD because a magically-generated string triggers failures - exclude_urls: https://pyomo-jenkins.sandia.gov/,https://pyomo.readthedocs.io/en/%s/errors.html + # - scipopt.org as they perform "validation" on the webclient (which fails) + exclude_urls: https://pyomo-jenkins.sandia.gov/,https://pyomo.readthedocs.io/en/%s/errors.html,https://www.scipopt.org # Exclude: # - All gnu.org links because they consistently fail the checker # - All lpsolve.sourceforge.net links because SF appears to reject from GHA diff --git a/doc/OnlineDocs/explanation/analysis/doe/doe.rst b/doc/OnlineDocs/explanation/analysis/doe/doe.rst index 7cefb99e418..6d8ef5a435b 100644 --- a/doc/OnlineDocs/explanation/analysis/doe/doe.rst +++ b/doc/OnlineDocs/explanation/analysis/doe/doe.rst @@ -15,11 +15,10 @@ Significant improvements and extensions were contributed by **Dan Laky**, and `Process Optimization & Modeling for Minerals Sustainability (PrOMMiS) `_ project and the `University of Notre Dame `_. -If you use Pyomo.DoE, please cite: - -[Wang and Dowling, 2022] Wang, Jialu, and Alexander W. Dowling. -"Pyomo.DOE: An open‐source package for model‐based design of experiments in Python." -AIChE Journal 68.12 (2022): e17813. `https://doi.org/10.1002/aic.17813` +If you use Pyomo.DoE, please cite the [PyomoDOE-paper]_: + Wang, Jialu, and Alexander W. Dowling. "Pyomo.DOE: An open‐source + package for model‐based design of experiments in Python", *AIChE Journal*, + 68(12), e17813. 2022. DOI `10.1002/aic.17813 `_ Index of Pyomo.DoE documentation ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -32,4 +31,4 @@ Index of Pyomo.DoE documentation abstraction.rst objective.rst multexp.rst - uncertainty.rst \ No newline at end of file + uncertainty.rst diff --git a/doc/OnlineDocs/explanation/analysis/doe/guide.rst b/doc/OnlineDocs/explanation/analysis/doe/guide.rst index f7c593a00f6..2e29d09f2a5 100644 --- a/doc/OnlineDocs/explanation/analysis/doe/guide.rst +++ b/doc/OnlineDocs/explanation/analysis/doe/guide.rst @@ -16,7 +16,8 @@ MBDoE analysis. This is in line with the convention used in the parameter estima An example of the subclassed :class:`Experiment` object that builds and labels the model is shown in the next few sections. -This guide illustrates the use of Pyomo.DoE using a reaction kinetics example ([WD22]_). +This guide illustrates the use of Pyomo.DoE using a reaction kinetics +example ([PyomoDOE-paper]_). .. math:: :nowrap: diff --git a/doc/OnlineDocs/explanation/analysis/doe/overview.rst b/doc/OnlineDocs/explanation/analysis/doe/overview.rst index f108b05920c..1779e98b734 100644 --- a/doc/OnlineDocs/explanation/analysis/doe/overview.rst +++ b/doc/OnlineDocs/explanation/analysis/doe/overview.rst @@ -127,4 +127,5 @@ We can use the FIM or the covariance matrix to define the design criteria. A confidence ellipse is a geometric representation of the uncertainty in parameter estimates. It is derived from the covariance matrix :math:`\mathbf{V}`. -In order to solve problems of the above, Pyomo.DoE implements the 2-stage stochastic program. Please see [WD22]_ for details. \ No newline at end of file +In order to solve problems of the above, Pyomo.DoE implements the +2-stage stochastic program. Please see [PyomoDOE-paper]_ for details. diff --git a/doc/OnlineDocs/explanation/solvers/mindtpy.rst b/doc/OnlineDocs/explanation/solvers/mindtpy.rst index 60a3f0a816a..99fc2b403c0 100644 --- a/doc/OnlineDocs/explanation/solvers/mindtpy.rst +++ b/doc/OnlineDocs/explanation/solvers/mindtpy.rst @@ -255,10 +255,7 @@ Augmented Penalty refers to the introduction of (non-negative) slack variables o Global Outer-Approximation ^^^^^^^^^^^^^^^^^^^^^^^^^^ -Apart from the decomposition methods for convex MINLP problems [`Kronqvist et al., 2019`_], MindtPy provides an implementation of Global Outer Approximation (GOA) as described in [`Kesavan & Allgor, 2004`_], to provide optimality guaranteed for nonconvex MINLP problems. Here, the validity of the Mixed-integer Linear Programming relaxation of the original problem is guaranteed via the usage of Generalized McCormick envelopes, computed using the :ref:`interface to the MC++ package `. The NLP subproblems, in this case, need to be solved to global optimality, which can be achieved through global NLP solvers such as `BARON`_ or `SCIP`_. - -.. _BARON: https://minlp.com/baron-solver -.. _SCIP: https://www.scipopt.org/ +Apart from the decomposition methods for convex MINLP problems [`Kronqvist et al., 2019`_], MindtPy provides an implementation of Global Outer Approximation (GOA) as described in [`Kesavan & Allgor, 2004`_], to provide optimality guaranteed for nonconvex MINLP problems. Here, the validity of the Mixed-integer Linear Programming relaxation of the original problem is guaranteed via the usage of Generalized McCormick envelopes, computed using the :ref:`interface to the MC++ package `. The NLP subproblems, in this case, need to be solved to global optimality, which can be achieved through global NLP solvers such as `BARON `__ or `SCIP `__. Convergence diff --git a/doc/OnlineDocs/explanation/solvers/pyros/getting_started.rst b/doc/OnlineDocs/explanation/solvers/pyros/getting_started.rst index fc7dc568260..defe479b343 100644 --- a/doc/OnlineDocs/explanation/solvers/pyros/getting_started.rst +++ b/doc/OnlineDocs/explanation/solvers/pyros/getting_started.rst @@ -14,14 +14,14 @@ Installation In advance of using PyROS to solve robust optimization problems, you will need (at least) one local nonlinear programming (NLP) solver (e.g., -`CONOPT `_, -`IPOPT `_, -`Knitro `_) +`CONOPT `__, +`IPOPT `__, +`Knitro `__) and (at least) one global NLP solver (e.g., -`BARON `_, -`COUENNE `_, -`SCIP `_) +`BARON `__, +`COUENNE `__, +`SCIP `__) installed and licensed on your system. PyROS can be installed as follows: @@ -57,10 +57,10 @@ PyROS can be installed as follows: Some tests involving deterministic NLP solvers may be skipped if - `IPOPT `_, - `BARON `_, + `IPOPT `__, + `BARON `__, or - `SCIP `_ + `SCIP `__ is not pre-installed and licensed on your system. diff --git a/doc/OnlineDocs/getting_started/solvers.rst b/doc/OnlineDocs/getting_started/solvers.rst index 8183905c093..73602ba2eb3 100644 --- a/doc/OnlineDocs/getting_started/solvers.rst +++ b/doc/OnlineDocs/getting_started/solvers.rst @@ -79,13 +79,11 @@ the license requirements for their desired solver. * - SCIP (Command-line) - N/A - ``conda install ‑c conda‑forge scip`` - - `License `__ - `Docs `__ + - (see `SCIP `__ project) * - SCIP (Python) - ``pip install pyscipopt`` - ``conda install ‑c conda‑forge pyscipopt`` - - `License `__ - `Docs `__ + - (see `SCIP `__ project) * - XPRESS - ``pip install xpress`` - ``conda install ‑c fico‑xpress xpress`` diff --git a/doc/OnlineDocs/reference/bibliography.rst b/doc/OnlineDocs/reference/bibliography.rst index 2c98bac63d6..bafa85198da 100644 --- a/doc/OnlineDocs/reference/bibliography.rst +++ b/doc/OnlineDocs/reference/bibliography.rst @@ -39,6 +39,10 @@ These publications describe various Pyomo capabilities or subpackages: and algebraic equations", *Mathematical Programming Computation*, 10(2), 187-223. 2018. +.. [PyomoDOE-paper] Wang, Jialu, and Alexander W. Dowling. "Pyomo.DOE: An open‐source + package for model‐based design of experiments in Python", *AIChE Journal*, + 68(12), e17813. 2022. DOI `10.1002/aic.17813 `_ + .. [Parmest-paper] Katherine A. Klise, Bethany L. Nicholson, Andrea Staid, David L.Woodruff. "Parmest: Parameter Estimation Via Pyomo." *Computer Aided Chemical Engineering*, 47, 41-46. 2019. @@ -179,7 +183,3 @@ Bibliography .. [NW99] Nocedal, Jorge, and Stephen J. Wright, eds. Numerical optimization. New York, NY: Springer New York, 1999. - -.. [WD22] Wang, Jialu, and Alexander W. Dowling. "Pyomo.DOE: An open‐source - package for model‐based design of experiments in Python", *AIChE Journal*, - 68(12), e17813. 2022. DOI `10.1002/aic.17813Y `_