Dynamic Optimization in Jmodelica.Org †
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Applying Reinforcement Learning to Modelica Models
ModelicaGym: Applying Reinforcement Learning to Modelica Models Oleh Lukianykhin∗ Tetiana Bogodorova [email protected] [email protected] The Machine Learning Lab, Ukrainian Catholic University Lviv, Ukraine Figure 1: A high-level overview of a considered pipeline and place of the presented toolbox in it. ABSTRACT CCS CONCEPTS This paper presents ModelicaGym toolbox that was developed • Theory of computation → Reinforcement learning; • Soft- to employ Reinforcement Learning (RL) for solving optimization ware and its engineering → Integration frameworks; System and control tasks in Modelica models. The developed tool allows modeling languages; • Computing methodologies → Model de- connecting models using Functional Mock-up Interface (FMI) to velopment and analysis. OpenAI Gym toolkit in order to exploit Modelica equation-based modeling and co-simulation together with RL algorithms as a func- KEYWORDS tionality of the tools correspondingly. Thus, ModelicaGym facilit- Cart Pole, FMI, JModelica.org, Modelica, model integration, Open ates fast and convenient development of RL algorithms and their AI Gym, OpenModelica, Python, reinforcement learning comparison when solving optimal control problem for Modelica dynamic models. Inheritance structure of ModelicaGym toolbox’s ACM Reference Format: Oleh Lukianykhin and Tetiana Bogodorova. 2019. ModelicaGym: Applying classes and the implemented methods are discussed in details. The Reinforcement Learning to Modelica Models. In EOOLT 2019: 9th Interna- toolbox functionality validation is performed on Cart-Pole balan- tional Workshop on Equation-Based Object-Oriented Modeling Languages and arXiv:1909.08604v1 [cs.SE] 18 Sep 2019 cing problem. This includes physical system model description and Tools, November 04–05, 2019, Berlin, DE. ACM, New York, NY, USA, 10 pages. its integration using the toolbox, experiments on selection and in- https://doi.org/10.1145/nnnnnnn.nnnnnnn fluence of the model parameters (i.e. -
Julia, My New Friend for Computing and Optimization? Pierre Haessig, Lilian Besson
Julia, my new friend for computing and optimization? Pierre Haessig, Lilian Besson To cite this version: Pierre Haessig, Lilian Besson. Julia, my new friend for computing and optimization?. Master. France. 2018. cel-01830248 HAL Id: cel-01830248 https://hal.archives-ouvertes.fr/cel-01830248 Submitted on 4 Jul 2018 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. « Julia, my new computing friend? » | 14 June 2018, IETR@Vannes | By: L. Besson & P. Haessig 1 « Julia, my New frieNd for computiNg aNd optimizatioN? » Intro to the Julia programming language, for MATLAB users Date: 14th of June 2018 Who: Lilian Besson & Pierre Haessig (SCEE & AUT team @ IETR / CentraleSupélec campus Rennes) « Julia, my new computing friend? » | 14 June 2018, IETR@Vannes | By: L. Besson & P. Haessig 2 AgeNda for today [30 miN] 1. What is Julia? [5 miN] 2. ComparisoN with MATLAB [5 miN] 3. Two examples of problems solved Julia [5 miN] 4. LoNger ex. oN optimizatioN with JuMP [13miN] 5. LiNks for more iNformatioN ? [2 miN] « Julia, my new computing friend? » | 14 June 2018, IETR@Vannes | By: L. Besson & P. Haessig 3 1. What is Julia ? Open-source and free programming language (MIT license) Developed since 2012 (creators: MIT researchers) Growing popularity worldwide, in research, data science, finance etc… Multi-platform: Windows, Mac OS X, GNU/Linux.. -
Propt Product Sheet
PROPT - The world’s fastest Optimal Control platform for MATLAB. PROPT - ONE OF A KIND, LIGHTNING FAST SOLUTIONS TO YOUR OPTIMAL CONTROL PROBLEMS! NOW WITH WELL OVER 100 TEST CASES! The PROPT software package is intended to When using PROPT, optimally coded analytical solve dynamic optimization problems. Such first and second order derivatives, including problems are usually described by: problem sparsity patterns are automatically generated, thereby making it the first MATLAB • A state-space model of package to be able to fully utilize a system. This can be NLP (and QP) solvers such as: either a set of ordinary KNITRO, CONOPT, SNOPT and differential equations CPLEX. (ODE) or differential PROPT currently uses Gauss or algebraic equations (PAE). Chebyshev-point collocation • Initial and/or final for solving optimal control conditions (sometimes problems. However, the code is also conditions at other written in a more general way, points). allowing for a DAE rather than an ODE formulation. Parameter • A cost functional, i.e. a estimation problems are also scalar value that depends possible to solve. on the state trajectories and the control function. PROPT has three main functions: • Sometimes, additional equations and variables • Computation of the that, for example, relate constant matrices used for the the initial and final differentiation and integration conditions to each other. of the polynomials used to approximate the solution to the trajectory optimization problem. The goal of PROPT is to make it possible to input such problem • Source transformation to turn descriptions as simply as user-supplied expressions into possible, without having to worry optimized MATLAB code for the about the mathematics of the cost function f and constraint actual solver. -
Full Text (Pdf)
A Toolchain for Solving Dynamic Optimization Problems Using Symbolic and Parallel Computing Evgeny Lazutkin Siegbert Hopfgarten Abebe Geletu Pu Li Group Simulation and Optimal Processes, Institute for Automation and Systems Engineering, Technische Universität Ilmenau, P.O. Box 10 05 65, 98684 Ilmenau, Germany. {evgeny.lazutkin,siegbert.hopfgarten,abebe.geletu,pu.li}@tu-ilmenau.de Abstract shown in Fig. 1. Based on the current process state x(k) obtained through the state observer or measurement, Significant progresses in developing approaches to dy- resp., the optimal control problem is solved in the opti- namic optimization have been made. However, its prac- mizer in each sample time. The resulting optimal control tical implementation poses a difficult task and its real- strategy in the first interval u(k) of the moving horizon time application such as in nonlinear model predictive is then realized through the local control system. There- control (NMPC) remains challenging. A toolchain is de- fore, an essential limitation of applying NMPC is due to veloped in this work to relieve the implementation bur- its long computation time taken to solve the NLP prob- den and, meanwhile, to speed up the computations for lem for each sample time, especially for the control of solving the dynamic optimization problem. To achieve fast systems (Wang and Boyd, 2010). In general, the these targets, symbolic computing is utilized for calcu- computation time should be much less than the sample lating the first and second order sensitivities on the one time of the NMPC scheme (Schäfer et al., 2007). Al- hand and parallel computing is used for separately ac- though powerful methods are available, e.g. -
Numericaloptimization
Numerical Optimization Alberto Bemporad http://cse.lab.imtlucca.it/~bemporad/teaching/numopt Academic year 2020-2021 Course objectives Solve complex decision problems by using numerical optimization Application domains: • Finance, management science, economics (portfolio optimization, business analytics, investment plans, resource allocation, logistics, ...) • Engineering (engineering design, process optimization, embedded control, ...) • Artificial intelligence (machine learning, data science, autonomous driving, ...) • Myriads of other applications (transportation, smart grids, water networks, sports scheduling, health-care, oil & gas, space, ...) ©2021 A. Bemporad - Numerical Optimization 2/102 Course objectives What this course is about: • How to formulate a decision problem as a numerical optimization problem? (modeling) • Which numerical algorithm is most appropriate to solve the problem? (algorithms) • What’s the theory behind the algorithm? (theory) ©2021 A. Bemporad - Numerical Optimization 3/102 Course contents • Optimization modeling – Linear models – Convex models • Optimization theory – Optimality conditions, sensitivity analysis – Duality • Optimization algorithms – Basics of numerical linear algebra – Convex programming – Nonlinear programming ©2021 A. Bemporad - Numerical Optimization 4/102 References i ©2021 A. Bemporad - Numerical Optimization 5/102 Other references • Stephen Boyd’s “Convex Optimization” courses at Stanford: http://ee364a.stanford.edu http://ee364b.stanford.edu • Lieven Vandenberghe’s courses at UCLA: http://www.seas.ucla.edu/~vandenbe/ • For more tutorials/books see http://plato.asu.edu/sub/tutorials.html ©2021 A. Bemporad - Numerical Optimization 6/102 Optimization modeling What is optimization? • Optimization = assign values to a set of decision variables so to optimize a certain objective function • Example: Which is the best velocity to minimize fuel consumption ? fuel [ℓ/km] velocity [km/h] 0 30 60 90 120 160 ©2021 A. -
Pysp: Modeling and Solving Stochastic Programs in Python
Noname manuscript No. (will be inserted by the editor) PySP: Modeling and Solving Stochastic Programs in Python Jean-Paul Watson · David L. Woodruff · William E. Hart Received: September 6, 2010. Abstract Although stochastic programming is a powerful tool for modeling decision- making under uncertainty, various impediments have historically prevented its wide- spread use. One key factor involves the ability of non-specialists to easily express stochastic programming problems as extensions of deterministic models, which are often formulated first. A second key factor relates to the difficulty of solving stochastic programming models, particularly the general mixed-integer, multi-stage case. Intri- cate, configurable, and parallel decomposition strategies are frequently required to achieve tractable run-times. We simultaneously address both of these factors in our PySP software package, which is part of the COIN-OR Coopr open-source Python project for optimization. To formulate a stochastic program in PySP, the user speci- fies both the deterministic base model and the scenario tree with associated uncertain parameters in the Pyomo open-source algebraic modeling language. Given these two models, PySP provides two paths for solution of the corresponding stochastic program. The first alternative involves writing the extensive form and invoking a standard deter- ministic (mixed-integer) solver. For more complex stochastic programs, we provide an implementation of Rockafellar and Wets’ Progressive Hedging algorithm. Our particu- lar focus is on the use of Progressive Hedging as an effective heuristic for approximating Jean-Paul Watson Sandia National Laboratories Discrete Math and Complex Systems Department PO Box 5800, MS 1318 Albuquerque, NM 87185-1318 E-mail: [email protected] David L. -
Click to Edit Master Title Style
Click to edit Master title style MINLP with Combined Interior Point and Active Set Methods Jose L. Mojica Adam D. Lewis John D. Hedengren Brigham Young University INFORM 2013, Minneapolis, MN Presentation Overview NLP Benchmarking Hock-Schittkowski Dynamic optimization Biological models Combining Interior Point and Active Set MINLP Benchmarking MacMINLP MINLP Model Predictive Control Chiller Thermal Energy Storage Unmanned Aerial Systems Future Developments Oct 9, 2013 APMonitor.com APOPT.com Brigham Young University Overview of Benchmark Testing NLP Benchmark Testing 1 1 2 3 3 min J (x, y,u) APOPT , BPOPT , IPOPT , SNOPT , MINOS x Problem characteristics: s.t. 0 f , x, y,u t Hock Schittkowski, Dynamic Opt, SBML 0 g(x, y,u) Nonlinear Programming (NLP) Differential Algebraic Equations (DAEs) 0 h(x, y,u) n m APMonitor Modeling Language x, y u MINLP Benchmark Testing min J (x, y,u, z) 1 1 2 APOPT , BPOPT , BONMIN x s.t. 0 f , x, y,u, z Problem characteristics: t MacMINLP, Industrial Test Set 0 g(x, y,u, z) Mixed Integer Nonlinear Programming (MINLP) 0 h(x, y,u, z) Mixed Integer Differential Algebraic Equations (MIDAEs) x, y n u m z m APMonitor & AMPL Modeling Language 1–APS, LLC 2–EPL, 3–SBS, Inc. Oct 9, 2013 APMonitor.com APOPT.com Brigham Young University NLP Benchmark – Summary (494) 100 90 80 APOPT+BPOPT APOPT 70 1.0 BPOPT 1.0 60 IPOPT 3.10 IPOPT 50 2.3 SNOPT Percentage (%) 6.1 40 Benchmark Results MINOS 494 Problems 5.5 30 20 10 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Not worse than 2 times slower than -
An Algorithm for Bang–Bang Control of Fixed-Head Hydroplants
International Journal of Computer Mathematics Vol. 88, No. 9, June 2011, 1949–1959 An algorithm for bang–bang control of fixed-head hydroplants L. Bayón*, J.M. Grau, M.M. Ruiz and P.M. Suárez Department of Mathematics, University of Oviedo, Oviedo, Spain (Received 31 August 2009; revised version received 10 March 2010; second revision received 1 June 2010; accepted 12 June 2010) This paper deals with the optimal control (OC) problem that arise when a hydraulic system with fixed-head hydroplants is considered. In the frame of a deregulated electricity market, the resulting Hamiltonian for such OC problems is linear in the control variable and results in an optimal singular/bang–bang control policy. To avoid difficulties associated with the computation of optimal singular/bang–bang controls, an efficient and simple optimization algorithm is proposed. The computational technique is illustrated on one example. Keywords: optimal control; singular/bang–bang problems; hydroplants 2000 AMS Subject Classification: 49J30 1. Introduction The computation of optimal singular/bang–bang controls is of particular interest to researchers because of the difficulty in obtaining the optimal solution. Several engineering control problems, Downloaded By: [Bayón, L.] At: 08:38 25 May 2011 such as the chemical reactor start-up or hydrothermal optimization problems, are known to have optimal singular/bang–bang controls. This paper deals with the optimal control (OC) problem that arises when addressing the new short-term problems that are faced by a generation company in a deregulated electricity market. Our model of the spot market explicitly represents the price of electricity as a known exogenous variable and we consider a system with fixed-head hydroplants. -
Reusing Static Analysis Across Di Erent Domain-Specific Languages
Reusing Static Analysis across Dierent Domain-Specific Languages using Reference Attribute Grammars Johannes Meya, Thomas Kühnb, René Schönea, and Uwe Aßmanna a Technische Universität Dresden, Germany b Karlsruhe Institute of Technology, Germany Abstract Context: Domain-specific languages (DSLs) enable domain experts to specify tasks and problems themselves, while enabling static analysis to elucidate issues in the modelled domain early. Although language work- benches have simplified the design of DSLs and extensions to general purpose languages, static analyses must still be implemented manually. Inquiry: Moreover, static analyses, e.g., complexity metrics, dependency analysis, and declaration-use analy- sis, are usually domain-dependent and cannot be easily reused. Therefore, transferring existing static analyses to another DSL incurs a huge implementation overhead. However, this overhead is not always intrinsically necessary: in many cases, while the concepts of the DSL on which a static analysis is performed are domain- specific, the underlying algorithm employed in the analysis is actually domain-independent and thus can be reused in principle, depending on how it is specified. While current approaches either implement static anal- yses internally or with an external Visitor, the implementation is tied to the language’s grammar and cannot be reused easily. Thus far, a commonly used approach that achieves reusable static analysis relies on the trans- formation into an intermediate representation upon which the analysis is performed. This, however, entails a considerable additional implementation effort. Approach: To remedy this, it has been proposed to map the necessary domain-specific concepts to the algo- rithm’s domain-independent data structures, yet without a practical implementation and the demonstration of reuse. -
Introduction to Dymola
DYMOLA AND MODELICA Course overview DAY 1 Dymola and Modelica I • Introduction Dymola, Modelica, Modelon • Lecture 1 Overview of Dymola and Physical modeling . Workshop 1 Workflow of modeling physical systems in Dymola • Lecture 2 Simulation and post-processing with Dymola . Workshop 2 Simulating and analyzing a physical system • Lecture 3 Configure system models . Workshop 3 Creating a reconfigurable system DAY 2 Dymola and Modelica I • Lecture 4 Modelica I – Writing Modelica models . Workshop 4a Cauer low pass filter using Electric Library . Workshop 4b A moving coil using Magnetic, Electric and Translational mechanics libraries . Workshop 4c Temperature control using Heat transfer Library • Lecture 5 Understanding equation-based modeling . Workshop 5 Defining boundary conditions • Lecture 6 Trouble shooting and common pitfalls . Workshop 6 Common pitfalls DAY 3 Dymola and Modelica II • Lecture 7 Modelica II – Advanced features . Workshop 7 Implementing a solar collector • Lecture 8 Working with the Modelica Standard Library . Workshop 8a Lamp logic using StateGraph II . Workshop 8b Suspension linkage using MultiBody mechanics • Lecture 9 Hybrid modeling . Workshop 9a Hybrid examples . Workshop 9b Hammer impact model . Workshop 9c Designing a thermostat valve DAY 4 Dymola and Modelica II • Lecture 10 Efficient and reconfigurable modeling . Workshop 10 Creating a system architecture based on templates and interfaces • Lecture 11 Model variants and data management . Workshop 11 Creating a data architecture and adaptive parameter interfaces • Lecture 12 FMI technology . Workshop 12a Import and Export FMUs in Dymola . Workshop 12b FMI with Excel . Workshop 12c FMI with Simulink DAY 5 Dymola and Modelica II • Lecture 13 Workflow automation and scripting . Workshop 13 Automated sensitivity analysis • Lecture 14 Dymola code with other tools . -
Click to Edit Master Title Style
Click to edit Master title style APMonitor Modeling Language John Hedengren Brigham Young University Advanced Process Solutions, LLC http://apmonitor.com Overview of APM Software as a service accessible through: MATLAB, Python, Web-browser interface Linux / Windows / Mac OS / Android platforms Solvers 1 1 2 3 3 APOPT , BPOPT , IPOPT , SNOPT , MINOS Problem characteristics: min J (x, y,u, z) Large-scale x s.t. 0 f , x, y,u, z Nonlinear Programming (NLP) t Mixed Integer NLP (MINLP) 0 g(x, y,u, z) Multi-objective 0 h(x, y,u, z) n m m Real-time systems x, y u z Differential Algebraic Equations (DAEs) 1 – APS, LLC 2 – EPL 3 – SBS, Inc. Oct 14, 2012 APMonitor.com Advanced Process Solutions, LLC Overview of APM Vector / matrix algebra with set notation Automatic Differentiation st nd Exact 1 and 2 Derivatives Large-scale, sparse systems of equations Object-oriented access Thermo-physical properties Database of preprogrammed models Parallel processing Optimization with uncertain parameters Custom solver or model connections Oct 14, 2012 APMonitor.com Advanced Process Solutions, LLC Unique Features of APM Initialization with nonlinear presolve minJ(x, y,u) x s.t. 0 f ,x, y,u min J (x, y,u) t 0 g(x, y,u) 0h(x, y,u) x minJ(x, y,u) x s.t. 0 f ,x, y,u s.t. 0 f , x, y,u t 0 g(x, y,u) t 0 h(x, y,u) minJ(x, y,u) x s.t. 0 f ,x, y,u t 0g(x, y,u) 0h(x, y,u) 0 g(x, y,u) minJ(x, y,u) x s.t. -
Basic Implementation of Multiple-Interval Pseudospectral Methods to Solve Optimal Control Problems
Basic Implementation of Multiple-Interval Pseudospectral Methods to Solve Optimal Control Problems Technical Report UIUC-ESDL-2015-01 Daniel R. Herber∗ Engineering System Design Lab University of Illinois at Urbana-Champaign June 4, 2015 Abstract A short discussion of optimal control methods is presented including in- direct, direct shooting, and direct transcription methods. Next the basics of multiple-interval pseudospectral methods are given independent of the nu- merical scheme to highlight the fundamentals. The two numerical schemes discussed are the Legendre pseudospectral method with LGL nodes and the Chebyshev pseudospectral method with CGL nodes. A brief comparison be- tween time-marching direct transcription methods and pseudospectral direct transcription is presented. The canonical Bryson-Denham state-constrained double integrator optimal control problem is used as a test optimal control problem. The results from the case study demonstrate the effect of user's choice in mesh parameters and little difference between the two numerical pseudospectral schemes. ∗Ph.D pre-candidate in Systems and Entrepreneurial Engineering, Department of In- dustrial and Enterprise Systems Engineering, University of Illinois at Urbana-Champaign, [email protected] c 2015 Daniel R. Herber 1 Contents 1 Optimal Control and Direct Transcription 3 2 Basics of Pseudospectral Methods 4 2.1 Foundation . 4 2.2 Multiple Intervals . 7 2.3 Legendre Pseudospectral Method with LGL Nodes . 9 2.4 Chebyshev Pseudospectral Method with CGL Nodes . 10 2.5 Brief Comparison to Time-Marching Direct Transcription Methods 11 3 Numeric Case Study 14 3.1 Test Problem Description . 14 3.2 Implementation and Analysis Details . 14 3.3 Summary of Case Study Results .