# Time Optimal Control Laws for Bilinear Systems

Authors: Salim Bichiou; Mohamed Karim Bouafoura; Naceur Benhadj Braiek
Journal: Mathematical Problems in Engineering
 (2018)

---

## Abstract

The aim of this paper is to determine the feedforward and state feedback suboptimal time control for a subset of bilinear systems, namely, the control sequence and reaching time. This paper proposes a method that uses Block pulse functions as an orthogonal base. The bilinear system is projected along that base. The mathematical integration is transformed into a product of matrices. An algebraic system of equations is obtained. This system together with specified constraints is treated as an optimization problem. The parameters to determine are the final time, the control sequence, and the states trajectories. The obtained results via the newly proposed method are compared to known analytical solutions.


---

## Body

## 1. Introduction

Most engineering applications are aimed at solving complex mathematical models. This usually comes with a computational burden and is of a major concern. Researchers are therefore striving to reduce that burden. This is particularly true for minimum time optimal control problems. Using Pontryagin maximum principle, the solution to this problem is known to be Bang-Bang, that is, control values switches between lower and upper boundaries. This type of control is required in some types of systems such as the thermostat switching between the on- and off-position. Time optimal control problems’ aim is driving systems from an initial state to a desired final state in minimum time while satisfying given constraints. To this day, time optimal control problem still attracts interest among researchers [1–3].Most engineering systems are interpreted as models. These models often feature nonlinear components which are challenging during the resolution process. Thus, simplified nonlinear representations such as bilinear models have gained momentum. Bilinear models have been introduced since the 1960s and are approximate representations for a wide range of systems. The bilinear structure can be used to describe a nonlinear system while maintaining a linear structure: the bilinearity expresses a double linearity with respect to the state vector and [4]. A detailed review of bilinear systems can be found in [5]. This type of representation has been used extensively by researchers during the previous decade for a variety of fields: engineering, biology, and economics [6, 7].Solving the minimum time control problem analytically means finding switching times through the resolution of the Hamiltonian equation. This is a computationally intensive task. Some researchers tried to solve it analytically through the determination of switching surfaces [8]. Due to mathematical difficulty, numerical algorithms have been developed and introduced such as GPOPS-II, which is based on orthogonal collocation at Legendre–Gauss or Legendre–Gauss–Radau points [9]. Other tools are based on the control parametrization enhancing technique [10] and the optimal switching (TOS) algorithm [11].In this paper, we use orthogonal functions to solve the minimum time control problem. In fact, this mathematical tool was widely used in the past and still is in different ways such as solution determination for optimal control problems [12–14]. Using this technique, a transposition of state space equation on an orthogonal base of functions and transformation of bilinear nonlinearity and integration operation into a matrical product is made. These approximations bypass all the mathematical difficulties associated with nonlinearities.Generally, two types of orthogonal base of functions are considered in the literature: piecewise orthogonal functions such as Walsh [15], Haar wavelets [16], and Block pulse functions [17] and orthogonal polynomials such as Legendre [18], Chebyshev [19], and Lagerre polynomials [20]. In [21] authors used Chebyshev polynomials and expanded linear systems in that base to determine the time optimal control input. In this paper piecewise orthogonal functions, namely, Block pulse functions, are used to capture the Bang-Bang control nature associated with bilinear systems.The determination of minimum time control problem is generally done in open loop which can easily be altered by perturbation. Thus, many suboptimal structures and formulations were introduced for linear systems [22].The main contributions in this work are(1) determining an open loop time optimal control solution for bilinear systems through orthogonal functions and numerical resolution; (2) determining a state suboptimal time feedback controller (see Table 2) using a new formulation based on Kronecker product for that class of systems.The remainder of the paper is organised as follows. In the second section, formulation of time optimal control is presented. In the third section, orthogonal functions and their properties are introduced. The optimization model for an open loop minimum time control is presented in the fourth section. In the fifth section, the minimum time state feedback control is formulated and a solution is proposed. Finally, concluding remarks and some open problems are presented.


## 2. Time-Optimal Constrained Feedforward Control Problem

Consider the bilinear systems described by the following state space form:(1)x˙t=A0xt+∑i=1mAixtuit+But=A0xt+Aut⊗xt+But,where x∈Rn is the state vector, u=u1,…,umT∈Rm is the input control vector, A0 and Ai,i=1,…,n, are square (n×n) matrices, B is an (n×m) matrix and A=A1A2⋯Am and B=B1B2⋯Bm, Bi,i=1,…,m, are the column of the matrix B, and ⊗ is the Kronecker product [24].We assume that the input variablesui satisfy the instantaneous constraint(2)uimin≤uit≤uimax.The target state being the origin(3)xtf=0.To minimize the final time, the cost function is taken as [25]:(4)J=tf-t0=∫t0tfr·dt,where r=1.Applying the Pontryagin Maximum Principle (PMP) [26], we define the Hamiltonian [27] equation for system (1)(5)H·=-1+λTA0xt+∑i=1mAixtuit+But.The canonical Hamilton equations are given by(6)x˙=∂∂λHλ˙=-∂∂xH.Maximizing the Hamiltonian equation, one obtains the following control law:(7)uit=umin,if∂∂uiH=λTAix+Bi<0umax,if∂∂uiH=λTAix+Bi>0.Thus, the obtained control is Bang-Bang which is a feedforward controller that switches abruptly between two states.The main difficulty related to this control law formulation is the determination of the switching timestij. tij are the times when the quantity ∂H/∂ui changes sign. It is still until today a difficult task to solve this problem. Even for linear systems only reduced-order systems as second-order systems have been treated in the literature [28]. To overcome this difficulty for the class of bilinear systems, an original approach, based on the formulation of the studied system and the associated optimization problem in an orthogonal functions base, is proposed and developed in the following sections. In the next section, the main properties of the orthogonal functions, which will be used to derive our main results, are recalled.


## 3. Orthogonal Functions-Block Pulse Functions

Orthogonal functions and their operational matrices have been used for modeling dynamic systems [29] and identification [15]. They have been largely used in quadratic optimal control for different dynamic systems [30, 31]. To our knowledge, until today, there are no works dealing with the problem of minimum time control for bilinear systems using orthogonal functions.


### 3.1. General Idea

Letϕit,i∈N be a set of orthogonal polynomials or piecewise functions. Any analytical function absolutely integrable on the time interval t0,tf can be expanded by the following infinite series:(8)ft=∑i=0∞fiϕit,where the coefficients fi are evaluated by the following scalar product:(9)fi=∫t0tffξϕiξdξ.For numerical purposes, a truncation of (8) until a convenient number N of elementary functions is considered.(10)ft≅∑i=0N-1fiϕit=FNTΦNt,where ΦNT=φ0,φ1,…,φN-1 is the orthogonal base and FNT=f0f1⋯fN-1 is the coefficient vector.Integrating (10), one obtains(11)∫0tfξdξ≅FNTPNΦNt,where PN∈Rn×n is the operational matrix of integration depending on the considered orthogonal base [17].As a result, the differential equations describing dynamic processes can be reduced into algebraic relations allowing important simplifications in problem synthesis.The considered piecewise orthogonal functions and precisely the Block pulse functions are described in the following section.


### 3.2. Properties of Block Pulse Functions

Block pulse functions constitute a complete set of orthogonal functions. They are defined as follows [32]:(12)φit=1ift∈iNtf-t0,i+1Ntf-t0i=0,…,N-10otherwise.A function f(t) can be approximated by relation (10), where ΦN is a vector of N Block pulse functions and the coefficients fi of the vector FN are given by the following formula:(13)fi=Ntf-t0∫itf-t0/Ni+1tf-t0/Nftdt.Many interesting properties and tools of the approximation of an analytic function by a series of Block pulse functions have been defined in literature, as the operational matrix of integration, the operational matrix of product, the operational matrix of delay, and the operational matrix of derivative [17].


#### 3.2.1. Block Pulse Operational Matrix of Integration

The integration of an analytic functionft using the operational matrix of integration for Block pulse functions is given by [17](14)PN=tf-t0N1211⋯10121⋯1⋮⋱12⋯1⋮⋱⋱⋮0⋯⋯012.


#### 3.2.2. Block Pulse Operational Matrix of Product

The product of orthogonal base vectors can be approximated through operational matrix of product denotedMiN. It is defined by [33]: ∀i,j∈0,1,…,N-1, φitφjt≅KijTΦNt, one has(15)φitΦNt≅MiNΦNtwith MiN=K0i⋯KN-1,i.Using (15), one may obtain(16)ϕN⊗ϕN≃φ0φ1⋮φN-1⊗ϕNt≃φ0ϕNtφ1ϕNt⋮φN-1ϕNt≅M0NM1N⋮MN-1NϕNt≅MNϕNt.


## 3.1. General Idea

Letϕit,i∈N be a set of orthogonal polynomials or piecewise functions. Any analytical function absolutely integrable on the time interval t0,tf can be expanded by the following infinite series:(8)ft=∑i=0∞fiϕit,where the coefficients fi are evaluated by the following scalar product:(9)fi=∫t0tffξϕiξdξ.For numerical purposes, a truncation of (8) until a convenient number N of elementary functions is considered.(10)ft≅∑i=0N-1fiϕit=FNTΦNt,where ΦNT=φ0,φ1,…,φN-1 is the orthogonal base and FNT=f0f1⋯fN-1 is the coefficient vector.Integrating (10), one obtains(11)∫0tfξdξ≅FNTPNΦNt,where PN∈Rn×n is the operational matrix of integration depending on the considered orthogonal base [17].As a result, the differential equations describing dynamic processes can be reduced into algebraic relations allowing important simplifications in problem synthesis.The considered piecewise orthogonal functions and precisely the Block pulse functions are described in the following section.


## 3.2. Properties of Block Pulse Functions

Block pulse functions constitute a complete set of orthogonal functions. They are defined as follows [32]:(12)φit=1ift∈iNtf-t0,i+1Ntf-t0i=0,…,N-10otherwise.A function f(t) can be approximated by relation (10), where ΦN is a vector of N Block pulse functions and the coefficients fi of the vector FN are given by the following formula:(13)fi=Ntf-t0∫itf-t0/Ni+1tf-t0/Nftdt.Many interesting properties and tools of the approximation of an analytic function by a series of Block pulse functions have been defined in literature, as the operational matrix of integration, the operational matrix of product, the operational matrix of delay, and the operational matrix of derivative [17].


### 3.2.1. Block Pulse Operational Matrix of Integration

The integration of an analytic functionft using the operational matrix of integration for Block pulse functions is given by [17](14)PN=tf-t0N1211⋯10121⋯1⋮⋱12⋯1⋮⋱⋱⋮0⋯⋯012.


### 3.2.2. Block Pulse Operational Matrix of Product

The product of orthogonal base vectors can be approximated through operational matrix of product denotedMiN. It is defined by [33]: ∀i,j∈0,1,…,N-1, φitφjt≅KijTΦNt, one has(15)φitΦNt≅MiNΦNtwith MiN=K0i⋯KN-1,i.Using (15), one may obtain(16)ϕN⊗ϕN≃φ0φ1⋮φN-1⊗ϕNt≃φ0ϕNtφ1ϕNt⋮φN-1ϕNt≅M0NM1N⋮MN-1NϕNt≅MNϕNt.


## 3.2.1. Block Pulse Operational Matrix of Integration

The integration of an analytic functionft using the operational matrix of integration for Block pulse functions is given by [17](14)PN=tf-t0N1211⋯10121⋯1⋮⋱12⋯1⋮⋱⋱⋮0⋯⋯012.


## 3.2.2. Block Pulse Operational Matrix of Product

The product of orthogonal base vectors can be approximated through operational matrix of product denotedMiN. It is defined by [33]: ∀i,j∈0,1,…,N-1, φitφjt≅KijTΦNt, one has(15)φitΦNt≅MiNΦNtwith MiN=K0i⋯KN-1,i.Using (15), one may obtain(16)ϕN⊗ϕN≃φ0φ1⋮φN-1⊗ϕNt≃φ0ϕNtφ1ϕNt⋮φN-1ϕNt≅M0NM1N⋮MN-1NϕNt≅MNϕNt.


## 4. Synthesis of an Open Loop Minimum Time Control Using Orthogonal Functions

In this work we have chosen to use the Block pulse orthogonal functions due to the fact that solutions for minimum time problems are of type Bang-Bang which has the same structure as Block pulse functions.


### 4.1. Studied System Transposition on Orthogonal Base

Consider bilinear system (1). To make use of the orthogonal functions properties and mainly the operational matrix of integration one needs to know the operating time interval t0,tf. For simplicity, in the rest of the work and without loss of generality, let t0=0. We introduce here the following time variable change:(17)t=τtf,where tf denotes the final time to be minimized.This change of variable allows a transformation of the time domain fromt∈0,tf to τ∈0,1. Then system state becomes(18)xt=x~τ.Notice that the latter variable change leads to a constant time interval 0,1 for the used series. The final time tf becomes an additional unknown variable.Consequently, we deduce(19)x˙t=dx~τdτ·dτdt=1tfx~˙τ.The original state equation of system (1) is now equivalent to(20)1tfx~˙τ=A0x~τ+Au~τ⊗x~τ+Bu~τ.The development of the state and input vectors on the considered base of Block pulse functions with the new time variable τ can be written as(21)x~τ=x~NT·ϕNτu~τ=u~NT·ϕNτ.Integrating equation (20) leads to(22)1tfx~τ-x~0=A0∫0τx~ξdξ+A∫0τu~ξ⊗x~ξdξ+B∫0τu~ξdξ.Introducing coefficients of x~τ and u~τ and operational matrix of integration one obtains(23)∫0τx~ξdξ=x~N∫0τϕNξdξ=x~NPNϕNτ.Knowing that [33](24)u~Tτ⊗x~Tτ=u~NT·ϕNτ⊗x~NT·ϕNτ=u~NT⊗x~NTτ·ϕNt⊗ϕNτ=u~NT⊗x~NTτ·MNϕNτone can write(25)x~NT-x~N,0T=tfA0x~NTPN+Au~NT⊗x~NTMNPN+Bu~NTPN,where x~N0 is the transposition of the initial state over orthogonal functions. It depends on the chosen set of functions.


### 4.2. Optimization Problem Formulation Using Orthogonal Functions

To find the transition time from the initial to the target position, we need to solve the following nonlinear problem.OP1: Original Optimization Problem (26) m i n ⌻ t f (27) subject to: ⌻ x ˙ t = A 0 x t + A u t ⊗ x t + B u t ⌻ u ∈ u m i n , u m a x ⌻ x 0 = x 0 , ⌻ x t f = x f .The problem transposition over Block pulse base leads to the following nonlinear optimization problem named “orthogonal functions optimization problem.” This algorithm determines the time optimal input for given bilinear system.OP2: Orthogonal Functions Optimization Problem (28) m i n t f u ~ N , x ~ N , t fis subject to the following constraints:(i)
Initial condition is(29)x~N0=x~0x~0⋯x~0.(ii)
Equality constraint is(30)x~Nf=00⋯x~f;x~N,f denotes the transposition of the final sate over the orthogonal functions base.(iii)
Inequality constraint is(31)u~Nmin≤u~NT≤u~Nmax.(iv)
Nonlinear equality constraint is(32)x~NT-x~N,0T=tfA0x~NTPN+Au~NT⊗x~NTMNPN+Bu~NTPN.To solve this optimization problem, an interior point method such as the one implemented in the function “fmincon” under “Optimization” Toolbox of Matlab environment is used.


### 4.3. Simulation Results

In this subsection, two examples of bilinear systems are presented to evaluate the effectiveness of our developed approach.


#### 4.3.1. Example 1: First-Order Bilinear System

Consider the following bilinear system:(33)x˙=xu+uThe system needs to be shifted from x0=1 to the origin; the input u must be within interval -1,1.To validate the proposed approach, a comparative study between the theoretical method and the developed Block pulse functions approach is presented.Applying both methods on the studied system, we get the optimal minimum time valuetf=ln⁡2=0.69 s with ut=-1 for t∈0,tf and so without switching time. From Table 1, it is clear that the obtained result thought the BPF algorithm meets the analytic one. Figure 1(a) shows that the control law with BPF approach has the same control sequence as the analytical method. The state trajectory of the system provided by optimal control input is given in Figure 1(b).Table 1
Minimum time results with theoretical and BPF approaches.
Theoretical result BPFs method Final timetf ln ⁡ 2 = 0.69 s 0.6986 sTable 2
Table comparing the theoretical and BPF obtained results.
Method in [8] BPFs method Final timetf 1.4 pu 1.41 puFigure 1
Open loop optimal time control for example 1 with the developed BFP approach.
(a)
Control sequence for example1 (b)
System trajectory for example1


#### 4.3.2. Example 2: Boost Converter Bilinear System

Consider now the bilinear system representing a boost converter described in [8] and shown in Figure 2, where R1, R2, and RL are inductor, capacitor, and load resistance, respectively. Also, situations of switches are presented by ut; therefore, for zero value of input control, T1 and T2 are open and closed, respectively. T1 and T2 are two main switches which are connected with two antiparallel diodes.Figure 2
Boost converter scheme.Determining state space representation for the boost converter and transposing it in per-unit system are done in [8] where state variables of the system are chosen as(34)A0=x1tx2t=1ELC001EiLtv0t,where iLt and v0t are the inductor current and capacitor voltage and E are a constant uncontrolled input voltages. Also, C and L are output capacitor and inductor of the converter, respectively. The normalisation of the state-space model of the boost converter can be expressed as(35)x˙1τ=uτ-1x2τ+vτx˙2τ=1-uτx1τ-x2τQwith τ=t/LC being normalized time and Q=RLC/L being quality factor of the boost converter.Thus, the state space form of the system is given by(36)x˙=A0x+Axu+Bu,where(37)A0=0-11-0.48,A=01-10,B=10.The system needs to be shifted from x0=1.4,2T to xf=1.93,2T and the input u must be within interval [0,1].Note that the optimal control problem of this system has been treated analytically in [8]. Using the Block pulse functions optimization (OP2) developed in this paper we obtained the same results.The behaviors of the input and states variables are shown in Figures3(a) and 3(b), respectively. The final time is tf=1.41. From Figure 3(a), the control input is equal to 1 for t∈0,0.9 and -1 for t∈0.9,1.41.Figure 3
Open loop optimal time control for example2 with BPF approach.
(a)
Control sequence (b)
System trajectoryIt is clear that the obtained results are similar to the one in [8]. Thus, the proposed approach is demonstrated.Figure3(b) shows the state variables evolution of the considered system with the obtained optimal control signal.


## 4.1. Studied System Transposition on Orthogonal Base

Consider bilinear system (1). To make use of the orthogonal functions properties and mainly the operational matrix of integration one needs to know the operating time interval t0,tf. For simplicity, in the rest of the work and without loss of generality, let t0=0. We introduce here the following time variable change:(17)t=τtf,where tf denotes the final time to be minimized.This change of variable allows a transformation of the time domain fromt∈0,tf to τ∈0,1. Then system state becomes(18)xt=x~τ.Notice that the latter variable change leads to a constant time interval 0,1 for the used series. The final time tf becomes an additional unknown variable.Consequently, we deduce(19)x˙t=dx~τdτ·dτdt=1tfx~˙τ.The original state equation of system (1) is now equivalent to(20)1tfx~˙τ=A0x~τ+Au~τ⊗x~τ+Bu~τ.The development of the state and input vectors on the considered base of Block pulse functions with the new time variable τ can be written as(21)x~τ=x~NT·ϕNτu~τ=u~NT·ϕNτ.Integrating equation (20) leads to(22)1tfx~τ-x~0=A0∫0τx~ξdξ+A∫0τu~ξ⊗x~ξdξ+B∫0τu~ξdξ.Introducing coefficients of x~τ and u~τ and operational matrix of integration one obtains(23)∫0τx~ξdξ=x~N∫0τϕNξdξ=x~NPNϕNτ.Knowing that [33](24)u~Tτ⊗x~Tτ=u~NT·ϕNτ⊗x~NT·ϕNτ=u~NT⊗x~NTτ·ϕNt⊗ϕNτ=u~NT⊗x~NTτ·MNϕNτone can write(25)x~NT-x~N,0T=tfA0x~NTPN+Au~NT⊗x~NTMNPN+Bu~NTPN,where x~N0 is the transposition of the initial state over orthogonal functions. It depends on the chosen set of functions.


## 4.2. Optimization Problem Formulation Using Orthogonal Functions

To find the transition time from the initial to the target position, we need to solve the following nonlinear problem.OP1: Original Optimization Problem (26) m i n ⌻ t f (27) subject to: ⌻ x ˙ t = A 0 x t + A u t ⊗ x t + B u t ⌻ u ∈ u m i n , u m a x ⌻ x 0 = x 0 , ⌻ x t f = x f .The problem transposition over Block pulse base leads to the following nonlinear optimization problem named “orthogonal functions optimization problem.” This algorithm determines the time optimal input for given bilinear system.OP2: Orthogonal Functions Optimization Problem (28) m i n t f u ~ N , x ~ N , t fis subject to the following constraints:(i)
Initial condition is(29)x~N0=x~0x~0⋯x~0.(ii)
Equality constraint is(30)x~Nf=00⋯x~f;x~N,f denotes the transposition of the final sate over the orthogonal functions base.(iii)
Inequality constraint is(31)u~Nmin≤u~NT≤u~Nmax.(iv)
Nonlinear equality constraint is(32)x~NT-x~N,0T=tfA0x~NTPN+Au~NT⊗x~NTMNPN+Bu~NTPN.To solve this optimization problem, an interior point method such as the one implemented in the function “fmincon” under “Optimization” Toolbox of Matlab environment is used.


## 4.3. Simulation Results

In this subsection, two examples of bilinear systems are presented to evaluate the effectiveness of our developed approach.


### 4.3.1. Example 1: First-Order Bilinear System

Consider the following bilinear system:(33)x˙=xu+uThe system needs to be shifted from x0=1 to the origin; the input u must be within interval -1,1.To validate the proposed approach, a comparative study between the theoretical method and the developed Block pulse functions approach is presented.Applying both methods on the studied system, we get the optimal minimum time valuetf=ln⁡2=0.69 s with ut=-1 for t∈0,tf and so without switching time. From Table 1, it is clear that the obtained result thought the BPF algorithm meets the analytic one. Figure 1(a) shows that the control law with BPF approach has the same control sequence as the analytical method. The state trajectory of the system provided by optimal control input is given in Figure 1(b).Table 1
Minimum time results with theoretical and BPF approaches.
Theoretical result BPFs method Final timetf ln ⁡ 2 = 0.69 s 0.6986 sTable 2
Table comparing the theoretical and BPF obtained results.
Method in [8] BPFs method Final timetf 1.4 pu 1.41 puFigure 1
Open loop optimal time control for example 1 with the developed BFP approach.
(a)
Control sequence for example1 (b)
System trajectory for example1


### 4.3.2. Example 2: Boost Converter Bilinear System

Consider now the bilinear system representing a boost converter described in [8] and shown in Figure 2, where R1, R2, and RL are inductor, capacitor, and load resistance, respectively. Also, situations of switches are presented by ut; therefore, for zero value of input control, T1 and T2 are open and closed, respectively. T1 and T2 are two main switches which are connected with two antiparallel diodes.Figure 2
Boost converter scheme.Determining state space representation for the boost converter and transposing it in per-unit system are done in [8] where state variables of the system are chosen as(34)A0=x1tx2t=1ELC001EiLtv0t,where iLt and v0t are the inductor current and capacitor voltage and E are a constant uncontrolled input voltages. Also, C and L are output capacitor and inductor of the converter, respectively. The normalisation of the state-space model of the boost converter can be expressed as(35)x˙1τ=uτ-1x2τ+vτx˙2τ=1-uτx1τ-x2τQwith τ=t/LC being normalized time and Q=RLC/L being quality factor of the boost converter.Thus, the state space form of the system is given by(36)x˙=A0x+Axu+Bu,where(37)A0=0-11-0.48,A=01-10,B=10.The system needs to be shifted from x0=1.4,2T to xf=1.93,2T and the input u must be within interval [0,1].Note that the optimal control problem of this system has been treated analytically in [8]. Using the Block pulse functions optimization (OP2) developed in this paper we obtained the same results.The behaviors of the input and states variables are shown in Figures3(a) and 3(b), respectively. The final time is tf=1.41. From Figure 3(a), the control input is equal to 1 for t∈0,0.9 and -1 for t∈0.9,1.41.Figure 3
Open loop optimal time control for example2 with BPF approach.
(a)
Control sequence (b)
System trajectoryIt is clear that the obtained results are similar to the one in [8]. Thus, the proposed approach is demonstrated.Figure3(b) shows the state variables evolution of the considered system with the obtained optimal control signal.


## 4.3.1. Example 1: First-Order Bilinear System

Consider the following bilinear system:(33)x˙=xu+uThe system needs to be shifted from x0=1 to the origin; the input u must be within interval -1,1.To validate the proposed approach, a comparative study between the theoretical method and the developed Block pulse functions approach is presented.Applying both methods on the studied system, we get the optimal minimum time valuetf=ln⁡2=0.69 s with ut=-1 for t∈0,tf and so without switching time. From Table 1, it is clear that the obtained result thought the BPF algorithm meets the analytic one. Figure 1(a) shows that the control law with BPF approach has the same control sequence as the analytical method. The state trajectory of the system provided by optimal control input is given in Figure 1(b).Table 1
Minimum time results with theoretical and BPF approaches.
Theoretical result BPFs method Final timetf ln ⁡ 2 = 0.69 s 0.6986 sTable 2
Table comparing the theoretical and BPF obtained results.
Method in [8] BPFs method Final timetf 1.4 pu 1.41 puFigure 1
Open loop optimal time control for example 1 with the developed BFP approach.
(a)
Control sequence for example1 (b)
System trajectory for example1


## 4.3.2. Example 2: Boost Converter Bilinear System

Consider now the bilinear system representing a boost converter described in [8] and shown in Figure 2, where R1, R2, and RL are inductor, capacitor, and load resistance, respectively. Also, situations of switches are presented by ut; therefore, for zero value of input control, T1 and T2 are open and closed, respectively. T1 and T2 are two main switches which are connected with two antiparallel diodes.Figure 2
Boost converter scheme.Determining state space representation for the boost converter and transposing it in per-unit system are done in [8] where state variables of the system are chosen as(34)A0=x1tx2t=1ELC001EiLtv0t,where iLt and v0t are the inductor current and capacitor voltage and E are a constant uncontrolled input voltages. Also, C and L are output capacitor and inductor of the converter, respectively. The normalisation of the state-space model of the boost converter can be expressed as(35)x˙1τ=uτ-1x2τ+vτx˙2τ=1-uτx1τ-x2τQwith τ=t/LC being normalized time and Q=RLC/L being quality factor of the boost converter.Thus, the state space form of the system is given by(36)x˙=A0x+Axu+Bu,where(37)A0=0-11-0.48,A=01-10,B=10.The system needs to be shifted from x0=1.4,2T to xf=1.93,2T and the input u must be within interval [0,1].Note that the optimal control problem of this system has been treated analytically in [8]. Using the Block pulse functions optimization (OP2) developed in this paper we obtained the same results.The behaviors of the input and states variables are shown in Figures3(a) and 3(b), respectively. The final time is tf=1.41. From Figure 3(a), the control input is equal to 1 for t∈0,0.9 and -1 for t∈0.9,1.41.Figure 3
Open loop optimal time control for example2 with BPF approach.
(a)
Control sequence (b)
System trajectoryIt is clear that the obtained results are similar to the one in [8]. Thus, the proposed approach is demonstrated.Figure3(b) shows the state variables evolution of the considered system with the obtained optimal control signal.


## 5. State Feedback Suboptimal Time Control

In this part, an original state feedback suboptimal control approach is developed. The idea is based on the work in [22]. The formulation is done in Block pulse base and Kronecker product is used in order to determine the suboptimal controller.Now consider the time optimization of the bilinear system provided with a state feedback control lawu=-Kx. Hence, the feedback control gain K has to be determined such that the final time is minimized. Then, the elaborated control structure is suboptimal.


### 5.1. Suboptimal Time Control Problem Formulation

Consider system (1) with the time variable change (17) and let u~N∗ and x~N∗ be the optimal coefficients of the Bang-Bang control and system states, respectively. In this part of the work, we aim to derive a constant vector K which confers the optimal open loop state trajectories to the considered closed loop. Hence, we state that(38)u~N∗=-Kx~N∗.Replacing the control law by its feedback form (38) in (25), one obtains(39)x~N∗T-x~N,0T=tfA0x~N∗TPN+A-Kx~N∗T⊗x~N∗TMNPN-BKx~N∗TPN.Note here that for matrices D, E, F, and G with appropriate dimensions one has [24](40)D⊗EF⊗G=DF⊗EG;using this property one has(41)K·x~N∗T⊗IN·x~N∗T=K⊗INx~N∗T⊗x~N∗TFrom (41) and (39), one obtains(42)x~N∗T-x~N,0T=tfA0x~N∗TPN-AK⊗INx~N∗T⊗x~N∗TMNPN-BKx~N∗TPN.This can be rewritten as follows:(43)AK⊗INx~N∗T⊗x~N∗TMNPN+BKx~N∗TPN=A0x~N∗TPN+1tfx~N,0T-x~N∗T.Applying that, for any matrices X, Y, and Z with appropriate dimensions [24](44)vecXYZ=ZT⊗XvecY,one obtains(45)x~N∗T⊗x~N∗TMNPNT⊗AvecK⊗IN+x~N∗TPNT⊗BvecK=vecA0x~N∗TPN+1tfx~N,0T-x~N∗T.Note that vecK⊗In=∏n,mInvecK, where ∏n,mIn is the matrix defined by(46)∏n,mIn=vecE11n×m⊗In⋯vecEn1n×m⊗In⋯vecEn2n×m⊗In⋯vecEnmn×m⊗In,Ei,jp×q=eip⊗ejqT,where eip denotes the p-dimension unit vector which has 1 in the ith element and zero elsewhere. Equation (45) can be expressed as follows:(47)AΘ=BΘ=vec(K);A=α∏n,mIn+β;B=vecA0x~N∗TPN+1/tfx~N,0T-x~N∗T;α=x~N∗T⊗x~N∗TMNPNT⊗A;β=PNTx~N∗⊗B.Equation (47) can be solved in the least square sense, when no constraints are requested for the control:(48)K=matA+B,where (·)+ stands for Moore–Penrose pseudoinverse of a matrix and “mat” is the inverse of the “vec” operator(49)mat⁡v=mat⁡V1_V2_⋮_Vi_Vn_=V1∣V2∣⋯∣Vi∣Vn,where Vi are column vectors with same dimensions.In the case where the feedback control has to respect upper and lower bounds (2), that is,(50)umin,NT≤-Kx≤umax,NTDeveloping (50) over Block pulse function, within the transformed time interval, yields(51)umin≤-Kx~N∗T≤umaxInequality (51) can be written by the following form:(52)-Kx~N∗T≤umax,NTKx~N∗T≤-umin,NT.Using the vec and mat operators, system (52) can be written as follows: (53)⟺-x~N∗⊗Imvec⁡K≤vecumax,NTx~N∗⊗ImvecK≤-vecumin,NT.The latter inequality system could be written as(54)CΘ≤dwith(55)C=-x~N∗⊗Imx~N∗⊗Im,d=vecumax,NT-vecumin,NT.A constrained least square problem could be formulated as follows:(56)minΘ⁡12ΔΘ-γ22,subject to the constraint(57)CΘ≤d.This kind of optimization problem could be solved through “lsqlin” routine of MATLAB software.


### 5.2. Simulation Example

This section evaluates the performances of developed suboptimal time control approach. The studied system is a chemical reactor detailed in [23]. It is described by the following state space bilinear model:(58)x˙=A0x+Ax⊗u+Buwith(59)A0=161016,A=52452154,B=-42-2-2.The system needs to be shifted from x0=0,3T to the origin of state space; the input u must be within interval -4,4.In Figure4(a) simulation results for the control sequence show that the first input has two switching points t1=4·10-3 s and t2=0.063 s, while the second input has only one switching point t=0.033 s.Figure 4
Open loop optimal time control.
(a)
Optimal control sequence (b)
Optimal state trajectoriesThe state variables’ evolution is given in Figure4(b). The computed final time is tf=0.15 s.In [23], authors proposed a linear stabilizing state feedback for bilinear systems. Based on results of the chemical reactor therein, we propose in this paper to adopt that example while constraining control effort -20≤u≤40 to less values than obtained in [23]. We aim then to derive a state feedback that could enhance the time response of the system.Using the suboptimal control structure, we found the suboptimal control given in Figure5(a) and the closed loop trajectory given in Figure 5(b).Figure 5
Closed loop suboptimal control.
(a)
Suboptimal control (b)
Suboptimal state trajectoriesThe obtained feedback gain given in Table3 is clearly different from the one in [23]. Nevertheless, the obtained results are better.Table 3
Feedback values.
Feedback in [23] BPFs feedback Controller K = 0.5437 23.8399 - 0.6428 - 9.5656 K = - 6.7517 - 11.4278 4.5072 2.4255In fact, these results are better in term of final time and overshoot value than those presented in [23]. It is clear that, for both states, there is less overshoot and better settling time.Furthermore, we notice that the system trajectories shapes are too close in both the open loop with Bang-Bang input and the proposed closed loop state feedback.


## 5.1. Suboptimal Time Control Problem Formulation

Consider system (1) with the time variable change (17) and let u~N∗ and x~N∗ be the optimal coefficients of the Bang-Bang control and system states, respectively. In this part of the work, we aim to derive a constant vector K which confers the optimal open loop state trajectories to the considered closed loop. Hence, we state that(38)u~N∗=-Kx~N∗.Replacing the control law by its feedback form (38) in (25), one obtains(39)x~N∗T-x~N,0T=tfA0x~N∗TPN+A-Kx~N∗T⊗x~N∗TMNPN-BKx~N∗TPN.Note here that for matrices D, E, F, and G with appropriate dimensions one has [24](40)D⊗EF⊗G=DF⊗EG;using this property one has(41)K·x~N∗T⊗IN·x~N∗T=K⊗INx~N∗T⊗x~N∗TFrom (41) and (39), one obtains(42)x~N∗T-x~N,0T=tfA0x~N∗TPN-AK⊗INx~N∗T⊗x~N∗TMNPN-BKx~N∗TPN.This can be rewritten as follows:(43)AK⊗INx~N∗T⊗x~N∗TMNPN+BKx~N∗TPN=A0x~N∗TPN+1tfx~N,0T-x~N∗T.Applying that, for any matrices X, Y, and Z with appropriate dimensions [24](44)vecXYZ=ZT⊗XvecY,one obtains(45)x~N∗T⊗x~N∗TMNPNT⊗AvecK⊗IN+x~N∗TPNT⊗BvecK=vecA0x~N∗TPN+1tfx~N,0T-x~N∗T.Note that vecK⊗In=∏n,mInvecK, where ∏n,mIn is the matrix defined by(46)∏n,mIn=vecE11n×m⊗In⋯vecEn1n×m⊗In⋯vecEn2n×m⊗In⋯vecEnmn×m⊗In,Ei,jp×q=eip⊗ejqT,where eip denotes the p-dimension unit vector which has 1 in the ith element and zero elsewhere. Equation (45) can be expressed as follows:(47)AΘ=BΘ=vec(K);A=α∏n,mIn+β;B=vecA0x~N∗TPN+1/tfx~N,0T-x~N∗T;α=x~N∗T⊗x~N∗TMNPNT⊗A;β=PNTx~N∗⊗B.Equation (47) can be solved in the least square sense, when no constraints are requested for the control:(48)K=matA+B,where (·)+ stands for Moore–Penrose pseudoinverse of a matrix and “mat” is the inverse of the “vec” operator(49)mat⁡v=mat⁡V1_V2_⋮_Vi_Vn_=V1∣V2∣⋯∣Vi∣Vn,where Vi are column vectors with same dimensions.In the case where the feedback control has to respect upper and lower bounds (2), that is,(50)umin,NT≤-Kx≤umax,NTDeveloping (50) over Block pulse function, within the transformed time interval, yields(51)umin≤-Kx~N∗T≤umaxInequality (51) can be written by the following form:(52)-Kx~N∗T≤umax,NTKx~N∗T≤-umin,NT.Using the vec and mat operators, system (52) can be written as follows: (53)⟺-x~N∗⊗Imvec⁡K≤vecumax,NTx~N∗⊗ImvecK≤-vecumin,NT.The latter inequality system could be written as(54)CΘ≤dwith(55)C=-x~N∗⊗Imx~N∗⊗Im,d=vecumax,NT-vecumin,NT.A constrained least square problem could be formulated as follows:(56)minΘ⁡12ΔΘ-γ22,subject to the constraint(57)CΘ≤d.This kind of optimization problem could be solved through “lsqlin” routine of MATLAB software.


## 5.2. Simulation Example

This section evaluates the performances of developed suboptimal time control approach. The studied system is a chemical reactor detailed in [23]. It is described by the following state space bilinear model:(58)x˙=A0x+Ax⊗u+Buwith(59)A0=161016,A=52452154,B=-42-2-2.The system needs to be shifted from x0=0,3T to the origin of state space; the input u must be within interval -4,4.In Figure4(a) simulation results for the control sequence show that the first input has two switching points t1=4·10-3 s and t2=0.063 s, while the second input has only one switching point t=0.033 s.Figure 4
Open loop optimal time control.
(a)
Optimal control sequence (b)
Optimal state trajectoriesThe state variables’ evolution is given in Figure4(b). The computed final time is tf=0.15 s.In [23], authors proposed a linear stabilizing state feedback for bilinear systems. Based on results of the chemical reactor therein, we propose in this paper to adopt that example while constraining control effort -20≤u≤40 to less values than obtained in [23]. We aim then to derive a state feedback that could enhance the time response of the system.Using the suboptimal control structure, we found the suboptimal control given in Figure5(a) and the closed loop trajectory given in Figure 5(b).Figure 5
Closed loop suboptimal control.
(a)
Suboptimal control (b)
Suboptimal state trajectoriesThe obtained feedback gain given in Table3 is clearly different from the one in [23]. Nevertheless, the obtained results are better.Table 3
Feedback values.
Feedback in [23] BPFs feedback Controller K = 0.5437 23.8399 - 0.6428 - 9.5656 K = - 6.7517 - 11.4278 4.5072 2.4255In fact, these results are better in term of final time and overshoot value than those presented in [23]. It is clear that, for both states, there is less overshoot and better settling time.Furthermore, we notice that the system trajectories shapes are too close in both the open loop with Bang-Bang input and the proposed closed loop state feedback.


## 6. Conclusion

In this paper a practical approach is developed to solve the problem of time optimal control of bilinear systems.The proposed approach is based on the expansion of the system model on a complete set of orthogonal Block pulse functions. Two types of minimum time control law have been investigated. In the first time, the method has been implemented to determine the open loop minimum time control law. In the second time, a state feedback control law has been derived in order to generate the minimum time optimal states of the considered system.All the developed algorithms have been illustrated on different examples of minimum time optimal control and the obtained results are significant. Indeed they enable shorter time estimate compared with other published techniques [23].Note that the proposed method can be generalized to consider other classes of more complex nonlinear systems and we intend to pursue our work in this way.



---

*Source: 5217427-2018-04-08.xml*