Homepage of the P3δ software

Partial pole placement via delay action

Islam Boussaada
University Paris-Saclay, CNRS - CentraleSupélec, Inria Saclay
Laboratory of Signals and Systems

What's new: Patch notes v 2.0


Control systems often operate in the presence of delays, primarily due to the time taken to acquire the information needed for decision-making, to create control decisions and to execute these decisions.

Commonly, such a time-delay induces desynchronizing and/or destabilizing effects on the dynamics. However, some recent studies have emphasized that the delay may have a stabilizing effect in the control design, generating low complexity controllers able to stabilize solution of dynamical system with prescribed decay.


P3δ is a Python implementation of recent methods for the stability analysis and stabilization of linear time-delay systems exploiting the delay action. This strategy is based on properties of the spectral distribution of the time-delay system.

The idea to design such an implementation dates back to the first publications on the topic where the characterization of multiple spectral values of a time-delay system in terms of confluent Vandermonde and Birkhoff matrices, and their structural properties, enabled a constructive alternative to the Pólya and Szegő count for the maximal admissible multiplicity [1, 2].

The multiplicity of a spectral value itself is not important as such, but its connection with the dominancy of this spectral value is a meaningful tool for control synthesis. Indeed, two main properties called respectively the multiplicity-induced-dominancy (MID) and the coexisting-real-roots-induced-dominancy (CRRID) were introduced, respectively in [3, 4] and [5, 6], and applied, for instance, in the control of active vibrating flexible structures.

The symbolic/numeric procedures generating P3δ can be easily converted to any computer algebra systems such as Maplesoft, Mathematica, Matlab, Octave ...

This software was implemented in the context of the internship of six rigorous and efficient undergraduate students from IPSA and the one year brilliant postdoctoral fellow, which I had the chance to supervise during 2019-2020.

Last but not least, this work is done thanks to the several years of fruitful collaborations with generous collaborators who accepted to share their expertise and knowledge in the field of control of dynamical systems and to the new collaboration with the CYB’AIR Student Association at IPSA aiming at acquiring, sharing skills and experience on professional software.

This project was carried thanks to the financial support of a public grant overseen by the French National Research Agency (ANR) as part of the ''Investissement d'Avenir'' program, through the ''iCODE Institute project'', funded by the IDEX Paris-Saclay, two PHC (Partenariat Huber Curien) grants BALATON 2018 (No. 40502NM) and BRANCUSI 2017 (No. 38390ZL), and a grant from Inria Saclay (2020).

User guide

The package and its use are described in the manual. The user can find additional illustrative examples in it.
The user guide can be found here.


Here are two short videos that we prepared for you to show you how the software works

The first one is on a generic MID use:

The second one is on the sensitivity setting on the P3δ software: