Skip to main content
Log in

Bounded robust control of nonlinear systems using neural network–based HJB solution

  • Original Article
  • Published:
Neural Computing and Applications Aims and scope Submit manuscript

Abstract

In this paper, a Hamilton–Jacobi–Bellman (HJB) equation–based optimal control algorithm for robust controller design is proposed for nonlinear systems. The HJB equation is formulated using a suitable nonquadratic term in the performance functional to tackle constraints on the control input. Utilizing the direct method of Lyapunov stability, the controller is shown to be optimal with respect to a cost functional, which includes penalty on the control effort and the maximum bound on system uncertainty. The bounded controller requires the knowledge of the upper bound of system uncertainty. In the proposed algorithm, neural network is used to approximate the solution of HJB equation using least squares method. Proposed algorithm has been applied on the nonlinear system with matched and unmatched type system uncertainties and uncertainties in the input matrix. Necessary theoretical and simulation results are presented to validate proposed algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

References

  1. Lin F, Brand RD, Sun J (1992) Robust control of nonlinear systems: compensating for uncertainty. Int J Contr 56(6):1453–1459

    Article  MATH  Google Scholar 

  2. Lin F (2000) An optimal control approach to robust control design. Int J Contr 73(3):177–186

    Article  MATH  Google Scholar 

  3. Mclian TW, Beard RW (1998) Successive Galerkin approximations to the nonlinear optimal control of an underwater robotic vehicle. In: Proceeding of the IEEE International Conference on Robotics and Automation, (Leuven, Belgium), pp 762–767

  4. Beard RW, Saridis GN, Wen JT (1997) Galerkin approximations of the generalized Hamilton-Jacobi-Bellman equation. Automatica 33(12):2159–2177

    Article  MATH  MathSciNet  Google Scholar 

  5. Tassa Y, Erez T (2007) Least squares solutions of the HJB equation with neural network value-function approximators. IEEE Trans Neural Netw 18(4):1031–1040

    Article  Google Scholar 

  6. Lyshevski SE (1998) Optimal control of nonlinear continuous-time systems: design of bounded controllers via generalized nonquadratic functionals. In: Proceeding of the American Control Conference, Philadelphia, Pennsylvania, pp 205–209

  7. Abu-Khalaf M, Huang J, Lewis FL (2006) Nonlinear H2/H constrained feedback control: a practical design approach using neural networks. Springer, Berlin

    Google Scholar 

  8. Abu-Khalaf M, Lewis FL (2005) Nearly optimal control laws for nonlinear systems with saturating actuators using a neural network HJB approach. Automatica 41:779–791

    Article  MATH  MathSciNet  Google Scholar 

  9. Chen YH (1988) Design of robust controllers for uncertain dynamical systems. IEEE Trans Autom Contr 33(5):487–491

    Article  MATH  Google Scholar 

  10. Barmish BR, Corless M, Leitmann G (1983) A new class of stabilizing controllers for uncertain dynamical systems. SIAM J Contr Optim 21(2):246–255

    Article  MATH  MathSciNet  Google Scholar 

  11. Barmish BR (1985) Necessary and sufficient conditions for quadratic stabilizability of an uncertain system. J Optim Theory Appl 46(4):399–408

    Article  MATH  MathSciNet  Google Scholar 

  12. Qu Z (1995) Robust control of nonlinear uncertain systems without generalized matching conditions. IEEE Trans Autom Contr 40(8):1453–1460

    Article  MATH  Google Scholar 

  13. Gopal M (1993) Modern control system theory, 2nd edn. New Age International Publishers, New Delhi

    Google Scholar 

  14. Haykin S (1998) Neural networks: a comprehensive edition. Prentice-Hall of India

  15. Cheng T, Lewis FL, Abu-Khalaf M (2007) A neural network solution for fixed final time optimal control of nonlinear systems. Automatica 43:482–490

    Article  MATH  MathSciNet  Google Scholar 

  16. Cheng T, Lewis FL, Abu-Khalaf M (2007) Fixed–final time constrained optimal control of nonlinear systems using neural network HJB approach. IEEE Trans Neural Netw 18(6):1725–1737

    Article  Google Scholar 

  17. Lin Feng, Brandt RD (1998) An optimal control approach to robust control of robot manipulators. IEEE Trans Robot Autom 14(1):69–77

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Dipak M. Adhyaru.

Appendices

Appendix 1

The dynamics of robot manipulator is given by

$$ M(q)\ddot{q} + V(q,\dot{q}) + F(\dot{q}) + G(q) = \tau $$

where q consists of joint variables, τ is the generalized forces, M(q) the inertia matrix, \( V(q,\dot{q}) \) the centripetal vector, G(q) the gravity vector and \( F(\dot{q}) \) the friction vector. For simplicity, we denote \( N(q,\dot{q}) = V(q,\dot{q}) + F(\dot{q}) + G(q) \). There are uncertainties in M(q) and \( N(q,\dot{q}) \) due to, say, unknown load on the manipulator and unmodeled frictions.

The robot manipulator has two joint variables: two angles q 1 and q 2. The inertia matrix is

$$ M(q) = \left[ {\begin{array}{*{20}c} {M_{11} } & {M_{12} } \\ {M_{21} } & {M_{22} } \\ \end{array} } \right] $$

where

$$ \begin{aligned} M_{11} &=\,J_{1} + m_{1} r_{1}^{2} + J_{2} + m_{2} (l_{1}^{2} + r_{2}^{2} + 2l_{1} r_{2} \cos q_{2} ) + J_{L} + m_{L} (l_{1}^{2} + r_{2}^{2} + 2l_{1} r_{2} \cos q_{2} ) \\ M_{12} &=\,M_{21} = J_{2} + m_{2} (r_{2}^{2} + l_{1} r_{2} \cos q_{2} ) + J_{L} + m_{L} l_{2}^{2} \\ M_{22} &=\,J_{2} + m_{2} r_{2}^{2} + J_{L} + m_{L} l_{2}^{2} . \\ \end{aligned} $$

For simplicity, we denote \( N(q,\dot{q}) = V(q,\dot{q}) + F(\dot{q}) + G(q) \). There are uncertainties in M(q) and \( N(q,\dot{q}) \) due to, say, unknown load on the manipulator and unmodeled frictions.

The centripetal vector is

$$ V(q,\dot{q}) = \left[ {\begin{array}{*{20}c} {V_{1} } \\ {V_{2} } \\ \end{array} } \right] $$

where

$$ V_{1} = (m_{2} l_{1} r_{2} + m_{L} l_{1} l_{2} )(\dot{q}_{2}^{2} + 2\dot{q}_{1} \dot{q}_{2} )\sin q_{2} \quad {\text{and}}\quad V_{2} = (m_{2} l_{1} r_{2} + m_{L} l_{1} l_{2} )\dot{q}_{1}^{2} \sin q_{2} . $$

The friction vector

$$ F(q,\dot{q}) = \left[ {\begin{array}{*{20}c} {b_{1} \dot{q}_{1} } \\ {b_{2} \dot{q}_{2} } \\ \end{array} } \right]. $$

Without loss of generality, we assume that gravity vector G(q) = 0; otherwise, it is easy to calculate the additional torque to balance the gravity. The value of the parameters is as follows:

$$ \begin{aligned} m_{1} =\,& 13.86{\text{ oz}}; \quad m_{2} = 3.33{\text{ oz}}; \quad J_{1} = 62.39{\text{ oz-in}}/{\text{rad}}/{\text{s}}^{2} ;J_{2} = 16.70{\text{ oz-in}}/{\text{rad}}/{\text{s}}^{2} ; \quad r_{1} =\,6.12{\text{ in}}; \\ r_{2} = & 3.22{\text{ in}}; \quad l_{1} = 8{\text{ in}}; \quad l_{2} = 6{\text{ in}}; \quad b_{1} = 0.2{\text{ oz-in}}/{\text{rad}}/{\text{s}};b_{1} = 0.5{\text{ oz - in}}/{\text{rad}}/{\text{s}} \\ \end{aligned} $$

The load unknown, so we assume

$$ m_{L} = 10\varepsilon {\text{ oz}}; \quad J_{L} = 60\varepsilon^{2} {\text{ oz-in}}/{\text{rad}}/{\text{s}}^{2} $$

where ε ∈ [0, 1].

With these values, we can calculate M(q) and \( N(q,\dot{q}) \) as follows:

$$ \begin{aligned} M(q) = & \left[ {\begin{array}{*{20}c} {846 + 60\varepsilon^{2} + 1000\varepsilon + 172\cos q_{2} + 960\varepsilon \cos q_{2} } & {51 + 60\varepsilon^{2} + 360\varepsilon + 86\cos q_{2} } \\ {51 + 60\varepsilon^{2} + 360\varepsilon + 86\cos q_{2} } & {51 + 60\varepsilon^{2} + 360\varepsilon } \\ \end{array} } \right] \\ N(q,\dot{q}) = & \left[ {\begin{array}{*{20}c} {(86 + 480\varepsilon )(\dot{q}_{2}^{2} + 2\dot{q}_{1} \dot{q}_{2} )\sin q_{2} + 0.2\dot{q}_{1} } \\ {(86 + 480\varepsilon )\dot{q}_{1}^{2} \sin q_{2} + 0.5\dot{q}_{2} } \\ \end{array} } \right] \\ \end{aligned} $$

Assuming ε = 1 for the simplicity, we can select the following M 0(q) and \( N_{0} (q,\dot{q}) \):

$$ \begin{aligned} M_{0} (q) = & \left[ {\begin{array}{*{20}c} {1906 + 1132\cos q_{2} } & {471 + 86\cos q_{2} } \\ {471 + 86\cos q_{2} } & {471} \\ \end{array} } \right] \\ N_{0} (q,\dot{q}) = & \left[ {\begin{array}{*{20}c} {566(\dot{q}_{2}^{2} + 2\dot{q}_{1} \dot{q}_{2} )\sin q_{2} + 0.2\dot{q}_{1} } \\ {566\dot{q}_{1}^{2} \sin q_{2} + 0.5\dot{q}_{2} } \\ \end{array} } \right]. \\ \end{aligned} $$

Appendix 2

In Sects. 5.1 and 5.2, we applied proposed algorithm on two different class of nonlinear systems. Now we would like to show that proposed algorithm will also work for the linear system:Consider a linear uncertain system

$$ \dot{x} = Ax + Bu + Bfx $$

It is assumed that f is bounded by a known term, \( f_{\max } \), i.e., \( \left\| f \right\| \le f_{\max } \).

For the given open-loop system, our aim is to find a feedback control law u = Kx such that the closed-loop system is global asymptotically stable for all admissible uncertainties f. With the performance function \( \int_{0}^{\infty } {\left( {x^{T} \mu f_{\max }^{2} I_{n \times n} x + x^{T} Qx + u^{T} Ru} \right)} {\text{d}}t, \) where μ > 0 is design parameter, this problem can be solved using following HJB equation:

$$ {\text{HJB(}}V^{ * } (x)) = x^{T} \mu f_{\max }^{2} I_{n \times n} x + x^{T} Qx + u^{T} Ru + V_{x}^{ * T} (Ax + Bu) = 0 $$

where \( V^{ * } (x) = x^{T} Px \). It gives optimal control law \( u^{ * } = Kx = - {\frac{1}{2 \, }}R^{ - 1} B^{T} V_{x}^{ * } \) and corresponding algebraic Reccati equation (ARE) is

$$ A^{T} P + PA - P^{T} BR^{ - 1} B^{T} P + Q + \mu f_{\max }^{2} I_{n \times n} = 0 $$
(38)

u* becomes a robust control law if

$$ \left( {\mu f_{\max }^{2} I_{n \times n} - PBf_{\max } } \right) \ge 0. $$
(39)

It is similar to condition (11) proposed for nonlinear system.

We have considered following system:

$$ \left[ {\begin{array}{*{20}c} {\dot{x}_{1} } \\ {\dot{x}_{2} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} 0 & 1 \\ 1 & 0 \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {x_{1} } \\ {x_{2} } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} 0 \\ 1 \\ \end{array} } \right]u + \left[ {\begin{array}{*{20}c} 0 \\ 1 \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} p & p \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {x_{1} } \\ {x_{2} } \\ \end{array} } \right] $$

where \( p \in \left[ { - 10,1} \right] \) is the uncertain term. We would like to design a robust control law u = Kx such that the closed-loop system is stable for all \( p \in \left[ { - 10,1} \right]. \)

Since f = p, it gives \( f_{\max }^{2} = \left\| p \right\|^{2} \le 100 \).

The corresponding ARE (I) is solved with μ = 2 and identity matrices Q and R. It gives solution of ARE as

$$ P = \left[ {\begin{array}{*{20}c} { 1 6. 2 1 2 7} & { 1 5. 2 1 2 7} \\ { 1 5. 2 1 2 7} & { 1 5. 2 1 2 7} \\ \end{array} } \right] $$

Condition (II) is always satisfied as

$$ \left( {\mu f_{\max }^{2} I_{n \times n} - PBf_{\max } } \right) = \left[ {\begin{array}{*{20}c} {47.873} & {47.873} \\ {47.873} & {47.873} \\ \end{array} } \right] \ge 0. $$

Hence, we have shown that condition similar to (11) is always satisfied for the linear system.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Adhyaru, D.M., Kar, I.N. & Gopal, M. Bounded robust control of nonlinear systems using neural network–based HJB solution. Neural Comput & Applic 20, 91–103 (2011). https://doi.org/10.1007/s00521-010-0441-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-010-0441-1

Keywords

Navigation