Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data-driven predictive control of nonlinear systems using weighted regularization

Authors

Fritz A. Engeln*, Sebastian Zieglmeier**, Marta Zagórowska*, Jan-Willem van Wingerden*

* Delft Center for Systems and Control, Delft University of Technology, Delft, The Netherlands

** Department of Technology Systems, University of Oslo, Kjeller, Norway

Corresponding author: Fritz A. Engeln Email: f.a.engeln@tudelft.nl

Abstract

Data-driven control methods, like Data-enabled Predictive Control (DeePC), are often formulated for linear systems, where the principle of superposition allows global system behavior to be inferred from locally collected data through Willems' fundamental lemma. This principle does not hold for nonlinear systems, whose dynamics may vary across operating regions. We propose a data-driven predictive control framework for nonlinear systems that incorporates data column preferences according to their proximity to the current operating point through a weighted norm regularization, thereby localizing the predictor without discarding any data. We show how the proposed weighting scheme induces operating point-dependent data prioritization and ensures a well-posed optimization problem. A numerical study on a nonlinear two-tank system demonstrates that the proposed method matches or outperforms hard data-selection schemes while retaining the full data matrix and its rank, thereby guaranteeing feasibility.

Overview

This repository contains the code accompanying the paper:

"Data-driven predictive control of nonlinear systems using weighted regularization."

The repository provides all scripts required to reproduce the numerical example presented in the paper using the nonlinear two-tank benchmark system.

Two-tank system

Reproducing the Results

  1. Run bin/collectData.m to generate the required data.
  2. Execute the scripts in TuneControllers/ to perform controller tuning and determine the optimal parameter settings.
  3. Run SimulatorDPC.m to perform the reference-tracking simulations and generate all figures used in the paper.

Citation

If you use this code in your research, please cite:

F. A. Engeln, S. Zieglmeier, M. Zagórowska, and J.-W. van Wingerden, Data-driven predictive control of nonlinear systems using weighted regularization

About

Code for the reproducibility of our work on "From data selection to data preferences: A data-driven control framework for nonlinear systems"

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages