61
Computing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M´ ezo Benjamin Martin Sylvie Putot 28 June 2016 Benjamin Martin Computing viability kernel with patterns 28 June 2016 1 / 18

Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Computing the viability kernel with pattern of cyclictrajectories

Eric Goubault Luc Jaulin Thomas Le Mezo Benjamin MartinSylvie Putot

28 June 2016

Benjamin Martin Computing viability kernel with patterns 28 June 2016 1 / 18

Page 2: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Problematic

Consider the following nonlinear system:

9x “ f px , uq

y “ hpxq

where x P Rn states, u P U Ď Rm control. y P Rp is some output.

We want to determine which states are viable with respect to someconstraints on the output space.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 2 / 18

Page 3: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Problematic

Consider the following nonlinear system:

9x “ f px , uq

y “ hpxq

where x P Rn states, u P U Ď Rm control. y P Rp is some output.

We want to determine which states are viable with respect to someconstraints on the output space.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 2 / 18

Page 4: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Viability kernel

Viability Kernel

Given a system f ,h and consider a sub-space of the output space Y and itsinverse image in the state space X “ h´1pYq. The viability kernelViabf ,hpYq Ă X is a sub-space of the state space such that there exists acontrol u yielding y “ hpxq to stay within Y indefinitely.

In robotics: y is the pose of the robot and Y is delimited by obstacles.Which states are safe ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 3 / 18

Page 5: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Viability kernel

Viability Kernel

Given a system f ,h and consider a sub-space of the output space Y and itsinverse image in the state space X “ h´1pYq. The viability kernelViabf ,hpYq Ă X is a sub-space of the state space such that there exists acontrol u yielding y “ hpxq to stay within Y indefinitely.

In robotics: y is the pose of the robot and Y is delimited by obstacles.Which states are safe ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 3 / 18

Page 6: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Illustration

‚ Forbidden‚ Region frontier‚ Not viable‚ Unkown‚ Viable

Benjamin Martin Computing viability kernel with patterns 28 June 2016 4 / 18

Page 7: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

How to solve ?

TO BE COMPLETED !

Can be viewed as differential inclusion (U closed).‚ Viability Kernel Algorithm [Saint-Pierre, Math. and Optim., 1994]:discretization of time and state spaces. Iterative approximation of thekernel (smh reachability analysis).

‚ Robotics: determining Inevitable Collision States from set of evasivetrajectories (complement to viability kernel). Typically, breakingtrajectories or cyclic (circular) trajectories (see ref. in [Bouguerra et al.,ICRA 2015]).Adaptation of Saint-Pierre algorithm [Bouguerra et al., ICRA 2015].

Benjamin Martin Computing viability kernel with patterns 28 June 2016 5 / 18

Page 8: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

How to solve ?

TO BE COMPLETED !

Can be viewed as differential inclusion (U closed).‚ Viability Kernel Algorithm [Saint-Pierre, Math. and Optim., 1994]:discretization of time and state spaces. Iterative approximation of thekernel (smh reachability analysis).

‚ Robotics: determining Inevitable Collision States from set of evasivetrajectories (complement to viability kernel). Typically, breakingtrajectories or cyclic (circular) trajectories (see ref. in [Bouguerra et al.,ICRA 2015]).Adaptation of Saint-Pierre algorithm [Bouguerra et al., ICRA 2015].

Benjamin Martin Computing viability kernel with patterns 28 June 2016 5 / 18

Page 9: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

How to solve ?

TO BE COMPLETED !

Can be viewed as differential inclusion (U closed).‚ Viability Kernel Algorithm [Saint-Pierre, Math. and Optim., 1994]:discretization of time and state spaces. Iterative approximation of thekernel (smh reachability analysis).

‚ Robotics: determining Inevitable Collision States from set of evasivetrajectories (complement to viability kernel). Typically, breakingtrajectories or cyclic (circular) trajectories (see ref. in [Bouguerra et al.,ICRA 2015]).Adaptation of Saint-Pierre algorithm [Bouguerra et al., ICRA 2015].

Benjamin Martin Computing viability kernel with patterns 28 June 2016 5 / 18

Page 10: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Our idea

Traditional techniques involves some form of numerical integration whichcan be costly.

Hence, use predefined trajectories through patterns: functions that arezero on the corresponding trajectories.

use of cyclic trajectories, and corresponding patterns, which impliesviability;

patterns allow to discard ”time”: the problem can be posed as a CSP.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 6 / 18

Page 11: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Our idea

Traditional techniques involves some form of numerical integration whichcan be costly.

Hence, use predefined trajectories through patterns: functions that arezero on the corresponding trajectories.

use of cyclic trajectories, and corresponding patterns, which impliesviability;

patterns allow to discard ”time”: the problem can be posed as a CSP.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 6 / 18

Page 12: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Our idea

Traditional techniques involves some form of numerical integration whichcan be costly.

Hence, use predefined trajectories through patterns: functions that arezero on the corresponding trajectories.

use of cyclic trajectories, and corresponding patterns, which impliesviability;

patterns allow to discard ”time”: the problem can be posed as a CSP.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 6 / 18

Page 13: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Introduction

Our idea

Traditional techniques involves some form of numerical integration whichcan be costly.

Hence, use predefined trajectories through patterns: functions that arezero on the corresponding trajectories.

use of cyclic trajectories, and corresponding patterns, which impliesviability;

patterns allow to discard ”time”: the problem can be posed as a CSP.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 6 / 18

Page 14: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Cyclic trajectories

Definition

Denote φpx , t, uq a feasible trajectory starting from x and with controlu : RÑ U (φpx , 0, uq “ x). It is cyclic if Dt ą 0 such thatφpx , t ` t 1, uq “ φpx , t 1, uq, and upt ` t 1q “ upt 1q, for any t 1 ě 0.

Main property

If a state x admit a cyclic trajectory φ such that φpx , t, uq P X ,@t ď t,then x P Viabf ,hpYq.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 7 / 18

Page 15: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Cyclic trajectories

Definition

Denote φpx , t, uq a feasible trajectory starting from x and with controlu : RÑ U (φpx , 0, uq “ x). It is cyclic if Dt ą 0 such thatφpx , t ` t 1, uq “ φpx , t 1, uq, and upt ` t 1q “ upt 1q, for any t 1 ě 0.

Main property

If a state x admit a cyclic trajectory φ such that φpx , t, uq P X ,@t ď t,then x P Viabf ,hpYq.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 7 / 18

Page 16: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Pattern

Let V : Rn ˆ Rp Ñ R be a convex function in the state ˆ output space.

Definition

Given a control u : RÑ U , V is a pattern for trajectory φpx , t, uq ifV px , hpφpx , t, uqqq “ 0, @t.

Remarks,

V can be viewed as a function parametrized by x

relation to control Lyapunov functions

for p “ 2, if V is a pattern for a cyclic trajectory, w.l.g, V ď 0 is theinterior of the cycle

for larger p ą 2, several patterns can be used to describe a singletrajectory

Benjamin Martin Computing viability kernel with patterns 28 June 2016 8 / 18

Page 17: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Pattern

Let V : Rn ˆ Rp Ñ R be a convex function in the state ˆ output space.

Definition

Given a control u : RÑ U , V is a pattern for trajectory φpx , t, uq ifV px , hpφpx , t, uqqq “ 0, @t.

Remarks,

V can be viewed as a function parametrized by x

relation to control Lyapunov functions

for p “ 2, if V is a pattern for a cyclic trajectory, w.l.g, V ď 0 is theinterior of the cycle

for larger p ą 2, several patterns can be used to describe a singletrajectory

Benjamin Martin Computing viability kernel with patterns 28 June 2016 8 / 18

Page 18: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Pattern

Let V : Rn ˆ Rp Ñ R be a convex function in the state ˆ output space.

Definition

Given a control u : RÑ U , V is a pattern for trajectory φpx , t, uq ifV px , hpφpx , t, uqqq “ 0, @t.

Remarks,

V can be viewed as a function parametrized by x

relation to control Lyapunov functions

for p “ 2, if V is a pattern for a cyclic trajectory, w.l.g, V ď 0 is theinterior of the cycle

for larger p ą 2, several patterns can be used to describe a singletrajectory

Benjamin Martin Computing viability kernel with patterns 28 June 2016 8 / 18

Page 19: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Pattern

Let V : Rn ˆ Rp Ñ R be a convex function in the state ˆ output space.

Definition

Given a control u : RÑ U , V is a pattern for trajectory φpx , t, uq ifV px , hpφpx , t, uqqq “ 0, @t.

Remarks,

V can be viewed as a function parametrized by x

relation to control Lyapunov functions

for p “ 2, if V is a pattern for a cyclic trajectory, w.l.g, V ď 0 is theinterior of the cycle

for larger p ą 2, several patterns can be used to describe a singletrajectory

Benjamin Martin Computing viability kernel with patterns 28 June 2016 8 / 18

Page 20: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Definitions

Pattern

Let V : Rn ˆ Rp Ñ R be a convex function in the state ˆ output space.

Definition

Given a control u : RÑ U , V is a pattern for trajectory φpx , t, uq ifV px , hpφpx , t, uqqq “ 0, @t.

Remarks,

V can be viewed as a function parametrized by x

relation to control Lyapunov functions

for p “ 2, if V is a pattern for a cyclic trajectory, w.l.g, V ď 0 is theinterior of the cycle

for larger p ą 2, several patterns can be used to describe a singletrajectory

Benjamin Martin Computing viability kernel with patterns 28 June 2016 8 / 18

Page 21: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Links to viability

Pattern and viability

Property

Let V be a pattern function of some cyclic trajectory. Given states x , ifV px , yq “ 0 ùñ y P Y, then x P Viabf ,hpX q.

Consequence:

V :“ tx : @y ,V px , yq ‰ 0_ y P Yu Ď Viabf ,hpYq

Suppose Y represented as constraints Ppyq ď 0.

Quantified constraint satisfaction

Benjamin Martin Computing viability kernel with patterns 28 June 2016 9 / 18

Page 22: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Links to viability

Pattern and viability

Property

Let V be a pattern function of some cyclic trajectory. Given states x , ifV px , yq “ 0 ùñ y P Y, then x P Viabf ,hpX q.

Consequence:

V :“ tx : @y ,V px , yq ‰ 0_ y P Yu Ď Viabf ,hpYq

Suppose Y represented as constraints Ppyq ď 0.

Quantified constraint satisfaction

Benjamin Martin Computing viability kernel with patterns 28 June 2016 9 / 18

Page 23: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Links to viability

Pattern and viability

Property

Let V be a pattern function of some cyclic trajectory. Given states x , ifV px , yq “ 0 ùñ y P Y, then x P Viabf ,hpX q.

Consequence:

V :“ tx : @y ,V px , yq ‰ 0_ y P Yu Ď Viabf ,hpYq

Suppose Y represented as constraints Ppyq ď 0.

Quantified constraint satisfaction

Benjamin Martin Computing viability kernel with patterns 28 June 2016 9 / 18

Page 24: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Links to viability

Pattern and viability

Property

Let V be a pattern function of some cyclic trajectory. Given states x , ifV px , yq “ 0 ùñ y P Y, then x P Viabf ,hpX q.

Consequence:

V :“ tx : @y ,V px , yq ‰ 0_ Ppyq ď 0u Ď Viabf ,hpYq

Suppose Y represented as constraints Ppyq ď 0.

Quantified constraint satisfaction

Benjamin Martin Computing viability kernel with patterns 28 June 2016 9 / 18

Page 25: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Running example

Example

Dubins car:$

&

%

9x1 “ cospθq9x2 “ sinpθq9θ “ u

,

(position and heading), u P r´1, 1s. We observe the position, i.e. y1 “ x1

and y2 “ x2.

We know that for u ‰ 0 constant, the car follows a cyclic (circular)trajectory:

$

&

%

x1ptq “sinput`θp0qq

u ´sinpθp0qq

u ` x1p0q

x2ptq “ ´cosput`θp0qq

u `cospθp0qq

u ` x2p0qθptq “ ut ` θp0q

(note: θ modulo 2π)

Benjamin Martin Computing viability kernel with patterns 28 June 2016 10 / 18

Page 26: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Running example

Example

Dubins car:$

&

%

9x1 “ cospθq9x2 “ sinpθq9θ “ u

,

(position and heading), u P r´1, 1s. We observe the position, i.e. y1 “ x1

and y2 “ x2.We know that for u ‰ 0 constant, the car follows a cyclic (circular)trajectory:

$

&

%

x1ptq “sinput`θp0qq

u ´sinpθp0qq

u ` x1p0q

x2ptq “ ´cosput`θp0qq

u `cospθp0qq

u ` x2p0qθptq “ ut ` θp0q

(note: θ modulo 2π)

Benjamin Martin Computing viability kernel with patterns 28 June 2016 10 / 18

Page 27: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Running example

Example: pattern

We have the following pattern:

V px1, x2, θ, y1, y2q :“

ˆ

x1 ´sinpθq

u´ y1

˙2

`

ˆ

x2 `cospθq

u´ y2

˙2

´1

u2“ 0.

Note that px , θq R X p” Yq ùñ px , θq R Viabf ,hpYq. Ppx1, x2q ď 0 isnecessary for px , θq P Viabf ,hpYq.

Checking x P V requires to check V px1, x2, θ, y1, y2q ‰ 0 for ally ,Ppyq ą 0.

ñ Build a paving of Y. Inner boxes: initial conditions; boundary and outerboxes: domains of y .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 11 / 18

Page 28: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Running example

Example: pattern

We have the following pattern:

V px1, x2, θ, y1, y2q :“

ˆ

x1 ´sinpθq

u´ y1

˙2

`

ˆ

x2 `cospθq

u´ y2

˙2

´1

u2“ 0.

Note that px , θq R X p” Yq ùñ px , θq R Viabf ,hpYq. Ppx1, x2q ď 0 isnecessary for px , θq P Viabf ,hpYq.

Checking x P V requires to check V px1, x2, θ, y1, y2q ‰ 0 for ally ,Ppyq ą 0.

ñ Build a paving of Y. Inner boxes: initial conditions; boundary and outerboxes: domains of y .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 11 / 18

Page 29: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Running example

Example: pattern

We have the following pattern:

V px1, x2, θ, y1, y2q :“

ˆ

x1 ´sinpθq

u´ y1

˙2

`

ˆ

x2 `cospθq

u´ y2

˙2

´1

u2“ 0.

Note that px , θq R X p” Yq ùñ px , θq R Viabf ,hpYq. Ppx1, x2q ď 0 isnecessary for px , θq P Viabf ,hpYq.

Checking x P V requires to check V px1, x2, θ, y1, y2q ‰ 0 for ally ,Ppyq ą 0.

ñ Build a paving of Y. Inner boxes: initial conditions; boundary and outerboxes: domains of y .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 11 / 18

Page 30: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Patterns of cyclic trajectories Running example

Example: pattern

We have the following pattern:

V px1, x2, θ, y1, y2q :“

ˆ

x1 ´sinpθq

u´ y1

˙2

`

ˆ

x2 `cospθq

u´ y2

˙2

´1

u2“ 0.

Note that px , θq R X p” Yq ùñ px , θq R Viabf ,hpYq. Ppx1, x2q ď 0 isnecessary for px , θq P Viabf ,hpYq.

Checking x P V requires to check V px1, x2, θ, y1, y2q ‰ 0 for ally ,Ppyq ą 0.

ñ Build a paving of Y. Inner boxes: initial conditions; boundary and outerboxes: domains of y .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 11 / 18

Page 31: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Method used

Example: solving

Example: paving of Y.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 12 / 18

Page 32: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Method used

Example: solving

About the heading θ P r´π, πs?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 12 / 18

Page 33: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Method used

Example: solving

About the heading θ P r´π, πs?For the sake of 2D representation: projection by quantifying θ.

« D by sampling the domain of θ (here 8 subintervals),

@ θ in its domain.

Other remarks:

implementation in Ibex, using a separator on the quantified constraint,

for convenience: consider V ď 0 instead of V “ 0,

Cpu times on this instance: 155 s for the sampled version, 35 s on theoriginal domain.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 12 / 18

Page 34: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Method used

Example: solving

About the heading θ P r´π, πs?For the sake of 2D representation: projection by quantifying θ.

« D by sampling the domain of θ (here 8 subintervals),

@ θ in its domain.

Other remarks:

implementation in Ibex, using a separator on the quantified constraint,

for convenience: consider V ď 0 instead of V “ 0,

Cpu times on this instance: 155 s for the sampled version, 35 s on theoriginal domain.

Benjamin Martin Computing viability kernel with patterns 28 June 2016 12 / 18

Page 35: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r´π,´34πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 36: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r´34π,´

12πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 37: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r´12π,´

14πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 38: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r´14π, 0s

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 39: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r0, 14πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 40: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r14π,

12πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 41: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r12π,

34πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 42: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r34π, πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 43: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r´π,´34πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 44: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Results

Example: computation

θ P r´π, πs

Benjamin Martin Computing viability kernel with patterns 28 June 2016 13 / 18

Page 45: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Discussion

Computation times are reasonable...

... but only inner approximation of Viabf ,hpYq.Extension / other version with verified integration ?

Generating V ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 14 / 18

Page 46: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Discussion

Computation times are reasonable...

... but only inner approximation of Viabf ,hpYq.

Extension / other version with verified integration ?

Generating V ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 14 / 18

Page 47: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Discussion

Computation times are reasonable...

... but only inner approximation of Viabf ,hpYq.Extension / other version with verified integration ?

Generating V ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 14 / 18

Page 48: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Discussion

Computation times are reasonable...

... but only inner approximation of Viabf ,hpYq.Extension / other version with verified integration ?

Generating V ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 14 / 18

Page 49: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generating V ? An example

On the previous example:

V :“ px1 ´ c1q2 ` px2 ´ c2q

2 ´ d2,

where c1, c2 and d are parameters depending on initial conditions of thestates. In particular the flow satisfy V “ 0.

Hence,9V “ 2gpx1 ´ c1q ` 2hpx2 ´ c2q “ 0,

where g “ cospθq, h “ sinpθq.Going further:

:V “ u p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq ` 2 “ 0,

entailing u “ ´2{ p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq

Benjamin Martin Computing viability kernel with patterns 28 June 2016 15 / 18

Page 50: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generating V ? An example

On the previous example:

V :“ px1 ´ c1q2 ` px2 ´ c2q

2 ´ d2,

where c1, c2 and d are parameters depending on initial conditions of thestates. In particular the flow satisfy V “ 0.Hence,

9V “ 2gpx1 ´ c1q ` 2hpx2 ´ c2q “ 0,

where g “ cospθq, h “ sinpθq.

Going further:

:V “ u p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq ` 2 “ 0,

entailing u “ ´2{ p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq

Benjamin Martin Computing viability kernel with patterns 28 June 2016 15 / 18

Page 51: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generating V ? An example

On the previous example:

V :“ px1 ´ c1q2 ` px2 ´ c2q

2 ´ d2,

where c1, c2 and d are parameters depending on initial conditions of thestates. In particular the flow satisfy V “ 0.Hence,

9V “ 2gpx1 ´ c1q ` 2hpx2 ´ c2q “ 0,

where g “ cospθq, h “ sinpθq.Going further:

:V “ u p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq ` 2 “ 0,

entailing u “ ´2{ p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq

Benjamin Martin Computing viability kernel with patterns 28 June 2016 15 / 18

Page 52: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generating V ? An example

This control ensure the non variation of 9V . We can note 9u “ 0 (due to9V “ 0). It can be fixed to a u ‰ 0 in U .

Hence, the following system (where x1, x2, θ must be viewed as initialconditions).

$

&

%

px1 ´ c1q2 ` px2 ´ c2q

2 ´ d2 “ 02gpx1 ´ c1q ` 2hpx2 ´ c2q “ 0u p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq ` 2 “ 0

Solution: c1 “ x1 ´sinpθqu , c2 “ x2 `

cospθqu , d “ 1

u .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 16 / 18

Page 53: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generating V ? An example

This control ensure the non variation of 9V . We can note 9u “ 0 (due to9V “ 0). It can be fixed to a u ‰ 0 in U .

Hence, the following system (where x1, x2, θ must be viewed as initialconditions).

$

&

%

px1 ´ c1q2 ` px2 ´ c2q

2 ´ d2 “ 02gpx1 ´ c1q ` 2hpx2 ´ c2q “ 0u p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq ` 2 “ 0

Solution: c1 “ x1 ´sinpθqu , c2 “ x2 `

cospθqu , d “ 1

u .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 16 / 18

Page 54: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generating V ? An example

This control ensure the non variation of 9V . We can note 9u “ 0 (due to9V “ 0). It can be fixed to a u ‰ 0 in U .

Hence, the following system (where x1, x2, θ must be viewed as initialconditions).

$

&

%

px1 ´ c1q2 ` px2 ´ c2q

2 ´ d2 “ 02gpx1 ´ c1q ` 2hpx2 ´ c2q “ 0u p2gpx2 ´ c2q ´ 2hpx1 ´ c1qq ` 2 “ 0

Solution: c1 “ x1 ´sinpθqu , c2 “ x2 `

cospθqu , d “ 1

u .

Benjamin Martin Computing viability kernel with patterns 28 June 2016 16 / 18

Page 55: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generalization ?

Some hints:

consider specific class of parametric functions (with a ”cyclic” levelcurve).

find appropriate control law

in particular, it must satisfy: u P U

Smarter ways, E.g. starting from given ”time” cyclic trajectories ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 17 / 18

Page 56: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generalization ?

Some hints:

consider specific class of parametric functions (with a ”cyclic” levelcurve).

find appropriate control law

in particular, it must satisfy: u P U

Smarter ways, E.g. starting from given ”time” cyclic trajectories ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 17 / 18

Page 57: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generalization ?

Some hints:

consider specific class of parametric functions (with a ”cyclic” levelcurve).

find appropriate control law

in particular, it must satisfy: u P U

Smarter ways, E.g. starting from given ”time” cyclic trajectories ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 17 / 18

Page 58: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Numerical experiments Analysis

Generalization ?

Some hints:

consider specific class of parametric functions (with a ”cyclic” levelcurve).

find appropriate control law

in particular, it must satisfy: u P U

Smarter ways, E.g. starting from given ”time” cyclic trajectories ?

Benjamin Martin Computing viability kernel with patterns 28 June 2016 17 / 18

Page 59: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Conclusion

Summary

An interval constraint-based approach for computing inner approximationof viability kernels, based on pattern of cyclic trajectories.

allows contraction of domains, i.e. captures accurately e.g. theboundary of the approximation,

promising performances...

... but needs a comparison with other approaches (e.g. based onverified integration)

Benjamin Martin Computing viability kernel with patterns 28 June 2016 18 / 18

Page 60: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Conclusion

Summary

An interval constraint-based approach for computing inner approximationof viability kernels, based on pattern of cyclic trajectories.

allows contraction of domains, i.e. captures accurately e.g. theboundary of the approximation,

promising performances...

... but needs a comparison with other approaches (e.g. based onverified integration)

Benjamin Martin Computing viability kernel with patterns 28 June 2016 18 / 18

Page 61: Computing the viability kernel with pattern of cyclic trajectoriesComputing the viability kernel with pattern of cyclic trajectories Eric Goubault Luc Jaulin Thomas Le M ezo Benjamin

Conclusion

Summary

An interval constraint-based approach for computing inner approximationof viability kernels, based on pattern of cyclic trajectories.

allows contraction of domains, i.e. captures accurately e.g. theboundary of the approximation,

promising performances...

... but needs a comparison with other approaches (e.g. based onverified integration)

Benjamin Martin Computing viability kernel with patterns 28 June 2016 18 / 18