Search NASA⌕ Search

SEARCH · Search NASA

Results for “Pyomo”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

71 records · Page 4

GRIDAPPSD/distopf (33583-E)

DistOPF is an open-source Python package providing a three-phase, asymmetric optimal power flow (OPF) tool specifically designed for distribution systems. The key inventive features include: - Asymmetrical 3-phase OPF modeling for distribution systems with unbalanced phases - Comprehensive control optimization supporting both active (P) and reactive (Q) power control variables - Built-in visualization and validation tools - Standard test system benchmarking platform for algorithm development and comparison - Modular CSV-based input system using Pandas DataFrames for flexible model specification - Standard power distribution model importer enabling direct conversion from CIM and OpenDSS format to optimization-ready models - Multiple solve interface compatibility (PYOMO, CVXPY, SciPy) with automatic solver selection based on problem type

Gray, Nathan [Pacific Northwest National Laborator↗

IDAES-PSE 2.2.0 Release

The Institute for the Design of Advanced Energy Systems (IDAES) Integrated Platform is a versatile computational environment offering extensive process systems engineering (PSE) capabilities for optimizing the design and operation of complex, interacting technologies and systems. IDAES enables users to efficiently search vast, complex design spaces to discover the lowest cost, most environmentally sustainable solutions while supporting the full process modeling lifecycle, from conceptual design to dynamic optimization and control. The extensible, open platform empowers users to create models of novel processes and rapidly develop custom analyses, workflows, and end-user applications. New features in the 2.2 release include: DiagnosticsToolbox DiagnosticsToolbox (idaes.core.util.model_diagnostics. DiagnosticsToolbox is a new self-guiding toolbox for assisting with diagnosing modeling issues. The toolbox contains a wide range of tools for identifying common modeling issues and conveying these to the user, and more features will be added in the coming months. To try the new toolbox, use the following steps: from idaes.core.util import DiagnosticsToolbox Build an instance of your model Ensure your models has zero degrees of freedom (as best you can) dt = DiagnosticsToolbox(model) dt.report_structural_issues() Follow the prompts Deprecations DegeneracyHunter is being deprecated in favor of the new DiagnosticsToolbox. The features and capabilities of DegeneracyHunter will be moved over to the DiagnositcsToolbox in the coming months. Removal of usage of Pyomo's expr.current due to deprecation upstream. Removed support for radial basis functions in ALAMOpy as these did not work in the current implementation. Those wishing to use radial basis functions should use Pysmo instead. New Capabilities MSContactor model for unit operations involving mass transfer between 2 or more streams, such as membrane, solvent extraction and solids leaching operations. Other Improvements Improved formulation for solubility products with additional parameters for better scaling of terms Better backward compatibility, verification and robustness testing of core models and APIs Added support for Separator models without energy balances

DiagnosticsToolbox↗

PARETO 0.9.0 Release

PARETO 0.9.0 Release. Highlights: New Features - Initial beneficial reuse implementation - Post-optimization timing for infrastructure buildout Bug Fixes - Address Pyomo solver bug for UI Gurobi solve - Update Toy Case Study to feasible data for hydraulics post_process - Update Jupyter notebook for fall release UI Updates - Added functionality to optimize with hydraulics options - Added new plots to KPI dashboard for water quality and hydraulics timelines

PARETO,PARETO-UI,PSE,Process Systems Engineering,P↗

IDAES-PSE 2.3.0 Release

The Institute for the Design of Advanced Energy Systems (IDAES) Integrated Platform is a versatile computational environment offering extensive process systems engineering (PSE) capabilities for optimizing the design and operation of complex, interacting technologies and systems. IDAES enables users to efficiently search vast, complex design spaces to discover the lowest cost, most environmentally sustainable solutions while supporting the full process modeling lifecycle, from conceptual design to dynamic optimization and control. The extensible, open platform empowers users to create models of novel processes and rapidly develop custom analyses, workflows, and end-user applications.. New Features and Models • New diagnostics toolboxes and examples o Tutorial for using the DiagnosticsToolbox o Methods to identify potential evaluation errors in models o SVDToolbox for performing singular value decomposition analysis on models to identify possible degeneracies and poor scaling o DegeneracyHunter for identifying irreducible degenerate sets in models • Model for solid-liquid separation which takes two inputs (solid and liquid streams) and produces three outlets (solids, liquid entrained with solids and pure liquid) • Example of temperature swing adsorption in models_extra Deprecation Warnings • With the update to Pyomo 6.7.0, the plate heat exchanger model has begun failing tests on some CI platforms. If this is not addressed by the February release, this model may be removed due to failing tests. See #1294. Offers to help identify the cause and fix this issue are welcome. Improvements and bug fixes • Fixed oversight which precluded using Mixer and Separator models when inherent reactions were present in property package • Added reporting methods to the MSContactor model • Minor corrections in some examples where values were being fixed outside of declared variable bounds

DiagnosticsToolbox,IDAES,PSE,Process Systems Engin↗

IDAES GTEP 0.1 Release

The Institute for the Design of Advanced Energy Systems (IDAES) Generation and Transmission Expansion Planning (GTEP) package provides a Pyomo-based implementation of a modular, flexible, Generalized Disjunctive Programming (GDP) formulation for power infrastructure planning problems. This package is designed with the following goals in mind: - Abstract GTEP modeling away from any particular case study or fixed modeling assumptions (e.g., technologies, temporal resolution, spatial resolution, policy implications, etc.) - Admit flexible decision sets and heterogeneous parameterization - Allow high-level modeling options to be understood easily, chosen modularly, and changed rapidly

AS↗

Mixed Integer Nonlinear Programming Approaches to Enhance Resiliency and Response Strategies in Critical Infrastructure

Motivation. Critical infrastructures are large, complex engineered systems that must be operated robustly under abnormal conditions resulting from natural hazards or intentional acts. For example, electric power systems must be robust to line faults, water utilities must rapidly mitigate contamination incidents, and computing networks must adapt to adversarial intrusions to protect critical information. Problem. It is difficult for decision-makers within resiliency analysis in critical infrastructure to optimize designs and develop effective response strategies that can account for uncertainties. Facing incomplete information and the sheer scope that a natural hazard or attack vector may incorporate, response can be ineffective without reliable, scalable decision support tools. These problems are intrinsically nonlinear and involve discrete decisions, and unfortunately, existing off-the-shelf mathematical programming methods cannot support optimization-based decision-making of these nonlinear at scale. Method/Approach and Results. This project emphasized development of fundamental optimization strategies that supported real- time mitigation and response for critical infrastructures. In particular, the project developed multi- tree approaches based on piecewise outer-approximations for solution of mixed-integer nonlinear programming (MINLP) problems. These techniques alternate between an MILP or MISOCP relaxation to obtain a lower bound and candidate discrete solutions and an NLP subproblem to obtain upper bounds. Using tailored relaxations based on problem structure, these methods were used to solve several key applications in resilience and response of critical infrastructure. This work resulted in two open-source, copyrighted software packages: CORAMIN (https://github.com/Coramin/Coramin) -- an object-oriented mathematical programming framework that supports tailored multi-tree algorithms for solution of large- scale mixed-integer nonlinear programming; and EGRET (Electrical Grid Research and Engineering Toolkit) (https://github.com/grid- parity-exchange/Egret) -- a declarative mathematical programming framework built upon CORAMIN and Pyomo for formulation and solution of resilience and operations problems in power grid systems. Furthermore, these tools resulted in several important published results, including the following: The first known global optimization approach that could solve the unit-commitment problem with nonlinear power flow constraints on medium-sized test problems; Improved parallel optimization-based bounds tightening and strengthening of relaxations of AC power flow constraints; and, Optimization-based approaches for improved grid resilience and use of demand response to improve grid resilience with reduction in capital requirements. Result Implications. This project developed first-of-a-kind algorithms for decision-making in critical infrastructure resilience operations and planning, as well as a next-generation toolkit for MINLP researchers. These approaches leveraged high-performance computing architectures to solve some of the largest, most challenging nonlinear discrete optimization problems to global optimality, and these successes were captured in open-source software to enable optimization-based decision-making, and efficient solution of MINLP formulations for electric power transmission grids.

24 POWER TRANSMISSION AND DISTRIBUTION↗

PAO 1.0: A Python Library for Adversarial Optimization

PAO is a Python-based package for Adversarial Optimization. The goal of this package is to provide a general modeling and analysis capability for bilevel, trilevel and other multilevel optimization forms that express adversarial dynamics. PAO integrates two different modeling abstractions: 1. Algebraic models extend the modeling concepts in the Pyomo algebraic modeling language to express problems with an intuitive algebraic syntax. Thus, we expect that this modeling abstraction will commonly be used by PAO end-users. 2. Compact models express objective and constraints in a manner that is typically used to express the mathematical form of these problems (e.g. using vector and matrix data types). PAO denes custom Multilevel Problem Representations (MPRs) that simplify the implementation of solvers for bilevel, trilevel and other multilevel optimization problems.

97 MATHEMATICS AND COMPUTING↗

Spatio-temporal Estimates of Disease Transmission Parameters for COVID-19 with a Fully-Coupled, County-Level Model of the United States

Sandia National Laboratories has developed a capability to estimate parameters of epidemiological models from case reporting data to support responses to the COVID-19 pandemic. A differentiating feature of this work is the ability to simultaneously estimate county-specific disease transmission parameters in a nation-wide model that considers mobility between counties. The approach is focused on estimating parameters in a stochastic SEIR model that considers mobility between model patches (i.e., counties) as well as additional infectious compartments. The inference engine developed by Sandia includes (1) reconstruction and (2) transmission parameter inference. Reconstruction involves estimating current population counts within each of the compartments in a modified SEIR model from reported case data. Reconstruction produces input for the inference formulations, and it provides initial conditions that can be used in other modeling and planning efforts. Inference involves the solution of a large-scale optimization problem to estimate the time profiles for the transmission parameters in each county. These provide quantification of changes in the transmission parameter over time (e.g., due to impact of intervention strategies). This capability has been implemented in a Python-based software package, epi_inference, that makes extensive use of Pyomo [5] and IPOPT [10] to formulate and solve the inference formulations.

42 ENGINEERING↗

NMSBA Sustainable Engineering (Final Report)

This report summarizes the guidance provided to Sustainable Engineering to help them learn about equation-oriented optimization and the Sandia-developed software packages Pyomo and IDAESPSE. This was a short 10-week project (October 2021 – December 2021) and the goal was to help the company learn about the IDAES framework and how it could be used for their future projects. The company submitted an SBIR proposal related to developing a green ammonia process model with IDAES and if that proposal is successful this NMSBA project could lead to future collaboration opportunities.

42 ENGINEERING↗

Real-Time Optimization Workflow Status Update

Economically optimal and safe operation of integrated energy systems (IES) requires optimization at many different time scales. A real-time optimization (RTO) workflow will attempt to maximize revenue and minimize operational costs on a time scale of minutes to hours. Such a workflow requires the use of a digital twin (DT), which is a virtual representation of a physical system. The DT is updated using real-time data from the physical system, and serves as a model in an optimization framework. The optimization results are then sent back to the physical system to complete the loop. This report details the progress made in developing building blocks for a DT/RTO framework. The Risk Analysis Virtual Environment (RAVEN) platform within the Framework for Optimization of Resources and Economics (FORCE) tool suite can perform many of the tasks required for building a DT and performing RTO. The first item of this report details RAVEN enhancements that enable RAVEN workflows to be run in various environments. Data communication between the physical system and its DT is essential for successful RTO. This includes preprocessing real-time data, loading data into a data warehouse, and querying the stored data. The second section of this report describes the progress made in implementing an adapter in Python in order for Deep Lynx to handle the data communication. Typical dispatch optimization frameworks are built on linear programming (LP). The prototype RTO workflow developed in this report uses an LP problem as a part of a receding-horizon- or economic model predictive control (EMPC) based optimization. The third section of this report details the framework of an RTO workflow in which the system consists of a simple electrical storage device. A DT can be built from a reduced-order model (ROM). Integrating a ROM into a typical LP optimization framework has been challenging because most optimization packages require the user to write algebraic expressions for the system model. The final section of this report shows how an externally built RAVEN ROM can be integrated in an RTO framework by using the Python package Pyomo. This demonstrates the RTO workflow capability from a software-only perspective and is an important step in demonstrating the capability to implement an RTO workflow for a physical system.

97 MATHEMATICS AND COMPUTING↗

Decomposition and Algorithmic Approaches for Solving Large-Scale Process Family Design Problems

Our most recent work expands the water desalination case study from 76 variants to 10,897 variants using the equation-oriented model built in Pyomo as part of the PARETO project. Using the discretization formulation presented in Stinchfield (2024a), rather than solving for all 10,897 variants simultaneously, we decompose the formulation into subproblems containing subsets of variants from the process family. We solve the overall problem with Progressive Hedging (PH) deployed in parallel on a distributed HPC cluster using the open-source Python package mpi-sppy (Knueven et al., 2023). This approach allowed us to solve this process family design problem to ~1.5% relative optimality gap in about 5 hours; in comparison, Gurobi reached ~50% relative optimality gap in about 6 hours (Stinchfield et al., 2024b). However, this approach still requires discretization of the common unit module design ranges; additionally, PH acts as a heuristic for MILP’s with gap-closing capabilities. Ideally, we would not have to use ML surrogates or discretization to solve this problem, instead solving the process family design problem with the equation-oriented model directly to achieve the most accurate results. However, recall that we did not consider solving the MINLP directly due to complexity and size. In this work, we aim to decompose and solve this large-scale MINLP using a Structured Nonlinear Global Optimization algorithm presented by Cao and Zavala (2019).

Stinchfield, Georgia↗

Alternative regularizations for Outer-Approximation algorithms for convex MINLP

In this work, we extend the regularization framework from Kronqvist et al. (Math Program 180(1):285–310, 2020) by incorporating several new regularization functions and develop a regularized single-tree search method for solving convex mixed-integer nonlinear programming (MINLP) problems. We propose a set of regularization functions based on distance metrics and Lagrangean approximations, used in the projection problem for finding new integer combinations to be used within the Outer-Approximation (OA) method. The new approach, called Regularized Outer-Approximation (ROA), has been implemented as part of the open-source Mixed-integer nonlinear decomposition toolbox for Pyomo—MindtPy. We compare the OA method with seven regularization function alternatives for ROA. Moreover, we extend the LP/NLP Branch and Bound method proposed by Quesada and Grossmann (Comput Chem Eng 16(10–11):937–947, 1992) to include regularization in an algorithm denoted RLP/NLP. We provide convergence guarantees for both ROA and RLP/NLP. Finally, we perform an extensive computational experiment considering all convex MINLP problems in the benchmark library MINLPLib. The computational results show clear advantages of using regularization combined with the OA method.

Convex Mixed-integer nonlinear programming↗

A Convexification-Based Outer-Approximation Method for Convex and Nonconvex MINLP

The advancement of domain reduction techniques has significantly enhanced the performance of solvers in mathematical programming. This paper delves into the impact of integrating convexification and domain reduction techniques within the Outer-Approximation method. We propose a refined convexification-based Outer-Approximation method alongside a Branch-and-Bound method for both convex and nonconvex Mixed-Integer Nonlinear Programming problems. These methods have been developed and incorporated into the open-source Mixed-Integer Nonlinear Decomposition Toolbox for Pyomo-MindtPy. Comprehensive benchmark tests were conducted, validating the effectiveness and reliability of our proposed algorithms. These tests highlight the improvements achieved by incorporating convexification and domain reduction techniques into the Outer-Approximation and Branch-and-Bound methods.

Optimization↗

SNoGloDe: A Structured Nonlinear Global Decomposition Solver

Large-scale optimization problems often require decomposition strategies and customized algorithms to achieve optimal solutions within a reasonable time. Building on the work of Cao and Zavala (2019) for solving nonlinear two-stage stochastic programs to global optimality, we implement and extend their approach. We generalize to optimization problems reformulated with a block-angular constraint structure (e.g., temporal decomposition). Our framework, written in Python using Pyomo, is highly customizable and enables parallel execution of the decomposition. SNoGloDe allows tailored branching strategies, lower bounding problems, and candidate generators to leverage problem-specific knowledge. To demonstrate effectiveness, we compare SNoGloDe’s performance with Gurobi on a temporally decomposed produced water case study.

algorithms↗

The IDAES process modeling framework and model library—Flexibility for process simulation and optimization

Abstract Energy systems and manufacturing processes of the 21st century are becoming increasingly dynamic and interconnected, which require new capabilities to effectively model and optimize their design and operations. Such next generation computational tools must leverage state‐of‐the‐art techniques in optimization and be able to rapidly incorporate new advances. To address these requirements, we have developed the Institute for the Design of Advanced Energy Systems (IDAES) Integrated Platform, which builds on the strengths of both process simulators (model libraries) and algebraic modeling languages (advanced solvers). This paper specifically presents the IDAES Core Modeling Framework (IDAES‐CMF), along with a case study demonstrating the application of the framework to solve process optimization problems. Capabilities provided by this framework include a flexible, modifiable, open‐source platform for optimization of process flowsheets utilizing state‐of‐the‐art solvers and solution techniques, fully open and extensible libraries of dynamic unit operations models and thermophysical property models, and integrated support for superstructure‐based conceptual design and optimization under uncertainty.

42 ENGINEERING↗

Jacobian-based model diagnostics and application to equation oriented modeling of a carbon capture system

It can be difficult to identify the specific variables or equations responsible for convergence issues in large mathematical programming models. The Institute for the Design of Advanced Energy Systems Integrated Platform (IDAES-IP) contains a tool to identify poorly scaled constraints and variables by searching for rows and columns of the Jacobian matrix with small L2-norms. A singular value decomposition is then performed to identify degenerate sets of equations and remaining scaling issues. Here, this work presents a flowsheet developed for post-combustion carbon capture using a monoethanolamine (MEA) solvent system as a case study. This work takes the reader through the entire process of model diagnostics and reformulation, from a basic introduction to the mathematics behind these model diagnostics to the reformulations necessary to make the model numerically robust, including a significantly modified enhancement factor model.

IDAES↗

Digital Twin Development for Real Time Optimization

In the real-time optimization operation process of the integrated energy system, digital twin (DT) can support operators to find optimal dispatching strategy. In this research, the DT framework interfacing (external) system-level simulation model, RAVEN, and Python-based optimization framework has been developed. Simple demonstration of finding optimal input values minimizing an objective function with the DT framework has been presented.

25 ENERGY STORAGE↗