Inner and outer approximation of capture basin using interval analysis M. Lhommeau 1 L. Jaulin 2 L. Hardouin 1 1 Laboratoire d'ingénierie des Systèmes Automatisés ISTIA - Université d'angers 62, av. Notre Dame du Lac, 49000 Angers, France 2 E 3 I 2 ENSIETA 2 rue Françoise Verny, 29806 Brest, France International Conference on Informatics in Control, Automation and Robotics, 2007
Motivation Let us consider the following dynamical system : where Flow function ẋ(t) = f(t, x(t), u(t)) (1) state vector x(t) is not allowed to exit a given compact set U R n ; control vector u(t) should belong to a given compact set U R m ; f C 1 (R R n R m, R n ). φ t (x 0, u) is the solution of (1) for the initial vector x 0 and for the input function u. φ [t 1,t 2 ] (x The 0, u) path def = { from x tr n 1 to, t t 2 is[t dened 1, t 2 ], x by = φ t (x 0, u) }.
Motivation Let us consider the following dynamical system : where Flow function ẋ(t) = f(t, x(t), u(t)) (1) state vector x(t) is not allowed to exit a given compact set U R n ; control vector u(t) should belong to a given compact set U R m ; f C 1 (R R n R m, R n ). φ t (x 0, u) is the solution of (1) for the initial vector x 0 and for the input function u. φ [t 1,t 2 ] (x The 0, u) path def = { from x tr n 1 to, t t 2 is[t dened 1, t 2 ], x by = φ t (x 0, u) }.
Motivation Let us consider the following dynamical system : where Flow function ẋ(t) = f(t, x(t), u(t)) (1) state vector x(t) is not allowed to exit a given compact set U R n ; control vector u(t) should belong to a given compact set U R m ; f C 1 (R R n R m, R n ). φ t (x 0, u) is the solution of (1) for the initial vector x 0 and for the input function u. φ [t 1,t 2 ] (x The 0, u) path def = { from x tr n 1 to, t t 2 is[t dened 1, t 2 ], x by = φ t (x 0, u) }.
Motivation Let us consider the following dynamical system : where Flow function ẋ(t) = f(t, x(t), u(t)) (1) state vector x(t) is not allowed to exit a given compact set U R n ; control vector u(t) should belong to a given compact set U R m ; f C 1 (R R n R m, R n ). φ t (x 0, u) is the solution of (1) for the initial vector x 0 and for the input function u. φ [t 1,t 2 ] (x The 0, u) path def = { from x tr n 1 to, t t 2 is[t dened 1, t 2 ], x by = φ t (x 0, u) }.
Motivation Let us consider the following dynamical system : where Flow function ẋ(t) = f(t, x(t), u(t)) (1) state vector x(t) is not allowed to exit a given compact set U R n ; control vector u(t) should belong to a given compact set U R m ; f C 1 (R R n R m, R n ). φ t (x 0, u) is the solution of (1) for the initial vector x 0 and for the input function u. The path from t 1 to t 2 is dened by φ [t 1,t 2 ] (x 0, u) def = { x R n, t [t 1, t 2 ], x = φ t (x 0, u) }.
Capture Basin The capture basin of a target T in K R n is the set of points C of K such that there exist a trajectory starting at C reaching T in nite time. Objective The aim of the paper is to provide an algorithm able to compute an inner and an outer approximation of set C def = { x 0 K, t 0, u, φ t (x 0, u) T and φ [0,t] (x 0, u) K }, i.e., to nd two subsets C and C + such that C C C +.
Capture Basin The capture basin of a target T in K R n is the set of points C of K such that there exist a trajectory starting at C reaching T in nite time. Objective The aim of the paper is to provide an algorithm able to compute an inner and an outer approximation of set C def = { x 0 K, t 0, u, φ t (x 0, u) T and φ [0,t] (x 0, u) K }, i.e., to nd two subsets C and C + such that C C C +.
Capture Basin The capture basin of a target T in K R n is the set of points C of K such that there exist a trajectory starting at C reaching T in nite time. Objective The aim of the paper is to provide an algorithm able to compute an inner and an outer approximation of set C def = { x 0 K, t 0, u, φ t (x 0, u) T and φ [0,t] (x 0, u) K }, i.e., to nd two subsets C and C + such that C C C +.
Capture Basin The capture basin of a target T in K R n is the set of points C of K such that there exist a trajectory starting at C reaching T in nite time. Objective The aim of the paper is to provide an algorithm able to compute an inner and an outer approximation of set C def = { x 0 K, t 0, u, φ t (x 0, u) T and φ [0,t] (x 0, u) K }, i.e., to nd two subsets C and C + such that C C C +.
Denitions Interval [x] = {x R x x x} Width w ([x]) = x x Midpoint mid ([x]) = x + x 2 Intervals have a dual nature : sets set-theoretic operations apply pairs of real-numbers an arithmetic can be built
Denitions Interval [x] = {x R x x x} Width w ([x]) = x x Midpoint mid ([x]) = x + x 2 Intervals have a dual nature : sets set-theoretic operations apply pairs of real-numbers an arithmetic can be built
Denitions Interval [x] = {x R x x x} Width w ([x]) = x x Midpoint mid ([x]) = x + x 2 Intervals have a dual nature : sets set-theoretic operations apply pairs of real-numbers an arithmetic can be built
Denitions Interval [x] = {x R x x x} Width w ([x]) = x x Midpoint mid ([x]) = x + x 2 Intervals have a dual nature : sets set-theoretic operations apply pairs of real-numbers an arithmetic can be built
Operations on intervals [x] + [y] = [ x + y, x + y ] [x] [y] = [ x y, x + y ] [x] [y] = [ min ( x, y, xy, xy, xy ), max ( x, y, xy, xy, xy )] If 0 [y] then [x] / [y] = [x] [ 1/y, 1/y ] Specic formulas available for division by interval containing zero.
Operations on intervals [x] + [y] = [ x + y, x + y ] [x] [y] = [ x y, x + y ] [x] [y] = [ min ( x, y, xy, xy, xy ), max ( x, y, xy, xy, xy )] If 0 [y] then [x] / [y] = [x] [ 1/y, 1/y ] Specic formulas available for division by interval containing zero.
Interval counterpart [f] of f from R to R satises [f] ([x]) = [{f(x) x [x]}]. For any continuous function [f] ([x]) is the image set f ([x]). Elementary interval functions are expressed in terms of bounds For instance [exp] ([x]) = [exp(x), exp(x)] Specic algorithms for trigonometric functions hyperbolic functions
Interval counterpart [f] of f from R to R satises [f] ([x]) = [{f(x) x [x]}]. For any continuous function [f] ([x]) is the image set f ([x]). Elementary interval functions are expressed in terms of bounds For instance [exp] ([x]) = [exp(x), exp(x)] Specic algorithms for trigonometric functions hyperbolic functions
Interval counterpart [f] of f from R to R satises [f] ([x]) = [{f(x) x [x]}]. For any continuous function [f] ([x]) is the image set f ([x]). Elementary interval functions are expressed in terms of bounds For instance [exp] ([x]) = [exp(x), exp(x)] Specic algorithms for trigonometric functions hyperbolic functions
Interval counterpart [f] of f from R to R satises [f] ([x]) = [{f(x) x [x]}]. For any continuous function [f] ([x]) is the image set f ([x]). Elementary interval functions are expressed in terms of bounds For instance [exp] ([x]) = [exp(x), exp(x)] Specic algorithms for trigonometric functions hyperbolic functions
Interval counterpart [f] of f from R to R satises [f] ([x]) = [{f(x) x [x]}]. For any continuous function [f] ([x]) is the image set f ([x]). Elementary interval functions are expressed in terms of bounds For instance [exp] ([x]) = [exp(x), exp(x)] Specic algorithms for trigonometric functions hyperbolic functions
Interval vectors Denition Interval vector (or box) is a Cartesian product of intervals [x] = [x 1 ] [x 2 ]... [x n ] = ([x 1 ], [x 2 ],..., [x n ]) T Width w ([x]) = max 1 i n w ([x i]) Example A box [x] = [x 1 ] [x 2 ] of IR 2 The set of all boxes of R n is denoted by IR n.
Interval vectors Denition Interval vector (or box) is a Cartesian product of intervals [x] = [x 1 ] [x 2 ]... [x n ] = ([x 1 ], [x 2 ],..., [x n ]) T Width w ([x]) = max 1 i n w ([x i]) Example A box [x] = [x 1 ] [x 2 ] of IR 2 The set of all boxes of R n is denoted by IR n.
Interval vectors Denition Interval vector (or box) is a Cartesian product of intervals [x] = [x 1 ] [x 2 ]... [x n ] = ([x 1 ], [x 2 ],..., [x n ]) T Width w ([x]) = max 1 i n w ([x i]) Example A box [x] = [x 1 ] [x 2 ] of IR 2 The set of all boxes of R n is denoted by IR n.
Interval vectors Denition Interval vector (or box) is a Cartesian product of intervals [x] = [x 1 ] [x 2 ]... [x n ] = ([x 1 ], [x 2 ],..., [x n ]) T Width w ([x]) = max 1 i n w ([x i]) Example A box [x] = [x 1 ] [x 2 ] of IR 2 The set of all boxes of R n is denoted by IR n.
Classical operations on vectors trivially extend to interval vectors α [x] = (α [x 1 ])... (α [x n ]) [x] T. [y] = [x 1 ]. [y 1 ] +... + [x n ]. [y n ] [x] + [y] = ([x 1 ] + [y 1 ])... ([x n ] + [y n ]) and interval matrices
Inclusion functions Denition [f] is an inclusion function for f if [x] IR n, f ([x]) [f] ([x]). f may be dened by an algorithm or even by a dierential equation Innitely many inclusion functions for the same function
Inclusion functions Denition [f] is an inclusion function for f if [x] IR n, f ([x]) [f] ([x]). f may be dened by an algorithm or even by a dierential equation Innitely many inclusion functions for the same function
Subpavings Intervals and boxes are not general enough to describe all sets S of interest Motivates the introduction of subpavings Subpaving of [x] = union of nonoverlapping subboxes of [x]
Subpavings Intervals and boxes are not general enough to describe all sets S of interest Motivates the introduction of subpavings Subpaving of [x] = union of nonoverlapping subboxes of [x]
Inner and outer approximations If subpaving S and S are such that S S S then S is bracketed between inner and outer approximations. The distance between S and S gives an indication of the quality of the approximation of S Computation on subpavings allows to approximate computation on compact sets basic ingredient of the basin capture algorithm to be presented
Inner and outer approximations If subpaving S and S are such that S S S then S is bracketed between inner and outer approximations. The distance between S and S gives an indication of the quality of the approximation of S Computation on subpavings allows to approximate computation on compact sets basic ingredient of the basin capture algorithm to be presented
Inner and outer approximations If subpaving S and S are such that S S S then S is bracketed between inner and outer approximations. The distance between S and S gives an indication of the quality of the approximation of S Computation on subpavings allows to approximate computation on compact sets basic ingredient of the basin capture algorithm to be presented
Message Interval Analysis allows guaranteed results to be obtained Considerable advantage over usual numerical methods
Guaranteed numerical integration Basic Tool for capture basin algorithm Interval ow The inclusion function of the ow is a function { IR IR [φ] [t] n IR m IR n : ([x], [u]) [φ] [t] ([x], [u]) such that t [t], x [x], u U, φ t (x, u) [φ] [t] ([x], [u]) Guaranteed numerical integration is based on Picard Theorem and Taylor expansion Software tools are available to compute Guaranteed numerical integration e.g., AWA, COSY or VNODE
Guaranteed numerical integration Basic Tool for capture basin algorithm Interval ow The inclusion function of the ow is a function { IR IR [φ] [t] n IR m IR n : ([x], [u]) [φ] [t] ([x], [u]) such that t [t], x [x], u U, φ t (x, u) [φ] [t] ([x], [u]) Guaranteed numerical integration is based on Picard Theorem and Taylor expansion Software tools are available to compute Guaranteed numerical integration e.g., AWA, COSY or VNODE
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Algorithm The capture basin algorithm is based on the following properties (i) [x] T [x] C (ii) [x] K = [x] C = (iii) ([φ] t ([x], u) C [φ] [0,t] ([x], u) K) [x] C (iv) [φ] t ([x], U) C + = [φ] t ([x], U) K = [x] C =
Basic Tool for capture basin algorithm Illustration Zermelo navigation problem In control theory, Zermelo has described the problem of a boat which wants to reach an island from the bank of a river with strong currents. The magnitude and direction of the currents are known as a function of position. Let T B (0, r) with r = 1 be the island and we set K = [ 8, 8] [ 4, 4], where K represents the river.
Illustration Basic Tool for capture basin algorithm Zermelo navigation problem Let us consider the following dynamics for the boat { x 1 (t) = v cos(θ) x 2(t) = v sin(θ), where the controls v [0, 0.8] and θ [ π, π]. The currents are represented by an autonomous vector eld, then the global dynamic (boat and currents) is given by x 1(t) = 1 + x2 2 x 2 1 (x 2 1 + + v cos(θ) x2 2 )2 x 2x 1 x. 2 2(t) = (x 2 1 + + v sin(θ) x2 2 )2
Illustration Basic Tool for capture basin algorithm Zermelo navigation problem Let us consider the following dynamics for the boat where the controls v [0, 0.8] and θ [ π, π]. The currents are represented by an autonomous vector eld, then the global dynamic (boat and currents) is given by x 1(t) = 1 + x2 2 x 2 1 (x 2 1 + + v cos(θ) x2 2 )2 x 2x 1 x. 2 2(t) = (x 2 1 + + v sin(θ) x2 2 )2
Illustration Basic Tool for capture basin algorithm Results The gure shows the result of the capture basin algorithm, where the circle delimits the border of the target T ; C corresponds to the union of all red boxes ; C + corresponds to the union of both red and yellow boxes ; nally, C C C +.
Basic Tool for capture basin algorithm Conclusions A new approach to deal with capture basin problems is presented. This approach uses interval analysis to compute an inner an outer approximation of the capture basin for a given target. To ll out this work, dierent perspectives appear. It could be interesting to tackle problems in signicantly larger dimensions. Constraint propagation techniques make it possible to push back this frontier and to deal with high dimensional problems (with more than 1000 variables for instance) We plan to combine our algorithm with graph theory and guaranteed numerical integration to compute a guaranteed control u.
Basic Tool for capture basin algorithm Conclusions A new approach to deal with capture basin problems is presented. This approach uses interval analysis to compute an inner an outer approximation of the capture basin for a given target. To ll out this work, dierent perspectives appear. It could be interesting to tackle problems in signicantly larger dimensions. Constraint propagation techniques make it possible to push back this frontier and to deal with high dimensional problems (with more than 1000 variables for instance) We plan to combine our algorithm with graph theory and guaranteed numerical integration to compute a guaranteed control u.
Basic Tool for capture basin algorithm Conclusions A new approach to deal with capture basin problems is presented. This approach uses interval analysis to compute an inner an outer approximation of the capture basin for a given target. To ll out this work, dierent perspectives appear. It could be interesting to tackle problems in signicantly larger dimensions. Constraint propagation techniques make it possible to push back this frontier and to deal with high dimensional problems (with more than 1000 variables for instance) We plan to combine our algorithm with graph theory and guaranteed numerical integration to compute a guaranteed control u.
Basic Tool for capture basin algorithm Conclusions A new approach to deal with capture basin problems is presented. This approach uses interval analysis to compute an inner an outer approximation of the capture basin for a given target. To ll out this work, dierent perspectives appear. It could be interesting to tackle problems in signicantly larger dimensions. Constraint propagation techniques make it possible to push back this frontier and to deal with high dimensional problems (with more than 1000 variables for instance) We plan to combine our algorithm with graph theory and guaranteed numerical integration to compute a guaranteed control u.
Basic Tool for capture basin algorithm Conclusions A new approach to deal with capture basin problems is presented. This approach uses interval analysis to compute an inner an outer approximation of the capture basin for a given target. To ll out this work, dierent perspectives appear. It could be interesting to tackle problems in signicantly larger dimensions. Constraint propagation techniques make it possible to push back this frontier and to deal with high dimensional problems (with more than 1000 variables for instance) We plan to combine our algorithm with graph theory and guaranteed numerical integration to compute a guaranteed control u.