banner



Springer Mathematical Logic Solutions Pdf

Abstract

We present three core principles for engineering-oriented integrated modeling and optimization tool sets—intuitive modeling contexts, systematic computer-aided reformulations, and flexible solution strategies—and describe how new developments in Pyomo.GDP for Generalized Disjunctive Programming (GDP) advance this vision. We describe a new logical expression system implementation for Pyomo.GDP allowing for a more intuitive description of logical propositions. The logical expression system supports automated reformulation of these logical constraints to linear constraints. We also describe two new logic-based global optimization solver implementations built on Pyomo.GDP that exploit logical structure to avoid "zero-flow" numerical difficulties that arise in nonlinear network design problems when nodes or streams disappear. These new solvers also demonstrate the capability to link to external libraries for expanded functionality within an integrated implementation. We present these new solvers in the context of a flexible array of solution paths available to GDP models. Finally, we present results on a new library of GDP models demonstrating the value of multiple solution approaches.

Access options

Buy single article

Instant access to the full article PDF.

34,95 €

Price includes VAT (Singapore)
Tax calculation will be finalised during checkout.

References

  1. Balas E (2018) Disjunctive programming. Springer International Publishing, Cham, https://doi.org/10.1007/978-3-030-00148-3

    Article  MATH  Google Scholar

  2. Barrett C, Fontaine P, Tinelli C (2017) The SMT-LIB standard: version 2.6. Technical report, Department of Computer Science, The University of Iowa

  3. Barttfeld M, Aguirre PA, Grossmann IE (2003) Alternative representations and formulations for the economic optimization of multicomponent distillation columns. Comput Chem Eng 27(3):363–383

    Article  Google Scholar

  4. Beaumont N (1990) An algorithm for disjunctive programs. Eur J Oper Res 48(3):362–371. https://doi.org/10.1016/0377-2217(90)90419-C

    Article  MATH  Google Scholar

  5. Belotti P, Bonami P, Fischetti M, Lodi A, Monaci M, Nogales-Gómez A, Salvagnin D (2016) On handling indicator constraints in mixed integer programming. Comput Optim Appl 65(3):545–566. https://doi.org/10.1007/s10589-016-9847-8

    MathSciNet  Article  MATH  Google Scholar

  6. Bergamini ML, Aguirre P, Grossmann I (2005) Logic-based outer approximation for globally optimal synthesis of process networks. Comput Chem Eng 29(9):1914–1933

    Article  Google Scholar

  7. Bernal DE, Chen Q, Gong F, Grossmann IE (2018) Mixed-integer nonlinear decomposition toolbox for Pyomo (MindtPy). Comput Aided Chem Eng 44(1):895–900. https://doi.org/10.1016/B978-0-444-64241-7.50144-0

    Article  Google Scholar

  8. Bernal DE, Vigerske S, Trespalacios F, Grossmann IE (2019) Improving the performance of DICOPT in convex MINLP problems using a feasibility pump. Optim Methods Softw. https://doi.org/10.1080/10556788.2019.1641498

    Article  MATH  Google Scholar

  9. Biegler LT, Grossmann IE (2004) Retrospective on optimization. Comput Chem Eng 28(8):1169–1192

    Article  Google Scholar

  10. Bisschop J, Roelofs M (2006) AIMMS-user's guide

  11. Bonami P, Lodi A, Tramontani A, Wiese S (2015) On mathematical programming with indicator constraints. Math Prog 151(1):191–223. https://doi.org/10.1007/s10107-015-0891-4

    MathSciNet  Article  MATH  Google Scholar

  12. Boukouvala F, Misener R, Floudas CA (2016) Global optimization advances in Mixed-Integer Nonlinear Programming, MINLP, and Constrained Derivative-Free. Optimization CDFO. Eur J Oper Res 252(3):701–727. https://doi.org/10.1016/j.ejor.2015.12.018

    MathSciNet  Article  MATH  Google Scholar

  13. Brook A, Kendrick D, Meeraus A (1988) GAMS, a user's guide. ACM SIGNUM Newslett 23(3–4):10–11. https://doi.org/10.1145/58859.58863

    Article  Google Scholar

  14. Chachuat B (2019) MC++ (version 2.0): toolkit for construction, manipulation and bounding of factorable functions. https://omega-icl.github.io/mcpp/

  15. Chen Q, Grossmann I (2017) Recent developments and challenges in optimization-based process synthesis. Annu Rev Chem Biomol Eng 8(1):249–283. https://doi.org/10.1146/annurev-chembioeng-080615-033546

    Article  Google Scholar

  16. Chen Q, Grossmann I (2019a) Modern modeling paradigms using generalized disjunctive programming. Processes 7(11):839

    Article  Google Scholar

  17. Chen Q, Grossmann IE (2019c) Effective generalized disjunctive programming models for modular process synthesis. Ind Eng Chem Res 58(15):5873–5886. https://doi.org/10.1021/acs.iecr.8b04600

    Article  Google Scholar

  18. Chen Q, Grossmann IE (2019c) Effective generalized disjunctive programming models for modular process synthesis. Ind Eng Chem Res 58(15):5873–5886. https://doi.org/10.1021/acs.iecr.8b04600

  19. Chen Q, Johnson ES, Siirola JD, Grossmann IE (2018) Pyomo.GDP: Disjunctive Models in Python. In: Eden MR, Ierapetritou MG, Towler GP (eds) Proceedings of the 13th International Symposium on Process Systems Engineering, Elsevier B.V., San Diego, pp 889–894. https://doi.org/10.1016/B978-0-444-64241-7.50143-9

  20. Drud AS (1994) CONOPT a large-scale GRG code. ORSA J Comput 6(2):207–216. https://doi.org/10.1287/ijoc.6.2.207

  21. Drud AS (1994) CONOPT a large-scale GRG code. ORSA J Comput 6(2):207–216. https://doi.org/10.1287/ijoc.6.2.207

    Article  MATH  Google Scholar

  22. Dunning I, Huchette J, Lubin M (2017) JuMP: A Modeling Language for Mathematical Optimization. SIAM Review 59(2):295–320. https://doi.org/10.1137/15M1020575

    MathSciNet  Article  MATH  Google Scholar

  23. Duran MA, Grossmann IE (1986) An outer-approximation algorithm for a class of mixed-integer nonlinear programs. Math Prog 36(3):307. https://doi.org/10.1007/BF02592064

    MathSciNet  Article  MATH  Google Scholar

  24. Floudas CA, Lin X (2004) Continuous-time versus discrete-time approaches for scheduling of chemical processes: a review. Comput Chem Eng 28(11):2109–2129. https://doi.org/10.1016/j.compchemeng.2004.05.002

    Article  Google Scholar

  25. Friedman Z, Ingalls J, Siirola JD, Watson JP (2013) Block-oriented modeling of superstructure optimization problems. Comput Chem Eng 57:10–23. https://doi.org/10.1016/j.compchemeng.2013.04.008

  26. Friedman Z, Ingalls J, Siirola JD, Watson JP (2013) Block-oriented modeling of superstructure optimization problems. Comput Chem Eng 57:10–23. https://doi.org/10.1016/j.compchemeng.2013.04.008

    Article  Google Scholar

  27. Grossmann IE, Lee S (2003) Generalized convex disjunctive programming: nonlinear convex hull relaxation. Comput Optim Appl 26(1):83–100. https://doi.org/10.1023/A:1025154322278

    MathSciNet  Article  MATH  Google Scholar

  28. Grossmann IE, Trespalacios F (2013) Systematic modeling of discrete-continuous optimization models through generalized disjunctive programming. AIChE J 59(9):3276–3295. https://doi.org/10.1002/aic.14088

    Article  Google Scholar

  29. Günlük O, Linderoth J (2010) Perspective reformulations of mixed integer nonlinear programs with indicator variables. Math Prog 124(1):183–205

    MathSciNet  Article  Google Scholar

  30. Hart WE, Laird CD, Watson JP, Woodruff DL, Hackebeil GA, Nicholson BL, Siirola JD (2017) Pyomo Optimization Modeling in Python, Springer Optimization and Its Applications, vol 67, 2nd edn. Springer International Publishing, Cham, https://doi.org/10.1007/978-3-319-58821-6

  31. Kocis GR, Grossmann IE (1989) Computational Experience With Dicopt Solving Minlp Problems in Process Systems-Engineering. Comput Chem Eng 13(3):307–315. https://doi.org/10.1016/0098-1354(89)85008-2

  32. Kronqvist J, Misener R (2020) A disjunctive cut strengthening technique for convex MINLP. Optimization and Engineering pp 1–31

  33. Kronqvist J, Lundell A, Westerlund T (2018) Reformulations for utilizing separability when solving convex MINLP problems. J Global Optim 71(3):571–592

    MathSciNet  Article  Google Scholar

  34. Kronqvist J, Bernal DE, Lundell A, Grossmann IE (2019) A review and comparison of solvers for convex MINLP, vol 20. Springer, US. https://doi.org/10.1007/s11081-018-9411-8

    Article  Google Scholar

  35. Lee S, Grossmann IE (2000) New algorithms for nonlinear generalized disjunctive programming. Comput Chem Eng 24(9–10):2125–2141

  36. Lee S, Grossmann IE (2000) New algorithms for nonlinear generalized disjunctive programming. Comput Chem Eng 24(9–10):2125–2141

    Article  Google Scholar

  37. Lee S, Grossmann IE (2001) A global optimization algorithm for nonconvex generalized disjunctive programming and applications to process systems. Comput Chem Eng 25(11–12):1675–1697

    Article  Google Scholar

  38. Liberti L (2019) Undecidability and hardness in mixed-integer nonlinear programming. RAIRO Oper Res 53(1):81–109

    MathSciNet  Article  Google Scholar

  39. Nemhauser GL, Wolsey LA (1988) Integer and combinatorial optimization. Wiley, New York

    Book  Google Scholar

  40. Puranik Y, Sahinidis NV (2017) Domain reduction techniques for global NLP and MINLP optimization. Constraints 22(3):338–376. https://doi.org/10.1007/s10601-016-9267-5

    MathSciNet  Article  MATH  Google Scholar

  41. Raman R, Grossmann I (1991) Relation between MILP modelling and logical inference for chemical process synthesis. Comput Chem Eng 15(2):73–84

    Article  Google Scholar

  42. Raman R, Grossmann I (1994) Modelling and computational techniques for logic based integer programming. Comput Chem Eng 18(7):563–578. https://doi.org/10.1016/0098-1354(93)E0010-7

    Article  Google Scholar

  43. Rawlings ES, Chen Q, Grossmann IE, Caballero JA (2019) Kaibel column: modeling, optimization, and conceptual design of multi-product dividing wall columns. Comput Chem Eng 125:31–39

    Article  Google Scholar

  44. Ruiz JP, Grossmann IE (2012) A hierarchy of relaxations for nonlinear convex generalized disjunctive programming. Eur J Oper Res 218(1):38–47. https://doi.org/10.1016/j.ejor.2011.10.002

    MathSciNet  Article  MATH  Google Scholar

  45. Ruiz JP, Grossmann IE (2017) Global optimization of non-convex generalized disjunctive programs: a review on reformulations and relaxation techniques. J Global Optim 67(1–2):43–58. https://doi.org/10.1007/s10898-016-0401-0

    MathSciNet  Article  MATH  Google Scholar

  46. Sahinidis NV (2019) Mixed-integer nonlinear programming 2018. Optimization and Engineering (0123456789). https://doi.org/10.1007/s11081-019-09438-1

  47. Tawarmalani M, Sahinidis NV (2005) A polyhedral branch-and-cut approach to global optimization. Math Prog 103:225–249. https://doi.org/10.1007/s10107-005-0581-8

    MathSciNet  Article  MATH  Google Scholar

  48. Trespalacios F, Grossmann IE (2014) Review of mixed-integer nonlinear and generalized disjunctive programming methods. Chemie Ingenieur Technik 86(7):991–1012. https://doi.org/10.1002/cite.201400037

    Article  Google Scholar

  49. Trespalacios F, Grossmann IE (2016) Cutting plane algorithm for convex generalized disjunctive programs. INFORMS J Comput 28(2):209–222. https://doi.org/10.1287/ijoc.2015.0669

    MathSciNet  Article  MATH  Google Scholar

  50. Tsoukalas A, Mitsos A (2014) Multivariate McCormick relaxations. J Global Optim 59(2–3):633–662. https://doi.org/10.1007/s10898-014-0176-0

    Article  Google Scholar

  51. Türkay M, Grossmann IE (1996) Logic-based MINLP algorithms for the optimal synthesis of process networks. Comput Chem Eng 20(8):959–978

    Article  Google Scholar

  52. Vecchietti A, Grossmann IE (1999) LOGMIP: a disjunctive 0–1 non-linear optimizer for process system models. Comput Chem Eng 23(4–5):555–565. https://doi.org/10.1016/S0098-1354(98)00293-2

    Article  Google Scholar

  53. Vecchietti A, Grossmann IE (1999) LOGMIP: a disjunctive 0–1 non-linear optimizer for process system models. Comput Chem Eng 23(4–5):555–565. https://doi.org/10.1016/S0098-1354(98)00293-2

  54. Vigerske S, Gleixner A (2018) Scip: global optimization of mixed-integer nonlinear programs in a branch-and-cut framework. Optim Methods Softw 33(3):563–593. https://doi.org/10.1080/10556788.2017.1335312

    MathSciNet  Article  MATH  Google Scholar

  55. Viswanathan J, Grossmann IE (1990) A combined penalty function and outer-approximation method for MINLP optimization. Comput Chem Eng 14(7):769–782. https://doi.org/10.1016/0098-1354(90)87085-4

    Article  Google Scholar

  56. Wächter A, Biegler LT (2006) On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math Prog 106(1):25–57. https://doi.org/10.1007/s10107-004-0559-y

    MathSciNet  Article  MATH  Google Scholar

Download references

Acknowledgements

We graciously acknowledge funding from the U.S. Department of Energy, Office of Fossil Energy's Crosscutting Research Program through the Institute for the Design of Advanced Energy Systems (IDAES). We also recognize software development assistance from Zhifei Yuliu, supervised by Qi Chen, on the final logical expression system implementation. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology and Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International, Inc., for the U.S. Department of Energy's National Nuclear Security Administration under contract DENA0003525.

Author information

Affiliations

  1. Center for Advanced Process Decision-Making, Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, PA, 15213, USA

    Qi Chen, David E. Bernal, Romeo Valentin, Sunjeev Kale, Johnny Bates & Ignacio E. Grossmann

  2. Sandia National Laboratories, Albuquerque, NM, 87123, USA

    Emma S. Johnson & John D. Siirola

Corresponding author

Correspondence to Ignacio E. Grossmann.

Ethics declarations

Declarations

This article describes objective technical results and analysis. Any subjective views or opinions that might be expressed in the article do not necessarily represent the views of the U.S. Department of Energy or the United States Government.

Conflict of interest

The authors declare that they have no conflict of interest.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Pyomo.GDP modeling syntax

Modeling syntax for Pyomo.GDP uses and modeling objects. objects represent a grouping of constraints in a logical context, and objects describe the OR relationship between these logical groupings. Note that by default, Pyomo.GDP objects enforce an "exactly one" relationship among the selection of the disjuncts (generalization of exclusive-OR). That is, exactly one of the indicator variables should take a value.

The example below illustrates the Pyomo.GDP syntax available to express the disjunction (2) between the selection of two units in a process network. In the example, \(Y_1\) and \(Y_2\) are the Boolean variables corresponding to the selection of process units 1 and 2, respectively. The continuous variables \(x_1, x_2, x_3, x_4\) describe flow in and out of the first and second units, respectively. If a unit is selected, the nonlinear equality in the corresponding disjunct enforces the input/output relationship in the selected unit. The final equality in each disjunct forces flows for the absent unit to zero.

$$\begin{aligned} \left[ \begin{array}{c} Y_1 \\ \exp (x_2) - 1 = x_1 \\ x_3 = x_4 = 0 \end{array} \right] \bigvee \left[ \begin{array}{c} Y_2 \\ \exp \left( \frac{x_4}{1.2}\right) - 1 = x_3 \\ x_1 = x_2 = 0 \end{array} \right] \end{aligned}$$

(2)

Expanded syntax: more descriptive

Pyomo.GDP expanded syntax provides more clarity in the declaration of each modeling object (see Listing 13). Assuming the object and variables have been defined, lines 1 and 5 declare the objects corresponding to selection of unit 1 and 2, respectively. Lines 2 and 6 define the input-output relations for each unit, and lines 3-4 and 7-8 enforce zero flow through the unit that is not selected. Finally, line 9 declares the logical disjunction between the two disjunctive terms.

figurebv

The indicator variables for each disjunct \(Y_1\) and \(Y_2\) are automatically generated by Pyomo.GDP, accessible via and .

Compact syntax: more concise

For advanced users, a more compact syntax is also available (see Listing 14), taking advantage of the ability to declare disjuncts and constraints implicitly. When the object constructor is passed a list of lists, the outer list defines the disjuncts and the inner list defines the constraint expressions associated with the respective disjunct.

figurebz

Nested disjunctions

Pyomo.GDP also supports modeling with nested disjunctions, as given in Equation (3). The inner disjunctions \(q \in {\mathcal {K}}_{ik}\) describe a logical-OR relationship between disjuncts \(p \in {\mathcal {D}}_q\). Selection of the inner disjunct indicated by the Boolean variable \(Y_{pq}\) enforces the corresponding linear constraints \(M_{pq} x + N_{pq} z \le e_{pq}\) and nonlinear constraints \(r_{pq}(x,z)\le 0\). Nested disjunction logic often describes discrete choices that are contingent upon another decision. For example, in chemical process synthesis, a choice between reactor models A, B, or C might be contingent upon existence of the reactor. The selection of a reactor model would therefore be a nested disjunction within the parent disjunction between existence or absence of the reactor.

$$\begin{aligned} \bigvee _{i\in D_k} \left[ \begin{array}{c} Y_{ik} \\ M_{ik} x + N_{ik} z \le e_{ik} \\ r_{ik}(x,z)\le 0\\ \bigvee _{p \in {\mathcal {D}}_q} \left[ \begin{array}{c} Y_{pq} \\ M_{pq} x + N_{pq} z \le e_{pq} \\ r_{pq}(x,z)\le 0\\ \end{array} \right] \quad q \in {\mathcal {K}}_{ik} \\ \end{array} \right] \quad k \in K \end{aligned}$$

(3)

Assuming that the correct sets are defined, Listing 15 gives the Pyomo.GDP code necessary to represent a nested disjunction as described by Equation (3).

figureca

9PP GDP model formulation

$$\begin{aligned} \min Z =&\ -10 x_{25} + x_{1} \end{aligned}$$

(9PP.1)

$$\begin{aligned} s.t. \quad&\ x_1 = x_2 + x_3 \end{aligned}$$

(9PP.2)

$$\begin{aligned}&\left[ \begin{array}{c} Y_1 \\ x_2 = \exp (x_3 - 1) \\ x_4 = x_5 = 0 \end{array} \right] \vee \left[ \begin{array}{l} Y_2 \\ x_5 = \ln (x_4 + 1) \\ x_2 = x_3 = 0 \end{array} \right] \end{aligned}$$

(9PP.3)

$$\begin{aligned}&\ x_3 + x_5 = x_6 \end{aligned}$$

(9PP.4)

$$\begin{aligned}&\ x_6 = x_7 + x_9 + x_{11} + x_{13} \end{aligned}$$

(9PP.5)

$$\begin{aligned}&\begin{aligned}&\left[ \begin{array}{c} Y_3 \\ x_8 = 2 \ln (x_7) + 3 \\ x_7 \ge 0.2 \\ x_9 = x_{10} = x_{11} = 0\\ x_{12} = x_{14} = x_{15} = 0 \\ \end{array} \right] \vee \left[ \begin{array}{c} Y_4 \\ x_{10} = 1.8 \ln (x_9 + 4) \\ x_{7} = x_{8} = x_{11} = 0\\ x_{12} = x_{14} = x_{15} = 0 \\ \end{array} \right] \\&\quad \vee \left[ \begin{array}{c} Y_5 \\ x_{12} = 1.2 \ln (x_{11}) + 2 \\ x_{11} \ge 0.001 \\ x_{7} = x_{8} = x_{9} = 0\\ x_{10} = x_{14} = x_{15} = 0 \\ \end{array} \right] \vee \left[ \begin{array}{c} Y_6 \\ x_{15} = x_{23} \sqrt{x_{14} - 3} \\ 5 \le x_{14} \le 20 \\ x_{7} = x_{8} = x_{9} = 0\\ x_{10} = x_{11} = x_{12} = 0 \\ \end{array} \right] \end{aligned} \end{aligned}$$

(9PP.6)

$$\begin{aligned}&\ x_{14} = x_{13} + x_{23} \end{aligned}$$

(9PP.7)

$$\begin{aligned}&\ x_{8} + x_{10} + x_{12} + x_{15} = x_{16} \end{aligned}$$

(9PP.8)

$$\begin{aligned}&\begin{aligned}&\left[ \begin{array}{c} Y_7 \\ x_{18} = 0.9 x_{17} \\ x_{19} = x_{20} = 0\\ x_{21} = x_{22} = 0 \\ \end{array} \right] \vee \left[ \begin{array}{c} Y_8 \\ x_{20} = \ln (x_{19}^{1.5}) + 2 \\ x_{19} \ge 1\\ x_{17} = x_{18} = 0\\ x_{21} = x_{22} = 0 \\ \end{array} \right] \\&\quad \vee \left[ \begin{array}{c} Y_9 \\ x_{22} = \ln (x_{21} + \sqrt{x_{21}}) + 1 \\ x_{21} \ge 4 \\ x_{17} = x_{18} = 0\\ x_{19} = x_{20} = 0 \\ \end{array} \right] \end{aligned} \end{aligned}$$

(9PP.9)

$$\begin{aligned}&\ x_{22} = x_{23} + x_{24} \end{aligned}$$

(9PP.10)

$$\begin{aligned}&\ x_{18} + x_{20} + x_{24} = x_{25} \end{aligned}$$

(9PP.11)

$$\begin{aligned}&\ 0 \le x_i \le 50 \quad i \in \{1, 2, \dots , 25\} \end{aligned}$$

(9PP.12)

$$\begin{aligned}&\ x \in \mathbb {R}^{25} \end{aligned}$$

(9PP.13)

$$\begin{aligned}&\ Y_{i} \in \{True, False\} \quad i \in \{1, 2, \dots , 9\} \end{aligned}$$

(9PP.14)

About this article

Verify currency and authenticity via CrossMark

Cite this article

Chen, Q., Johnson, E.S., Bernal, D.E. et al. Pyomo.GDP: an ecosystem for logic based modeling and optimization development. Optim Eng (2021). https://doi.org/10.1007/s11081-021-09601-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI : https://doi.org/10.1007/s11081-021-09601-7

Keywords

  • Mathematical programming
  • Generalized disjunctive programming
  • MINLP

Springer Mathematical Logic Solutions Pdf

Source: https://link.springer.com/article/10.1007/s11081-021-09601-7

Posted by: wilketherechat.blogspot.com

0 Response to "Springer Mathematical Logic Solutions Pdf"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel