Metacontrol: A Python based application for self-optimizing control using metamodels

https://doi.org/10.1016/j.compchemeng.2020.106979Get rights and content

Highlights

  • A software for self-optimizing control structure selection is developed in Python.

  • It uses metamodels for processes optimization and control structure selection.

  • It communicates with a process simulator (Aspen Plus), facilitating its use.

  • It has a comprehensive User Interface to facilitate its usage, built in QT framework.

  • Three industrial-scale case studies are presented to show its features and potential.

Abstract

In this contribution, a detailed description of a Python based application tool that enables fast implementation of the Self-Optimizing Control (SOC) technology with the help of surrogate models is presented. The paper also outlines the potential uses of the Metacontrol (from Metamodel-based self-optimizing control) software through case studies of representative test-bed industrial processes. As a result, an in-depth analysis of Metacontrol from a plantwide control perspective is discussed, together with recommendations for use. The data, examples, and the Metacontrol source code are available for download at https://github.com/feslima/metacontrol.

Introduction

Most industrial processes operate under certain limitations that can be related to design, safety (e.g., temperature or pressure which an equipment can stand), environmental (e.g., pollutant emissions), quality specifications (e.g., product purity), and economic viability. Usually these constraints are applied all at once and can be sometimes conflicting. Therefore, it is important to operate such processes optimally or, at least, close to its optimal point in order to attain maximum profit or keep expenses at minimum while still satisfying those restrictions.

One way to approach this problem is through the application of some plantwide control methodology. In particular, the Self-Optimizing Control (SOC) technology (Morari, Arkun, Stephanopoulos, 1980, Skogestad, 2000, Alstad, Skogestad, Hori, 2009) is a practical procedure used to design control structures following a given criterion considering a constant set-point policy. The SOC methodology is advantageous in this respect because the need to reoptimize the process every time a disturbance occurs is significantly mitigated. Furthermore, since the SOC procedure is quite systematic, ideally it could be implemented in an automatic fashion. However, a search in the literature reviews that there exists only the work of Silva et al. (2017) on the development and implementation of the SOC concepts in a software tool. They used a branch-and-bound algorithm based on the maximization of the minimum singular value rule to find the best sets of candidate controlled variables capable of minimizing the incurred loss between real optimal operation and the constant setpoint (feedback) policy. This first work can be considered a kickoff in proposing a unified platform for grouping the main steps of the top-down analysis of Skogestad (2000). However, the most important differences from the present work are:

  • Support for steady-state optimization.

  • Use of more robust metamodels. In this work, Krigingmetamodels are used in contrast to cubic splines.

  • This tool acts as an open-source standalone application since there is no need of other proprietary software installed. Silva et al. (2017), on the other hand, requires a specific version of Microsoft Excel.

  • Better SOC criteria implemented. This works does not make use of the maximization of the minimum singular value, which is known to give erroneous order of controlled candidates losses (Halvorsen et al., 2003).

All in all, this paper aims at giving a thorough description of a software tool that streamlines the application of the SOC methodology, the theoretical framework of which has been already developed in the work of Alves et al. (2018). The tool is referred to as Metacontrol (from Metamodel-based self-optimizing control), and is freely available as an open-source at https://github.com/feslima/metacontrol, with documentation and examples included. The focus here is to describe its philosophy, the implementation details, and the computing technologies used to create its basic infrastructure and user experience.

Section snippets

Metacontrol overview

To apply the “top-down” analysis of the SOC methodology (Skogestad, 2000) the conventional way (Alves, Lima, Silva, Araujo, 2018, Alstad, Skogestad, Hori, 2009, Skogestad, 2000), the following steps are typically involved:

  • 1.

    Identify the relevant process variables, i.e., manipulated variables, disturbances, and potential candidate controlled variables (process measurements), and perform a Degree of Freedom (DOF) analysis taking into account both steady and dynamic states of the process.

  • 2.

    Define

Methodology

In this section the methods and algorithms used in Metacontrol are discussed based on the steps presented in Fig. 1. The tool has three major routines implemented in Python (Van Rossum and Drake, 2009) as separated packages for modular use:

  • 1.

    The metamodel/surrogate building and prediction used for optimization and also for derivative information, and the method responsible for the design of experiments (steps 2, 3, and 6).

  • 2.

    The surrogate optimization algorithm to find the steady-state process

Case studies

This section gives detailed explanation of Metacontrol usage and particularities as applied to some test-bed examples. These cases are quite representative of most processes encountered in industry given their large scale nature or intrinsic complexity, with many internal material and energy recycles.

For the sake of brevity, step-by-step screenshots of the entire procedure are showed only for the first case study. For the other two cases, screenshots are still needed to depict the SOC results,

Discussion

In this section, the main aspects of Metacontrol with recommendations of usage will be discussed. The idea is to give users information on best commercial simulator modeling practices and technical guidelines for setting up cases and selecting suitable parameters to improve metamodel accuracy and optimization convergence.

Conclusion

Metacontrol is a surrogate model based tool created for easy implementation of the Self-Optimizing Control technology. The simplicity of use does not reflect the complexity of coding several pieces of state-of-the-art algorithms from different sources into one centralized software. In addition, solving different types of formulations in a unified platform, as seen by the application examples, renders Metacontrol flexibility for selecting best sets of controlled variables or combinations

CRediT authorship contribution statement

Felipe Souza Lima: Conceptualization, Methodology, Software, Formal analysis, Writing - original draft, Data curation. Victor Manuel Cunha Alves: Conceptualization, Methodology, Validation, Writing - original draft, Investigation. Antonio Carlos Brandao Araujo: Supervision, Writing - review & editing.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

References (47)

  • M.B. Toftegaard et al.

    Oxy-fuel combustion of solid fuels

    Progress in Energy and Combustion Science

    (2010)
  • G. Van Rossum et al.

    Python 3 Reference Manual

    (2009)
  • N. Alexandrov et al.

    Optimization with variable-fidelity models applied to wing design

    38th Aerospace Sciences Meeting and Exhibit

    (2000)
  • V. Alstad et al.

    Null space method for selecting optimal measurement combinations as controlled variables

    Ind. Eng. Chem. Res.

    (2007)
  • V.M.C. Alves et al.

    Metamodel-based numerical techniques for self-optimizing control

    Ind. Eng. Chem. Res.

    (2018)
  • A. Araüjo et al.

    Control structure design for the ammonia synthesis process

    Computers & Chemical Engineering

    (2008)
  • AspenTech

    Aspen Plus User Guide

    (2017)
  • B. Buhre et al.

    Oxy-fuel combustion technology for coal-fired power generation

    Progress in Energy and Combustion Science

    (2005)
  • J.A. Caballero et al.

    An algorithm for the use of surrogate models in modular flowsheet optimization

    AlChE J.

    (2008)
  • A. Cozad et al.

    Learning surrogate models for simulation-based optimization

    AlChE J.

    (2014)
  • A. Forrester et al.

    Engineering Design via Surrogate Modelling: APractical Guide

    (2008)
  • V. Gera et al.

    Economic plantwide control of the cumene process

    Ind. Eng. Chem. Res.

    (2013)
  • I.J. Halvorsen et al.

    Optimal selection of controlled variables

    Ind. Eng. Chem. Res.

    (2003)
  • Cited by (8)

    View all citing articles on Scopus
    View full text