{ "cells": [ { "cell_type": "markdown", "metadata": { "nbpages": { "level": 0, "link": "[](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html)", "section": "" } }, "source": [ "\n", "*This notebook contains material from [CBE30338](https://jckantor.github.io/CBE30338);\n", "content is available [on Github](https://github.com/jckantor/CBE30338.git).*\n" ] }, { "cell_type": "markdown", "metadata": { "nbpages": { "level": 0, "link": "[](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html)", "section": "" } }, "source": [ "\n", "< [7.7 Transient Heat Transfer in Various Geometries](https://jckantor.github.io/CBE30338/07.07-Transient-Heat-Transfer-in-Various-Geometries.html) | [Contents](toc.html) | [Tag Index](tag_index.html) | [8.0 Predictive Control](https://jckantor.github.io/CBE30338/08.00-Predictive-Control.html) >

\"Open

\"Download\"" ] }, { "cell_type": "markdown", "metadata": { "nbpages": { "level": 1, "link": "[7.8 Path Constraints](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8-Path-Constraints)", "section": "7.8 Path Constraints" } }, "source": [ "# 7.8 Path Constraints\n", "\n", "https://github.com/Pyomo/pyomo/blob/master/examples/dae/Path_Constraint.py" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "nbpages": { "level": 1, "link": "[7.8 Path Constraints](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8-Path-Constraints)", "section": "7.8 Path Constraints" } }, "outputs": [], "source": [ "#\n", "# Pyomo: Python Optimization Modeling Objects\n", "# Copyright 2017 National Technology and Engineering Solutions of Sandia, LLC\n", "# Under the terms of Contract DE-NA0003525 with National Technology and \n", "# Engineering Solutions of Sandia, LLC, the U.S. Government retains certain \n", "# rights in this software.\n", "# This software is distributed under the 3-clause BSD License.\n", "\n", "# Sample Problem 3: Inequality State Path Constraint\n", "# (Ex 4 from Dynopt Guide)\n", "#\n", "# min x3(tf)\n", "# s.t. X1_dot = X2 X1(0) = 0\n", "# X2_dot = -X2+u X2(0) = -1\n", "# X3_dot = X1^2+x2^2+0.005*u^2 X3(0) = 0\n", "# X2-8*(t-0.5)^2+0.5 <= 0\n", "# tf = 1\n", "#" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "nbpages": { "level": 1, "link": "[7.8 Path Constraints](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8-Path-Constraints)", "section": "7.8 Path Constraints" } }, "outputs": [], "source": [ "from pyomo.environ import *\n", "from pyomo.dae import *\n", "\n", "m = ConcreteModel()\n", "m.tf = Param(initialize=1)\n", "m.t = ContinuousSet(bounds=(0,m.tf))\n", "\n", "m.u = Var(m.t, initialize=0)\n", "m.x1 = Var(m.t)\n", "m.x2 = Var(m.t)\n", "m.x3 = Var(m.t)\n", "\n", "m.dx1 = DerivativeVar(m.x1, wrt=m.t)\n", "m.dx2 = DerivativeVar(m.x2, wrt=m.t)\n", "m.dx3 = DerivativeVar(m.x3, wrt=m.t)\n", "\n", "m.obj = Objective(expr=m.x3[m.tf])\n", "\n", "def _x1dot(m, t):\n", " if t == 0:\n", " return Constraint.Skip\n", " return m.dx1[t] == m.x2[t]\n", "m.x1dotcon = Constraint(m.t, rule=_x1dot)\n", "\n", "def _x2dot(m, t):\n", " if t == 0:\n", " return Constraint.Skip\n", "\n", " return m.dx2[t] == -m.x2[t]+m.u[t]\n", "m.x2dotcon = Constraint(m.t, rule=_x2dot)\n", "\n", "def _x3dot(m, t):\n", " if t == 0:\n", " return Constraint.Skip\n", "\n", " return m.dx3[t] == m.x1[t]**2+m.x2[t]**2+0.005*m.u[t]**2\n", "m.x3dotcon = Constraint(m.t, rule=_x3dot)\n", "\n", "def _con(m, t):\n", " return m.x2[t]-8*(t-0.5)**2+0.5 <= 0\n", "m.con = Constraint(m.t, rule=_con)\n", "\n", "def _init(m):\n", " yield m.x1[0] == 0\n", " yield m.x2[0] == -1\n", " yield m.x3[0] == 0\n", "m.init_conditions = ConstraintList(rule=_init)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "nbpages": { "level": 1, "link": "[7.8 Path Constraints](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8-Path-Constraints)", "section": "7.8 Path Constraints" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "# ==========================================================\n", "# = Solver Results =\n", "# ==========================================================\n", "# ----------------------------------------------------------\n", "# Problem Information\n", "# ----------------------------------------------------------\n", "Problem: \n", "- Lower bound: -inf\n", " Upper bound: inf\n", " Number of objectives: 1\n", " Number of constraints: 256\n", " Number of variables: 255\n", " Sense: unknown\n", "# ----------------------------------------------------------\n", "# Solver Information\n", "# ----------------------------------------------------------\n", "Solver: \n", "- Status: ok\n", " Message: Ipopt 3.12.8\\x3a Optimal Solution Found\n", " Termination condition: optimal\n", " Id: 0\n", " Error rc: 0\n", " Time: 0.08427214622497559\n", "# ----------------------------------------------------------\n", "# Solution Information\n", "# ----------------------------------------------------------\n", "Solution: \n", "- number of solutions: 0\n", " number of solutions displayed: 0\n" ] } ], "source": [ "# transform and solve\n", "TransformationFactory('dae.collocation').apply_to(m, wrt=m.t, nfe=3, ncp=12, method='BACKWARD')\n", "SolverFactory('ipopt').solve(m).write()" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "nbpages": { "level": 1, "link": "[7.8 Path Constraints](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8-Path-Constraints)", "section": "7.8 Path Constraints" } }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "t = [t for t in m.t]\n", "\n", "u = [m.u[t]() for t in t]\n", "x1 = [m.x1[t]() for t in m.x1]\n", "x2 = [m.x2[t]() for t in m.x2]\n", "x3 = [m.x3[t]() for t in m.x3]\n", "\n", "plt.figure(figsize=(10,12))\n", "plt.subplot(4,1,1)\n", "plt.plot(t, x1)\n", "\n", "#X2-8*(t-0.5)^2+0.5 <= 0\n", "\n", "plt.subplot(4,1,2)\n", "plt.plot(t, x2)\n", "plt.plot(t, 8*(np.array(t)-0.5)**2 - 0.5)\n", "\n", "plt.subplot(4,1,3)\n", "plt.plot(t, x3)\n", "\n", "plt.subplot(4,1,4)\n", "plt.plot(t, u)" ] }, { "cell_type": "markdown", "metadata": { "nbpages": { "level": 2, "link": "[7.8.1 Recoding for Compact Style](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.1-Recoding-for-Compact-Style)", "section": "7.8.1 Recoding for Compact Style" } }, "source": [ "## 7.8.1 Recoding for Compact Style" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "nbpages": { "level": 2, "link": "[7.8.1 Recoding for Compact Style](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.1-Recoding-for-Compact-Style)", "section": "7.8.1 Recoding for Compact Style" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyomo.environ import *\n", "from pyomo.dae import *\n", "\n", "m = ConcreteModel()\n", "m.tf = Param(initialize=1)\n", "m.t = ContinuousSet(bounds=(0, m.tf))\n", "\n", "m.u = Var(m.t, initialize=0)\n", "m.x1 = Var(m.t)\n", "m.x2 = Var(m.t)\n", "m.x3 = Var(m.t)\n", "\n", "m.dx1 = DerivativeVar(m.x1)\n", "m.dx2 = DerivativeVar(m.x2)\n", "m.dx3 = DerivativeVar(m.x3)\n", "\n", "m.obj = Objective(expr=m.x3[m.tf])\n", "\n", "m.x1dotcon = Constraint(m.t, rule=lambda m, t: m.dx1[t] == m.x2[t])\n", "m.x2dotcon = Constraint(m.t, rule=lambda m, t: m.dx2[t] == -m.x2[t] + m.u[t])\n", "m.x3dotcon = Constraint(m.t, rule=lambda m, t: m.dx3[t] == m.x1[t]**2+m.x2[t]**2+0.005*m.u[t]**2)\n", "m.con = Constraint(m.t, rule=lambda m, t: m.x2[t]-8*(t-0.5)**2+0.5 <= 0)\n", "\n", "m.x1dotcon[0].deactivate()\n", "m.x2dotcon[0].deactivate()\n", "m.x3dotcon[0].deactivate()\n", "\n", "m.ic = ConstraintList()\n", "m.ic.add(m.x1[0] == 0)\n", "m.ic.add(m.x2[0] == -1)\n", "m.ic.add(m.x3[0] == 0)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "nbpages": { "level": 2, "link": "[7.8.1 Recoding for Compact Style](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.1-Recoding-for-Compact-Style)", "section": "7.8.1 Recoding for Compact Style" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "# ==========================================================\n", "# = Solver Results =\n", "# ==========================================================\n", "# ----------------------------------------------------------\n", "# Problem Information\n", "# ----------------------------------------------------------\n", "Problem: \n", "- Lower bound: -inf\n", " Upper bound: inf\n", " Number of objectives: 1\n", " Number of constraints: 256\n", " Number of variables: 255\n", " Sense: unknown\n", "# ----------------------------------------------------------\n", "# Solver Information\n", "# ----------------------------------------------------------\n", "Solver: \n", "- Status: ok\n", " Message: Ipopt 3.12.8\\x3a Optimal Solution Found\n", " Termination condition: optimal\n", " Id: 0\n", " Error rc: 0\n", " Time: 0.1155850887298584\n", "# ----------------------------------------------------------\n", "# Solution Information\n", "# ----------------------------------------------------------\n", "Solution: \n", "- number of solutions: 0\n", " number of solutions displayed: 0\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# transform and solve\n", "TransformationFactory('dae.collocation').apply_to(m, wrt=m.t, nfe=3, ncp=12, method='BACKWARD')\n", "SolverFactory('ipopt').solve(m).write()\n", "\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "t = [t for t in m.t]\n", "\n", "u = [m.u[t]() for t in t]\n", "x1 = [m.x1[t]() for t in m.x1]\n", "x2 = [m.x2[t]() for t in m.x2]\n", "x3 = [m.x3[t]() for t in m.x3]\n", "\n", "plt.figure(figsize=(10,12))\n", "plt.subplot(4,1,1)\n", "plt.plot(t, x1)\n", "\n", "#X2-8*(t-0.5)^2+0.5 <= 0\n", "\n", "plt.subplot(4,1,2)\n", "plt.plot(t, x2)\n", "plt.plot(t, 8*(np.array(t)-0.5)**2 - 0.5)\n", "\n", "plt.subplot(4,1,3)\n", "plt.plot(t, x3)\n", "\n", "plt.subplot(4,1,4)\n", "plt.plot(t, u)" ] }, { "cell_type": "markdown", "metadata": { "nbpages": { "level": 2, "link": "[7.8.2 Subscripting Equations](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.2-Subscripting-Equations)", "section": "7.8.2 Subscripting Equations" } }, "source": [ "## 7.8.2 Subscripting Equations" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "nbpages": { "level": 2, "link": "[7.8.2 Subscripting Equations](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.2-Subscripting-Equations)", "section": "7.8.2 Subscripting Equations" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from pyomo.environ import *\n", "from pyomo.dae import *\n", "\n", "m = ConcreteModel()\n", "m.tf = Param(initialize=1)\n", "m.t = ContinuousSet(bounds=(0, m.tf))\n", "\n", "m.u = Var(m.t, initialize=0)\n", "m.N = [1, 2, 3]\n", "\n", "m.x = Var(m.N, m.t)\n", "m.dx = DerivativeVar(m.x)\n", "\n", "m.obj = Objective(expr=m.x[3,m.tf])\n", "\n", "def ode(m, n, t):\n", " if t==0: \n", " return Constraint.Skip\n", " odes = {\n", " 1: m.dx[1,t] == m.x[2,t],\n", " 2: m.dx[2,t] == -m.x[2,t] + m.u[t],\n", " 3: m.dx[3,t] == m.x[1,t]**2 + m.x[2,t]**2 + 0.005*m.u[t]**2\n", " }\n", " return odes[n]\n", "m.ode = Constraint(m.N, m.t, rule=ode)\n", "m.con = Constraint(m.t, rule=lambda m, t: m.x[2,t]-8*(t-0.5)**2+0.5 <= 0)\n", "\n", "m.ic = ConstraintList()\n", "m.ic.add(m.x[1,0] == 0)\n", "m.ic.add(m.x[2,0] == -1)\n", "m.ic.add(m.x[3,0] == 0)" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "nbpages": { "level": 2, "link": "[7.8.2 Subscripting Equations](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.2-Subscripting-Equations)", "section": "7.8.2 Subscripting Equations" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "# ==========================================================\n", "# = Solver Results =\n", "# ==========================================================\n", "# ----------------------------------------------------------\n", "# Problem Information\n", "# ----------------------------------------------------------\n", "Problem: \n", "- Lower bound: -inf\n", " Upper bound: inf\n", " Number of objectives: 1\n", " Number of constraints: 256\n", " Number of variables: 255\n", " Sense: unknown\n", "# ----------------------------------------------------------\n", "# Solver Information\n", "# ----------------------------------------------------------\n", "Solver: \n", "- Status: ok\n", " Message: Ipopt 3.12.8\\x3a Optimal Solution Found\n", " Termination condition: optimal\n", " Id: 0\n", " Error rc: 0\n", " Time: 0.09073829650878906\n", "# ----------------------------------------------------------\n", "# Solution Information\n", "# ----------------------------------------------------------\n", "Solution: \n", "- number of solutions: 0\n", " number of solutions displayed: 0\n" ] }, { "data": { "text/plain": [ "[]" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# transform and solve\n", "TransformationFactory('dae.collocation').apply_to(m, wrt=m.t, nfe=3, ncp=12, method='BACKWARD')\n", "SolverFactory('ipopt').solve(m).write()\n", "\n", "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "t = [t for t in m.t]\n", "\n", "u = [m.u[t]() for t in t]\n", "x1 = [m.x[1,t]() for t in t]\n", "x2 = [m.x[2,t]() for t in t]\n", "x3 = [m.x[3,t]() for t in t]\n", "\n", "plt.figure(figsize=(10,12))\n", "plt.subplot(4,1,1)\n", "plt.plot(t, x1)\n", "\n", "plt.subplot(4,1,2)\n", "plt.plot(t, x2)\n", "plt.plot(t, 8*(np.array(t)-0.5)**2 - 0.5)\n", "\n", "plt.subplot(4,1,3)\n", "plt.plot(t, x3)\n", "\n", "plt.subplot(4,1,4)\n", "plt.plot(t, u)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "nbpages": { "level": 2, "link": "[7.8.2 Subscripting Equations](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.2-Subscripting-Equations)", "section": "7.8.2 Subscripting Equations" } }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": { "nbpages": { "level": 2, "link": "[7.8.2 Subscripting Equations](https://jckantor.github.io/CBE30338/07.08-Path-Constraints.html#7.8.2-Subscripting-Equations)", "section": "7.8.2 Subscripting Equations" } }, "source": [ "\n", "< [7.7 Transient Heat Transfer in Various Geometries](https://jckantor.github.io/CBE30338/07.07-Transient-Heat-Transfer-in-Various-Geometries.html) | [Contents](toc.html) | [Tag Index](tag_index.html) | [8.0 Predictive Control](https://jckantor.github.io/CBE30338/08.00-Predictive-Control.html) >

\"Open

\"Download\"" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.8" } }, "nbformat": 4, "nbformat_minor": 2 }