Constraint Reasoning for Differential Models

1 / 48

# Constraint Reasoning for Differential Models - PowerPoint PPT Presentation

## Constraint Reasoning for Differential Models

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
##### Presentation Transcript

1. Constraint Reasoning for Differential Models Jorge Cruz CENTRIA-Centre for Artificial Intelligence DI/FCT/UNL June 2009

2. PRESENTATION OUTLINE • Constraint Reasoning • Constraint Reasoning for Differential Models • Examples: Drug Design / Epidemic Study • Conclusions and Future Work

3. Continuous CSP (CCSP): Intervals of reals [a,b] Numeric (=,,) Solution: Many assignment of values which satisfies all the constraints Find Solutions; Find an enclosure of the solution space GOAL Constraint Reasoning Constraint Satisfaction Problem (CSP): set of variables set of domains set of constraints

4. [1,5] y y = x2 x+y+z 5.25 x Many Solutions [0,2] x=1, y=1, z=1 ... x=1, y=1, z=3.25 ... z z  x [,] Solution: assignment of values which satisfies all the constraints Find solutions; Find an enclosure of the solution space GOAL Constraint Reasoning Continuous Constraint Satisfaction Problem (CCSP): Interval Domains Numerical Constraints

5. [r1..r2] r [r..r] [f1 .. f2] F-box Representation of Continuous Domains F-interval R F

6. constraint propagation box split Safe Narrowing Functions Solving CCSPs: isolate canonical solutions Branch and Prune algorithms Strategy for provide an enclosure of the solution space

7. [0,2] [1,5] y = x2 x y no Simulation: 0 0 1 1 x1? y4? 2 4 Constraint Reasoning: [1,2] [1,4] Constraint Reasoning (vs Simulation) Represents uncertainty as intervals of possible values Uses safe methods for narrowing the intervals accordingly to the constraints of the model

8. [0,max(a2,b2)] ifa0b [0,2] [1,5] x[a,b]x2[a,b]2= y = x2 [min(a2,b2),max(a2,b2)] otherwise x y If x[0,2] Then y[0,2]2 =[0,max(02,22)]=[0,4]  y[1,5]  y[0,4]  y[1,5]  [0,4]  y[1,4] How to narrow the domains? Safe methods are based on Interval Analysis techniques

9. [0,max(a2,b2)] ifa0b [0,2] [1,5] x[a,b]x2[a,b]2= y = x2 [min(a2,b2),max(a2,b2)] otherwise x y NFy=x²: Y’  YX2 How to narrow the domains? Safe methods are based on Interval Analysis techniques

10. Accordingly to the mean value theorem: r1,r2[a,b] [min(r1,r2),max(r1,r2)] f(r1)=f(r2)+(r1 r2)f’() If r2 is a root of f then f(r2)=0 and so: r1,r2[a,b] [min(r1,r2),max(r1,r2)] f(r1)=(r1 r2)f’() And solving it in order to r2: r1,r2[a,b] [min(r1,r2),max(r1,r2)] r2= r1f(r1)/f’() Newton Method for Finding Roots of Univariate Functions Let f be a real function, continuous in [a,b] and differentiable in (a..b) Therefore, if there is a root of f in [a,b] then, from any point r1 in [a,b] the root could be computed if we knew the value of 

11. r0 r1 r2 r0 r1 r2 r0 r1 r2 Newton Method for Finding Roots of Univariate Functions The idea of the classical Newton method is to start with an initial value r0 and compute a sequence of points ri that converge to a root To obtain ri+1 from ri the value of  is approximated by ri: ri+1= rif(ri)/f’() rif(ri)/f’(ri)

12. r1=+ r0 Newton Method for Finding Roots of Univariate Functions Near roots the classical Newton method has quadratic convergence However, the classical Newton method may not converge to a root!

13. If r is a root within I0 then: In particular, with r1=c=center(I0) we get the Newton interval function:  I0 r1I0rr1f(r1)/f’(I0) r cf(c)/f’(I0) = N(I0) (all the possible values of  are considered) Since root r must be within the original interval I0, a smaller safe enclosure I1 may be computed by: I1= I0 N(I0) Interval Extension of the Newton Method The idea of the Interval Newton method is to start with an initial interval I0 and compute an enclosure of all the r that may be roots r1,r[a,b] [min(r1,r),max(r1,r)] r= r1f(r1)/f’()

14. c I0 N(I0) I1 Interval Extension of the Newton Method The idea of the Interval Newton method is to start with an initial interval I0 and compute an enclosure of all the r that may be roots r1

15. y  x2 = 0 F(Y) = Y  [0,2]2 F’(Y) = 1 [0,2] [1,5] y = x2 x y yY x[0,2] yx2=0 y Interval Newton method If x[0,2] and y[1,5] Then y  y[1,5]  [0,4]  y[1,4] How to narrow the domains? Safe methods are based on Interval Analysis techniques

16. y  x2 = 0 F(Y) = Y  [0,2]2 F’(Y) = 1 [0,2] [1,5] y = x2 x y yY x[0,2] yx2=0 y Interval Newton method NFy=x²: Y’  Y How to narrow the domains? Safe methods are based on Interval Analysis techniques

17. contractility correctness [0,2] [1,5] y = x2 NFy=x²: Y’  YX2 x y Y’  Y yY yY’  ¬xX y=x2 + NFy=x²: X’  (XY½)(XY½) X’  X xX xX’  ¬yY y=x2 NFy=x²: X’  X NFy=x²: Y’  Y How to narrow the domains? Safe methods are based on Interval Analysis techniques

18. [1,4] y NFy=x²: Y’  YX2   + NFy=x²: X’  (XY½)(XY½) y = x2 x NFx+y+z5.25: X’  X([,5.25]YZ) x+y+z 5.25 NFx+y+z5.25: Y’  Y([,5.25]XZ) z z  x [1,2]  NFx+y+z5.25: Z’  Z([,5.25]XY) [,3.25] NFzx: X’  X(Z[0,]) [1,3.25]  NFzx: Z’  Z(X[0,]) Solving a Continuous Constraint Satisfaction Problem Constraint Propagation [1,5]   [0,2] [,] 

19. [1,3.25] y NFy=x²: Y’  YX2  + NFy=x²: X’  (XY½)(XY½) y = x2 x NFx+y+z5.25: X’  X([,5.25]YZ) x+y+z 5.25  NFx+y+z5.25: Y’  Y([,5.25]XZ) z z  x NFx+y+z5.25: Z’  Z([,5.25]XY) [1,3.25] NFzx: X’  X(Z[0,]) NFzx: Z’  Z(X[0,]) Solving a Continuous Constraint Satisfaction Problem Constraint Propagation [1,4] [1,5]       [0,2] [1,2]    [,] [,3.25]  [1,3.25]  

20. Stopping Criterion y   1.5 1 1 2.25 1.5 1  1 1 3.25 y = x2 y = x2  y = 3.25 3.25 3.25 <3.25 x x+y+z 5.25 x+y+z 5.25  z 2- z  x z z  x [1,3.25] Solving a Continuous Constraint Satisfaction Problem Constraint Propagation + Branching [1,3.25] x y z x [1,3.25]

21. Differential model: Constraint model: Variables: x0, x1 solution v(t)=v(0)et Domains: [0.5,1][-1,2] Constraints: x1 = x0e x1[0.5e,2] x0[0.5,2/e] How to deal with change in dynamic models? Typically through differential equations Classical constraint methods do not address differential models directly And without using the solution form? (non linear models)

22. Constraint Reasoning for Differential Models All functions from [0,1] to R

23. Constraint Reasoning for Differential Models Functions s from [0,1] to R such that:

24. Constraint Reasoning for Differential Models Functions s from [0,1] to R such that:

25. I1 I0 Constraint Reasoning for Differential Models Functions s from [0,1] to R such that:

26. CSDP [1,5] ODE system y y y = x2 Trajectory properties z x+y+z 5.25 NFCSDP: Y’  ... Z’  ... x [0,2] z z  x Implicit representation of the trajectory [,] Explicit representation of its properties which can be integrated with the other constraints Developed safe methods for narrowing the intervals representing the possible property values Extended Continuous Constraint Satisfaction Problem

27. maximum k areak value k k minimum t firstk timeMaximum timek Trajectory Properties continuous function

28. Solving a CSDP Maintain a safe trajectory enclosure 1.5 and safe enclosures for each trajectory property: s1(t)TR1 0 t 0 6 1.5 x1  I1 x2  I2 s2(t)TR2 x3  I3 x4  I4 x5  I5 0 0 6 t ... Use Narrowing functions for pruning the domains through propagation

29. b 1.5 a TR 0 0 t I I  [a,b] where a is the maximum lower bound of the point enclosures within [1,3] b is the maximum upper bound of the gap enclosures within [1,3] tp[1,3] TR(tp)TR(tp)  [,c] where c is the upper bound of I [tp1,tp2][1,3] TR([tp1,tp2])TR([tp1,tp2])  [,c] Solving a CSDP I x I s TR continuous function 6 Maximum Narrowing Functions

30. 1.75 0.75 0.3 0.408 s(t) s(0)[0.5,0.5]=[0.75,1.75] t[0,1] For: Assume: t[0,0.3] then: s(t) [1.25] [0,0.3][1.225,0.525]=[0.8825,1.25] Solving a CSDP  s(0) [1.25] s(1) [, ] 1.5 t[0,1]s(t) [, ] TR 0 1 t 0  Interval Picard Operator

31. ti=0 ti+1=0.3 =[0,0.3] h=0.3 s(0)=[1.25] s()=[0.8825,1.25] p=0  s(0.3)[0.9875,1.0647] p=1  s(0.3)[1.0069,1.0151] p=2  s(0.3)[1.0131,1.0138] Solving a CSDP  s(0) [1.25] s(1) [, ] 1.5 t[0,1]s(t) [, ] TR Interval Picard Operator (gap enclosure): t[0,0.3]s(t) [0.8825,1.25] 0 Interval Taylor Series (point enclosure): 1 t 0.3 0  Trajectory Narrowing Function

32. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[-1.0,2.0] TR =[0,1][-,]

33. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[-1.0,2.0] TR =[0][0.5,1.0]:(0,1][-,]

34. NF Based on an Interval Taylor Series method Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[-1.0,2.0] TR =[0][0.5,1.0]:(0,1)[-,]:[1][-1.0,2.0]

35. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[-1.0,2.0] TR =[0][0.5,1.0 ]:(0,0.5)[0.45,1.8]:[0.5][0.82,1.65]:(0.5,1)[-,]:[1][-1.0,2.0]

36. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[-1.0,2.0] TR =[0][0.5,1.0 ]:(0,0.5)[0.45,1.8]:[0.5][0.82,1.65]:(0.5,1)[0.8,2.9]:[1][1.35,2.0]

37. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[1.35,2.0] TR =[0][0.5,1.0 ]:(0,0.5)[0.45,1.8]:[0.5][0.82,1.65]:(0.5,1)[0.8,2.9]:[1][1.35,2.0]

38. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[1.35,2.0] TR =[0][0.5,1.0 ]:(0,0.5)[0.45,1.8]:[0.5][0.82,1.22]:(0.5,1)[0.8,2.1]:[1][1.35,2.0]

39. NF Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) I0=[0.5,1.0] I1=[1.35,2.0] TR =[0][0.5,0.74]:(0,0.5)[0.45,1.3]:[0.5][0.82,1.22]:(0.5,1)[0.8,2.1]:[1][1.35,2.0]

40. Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) (fixed point) I0=[0.5,0.74] I1=[1.35,2.0] TR =[0][0.5,0.74]:(0,0.5)[0.45,1.3]:[0.5][0.82,1.22]:(0.5,1)[0.8,2.1]:[1][1.35,2.0]

41. Differential model of the drug absorption process: concentration of the drug in the gastro-intestinal tract concentration of the drug in the blood stream drug intake regimen: Periodic limit cycle (p1=1.2, p2=ln(2)/5): y(t) x(t) t t Application to Drug Design

42. CSDP framework can be used for: Bound the parameters (e.g p1) by imposing bounds on these properties p1[0.0 , 4.0] p1[1.3 , 1.4] Application to Drug Design Important properties of drug concentration are: maximum y(t) area1.0 minimum time1.1 Should be kept between 0.8 and 1.5 Area under curve above 1.0 between 1.2 and 1.3 Cannot exceed 1.1 for more than 4 hours

43. CSDP framework can be used for: Compute safe bounds for these properties for chosen parameters Application to Drug Design Important properties of drug concentration are: maximum y(t) area1.0 minimum time1.1 Is guaranteedly kept between 0.881 and 1.462 ([0.8,1.5]) Area under curve above 1.0 between 1.282 and 1.3 ([1.2,1.3]) Exceeds 1.1 for 3.908 to 3.967 hours (<4.0) p1[1.3 , 1.4]

44. The SIR model of epidemics: Susceptibles: can catch the disease Infectives: have the disease and can transmit it Removed: had the disease and are immune or dead r efficiency of the disease transmission Parameters recovery rate from the infection a Application to Epidemic Studies

45. rend imax the maximum number of infectives: imax tmax tend the time that it starts to decline: tmax when will it ends: tend how many people will catch the disease: rend Application to Epidemic Studies The SIR model of epidemics: Population S(t) R(t) I(t) t Important questions about an infectious disease are:

46. imax tmax tend Application to Epidemic Studies The SIR model of epidemics: Population S(t) R(t) rend I(t) t CSDP framework can be used for: Bound the parameters according to the information available about the spread of a disease on a particular population (ex: boarding school) Predict the behaviour of an infectious disease from its parameter ranges

47. directions for further research: Explore alternative safe methods Apply to different models Extend to PDEs Conclusions and Future Work • the work extends Constraint Reasoning with ODEs • it may support decision in applications where one is interested in finding the range of parameters for which some constraints on the ODE solutions are met • it is an expressive and declarative constraint approach • it relies on safe methods that do not eliminate solutions

48. Bibliography • Jorge Cruz.Constraint Reasoning for Differential Models • Vol: 126 Frontiers in Artificial Intelligence and Applications, IOS Press 2005 • Ramon E. Moore.Interval Analysis • Prentice-Hall 1966 • Eldon Hansen, G. William Walster.Global Optimization Using Interval Analysis • Marcel Dekker 2003 • Jaulin, L., Kieffer, M., Didrit, O., Walter, E.Applied Interval Analysis • Springer 2001 Links • Interval Computations (http://www.cs.utep.edu/interval-comp/) • A primary entry point to items concerning interval computations. • COCONUT (http://www.mat.univie.ac.at/~neum/glopt/coconut/) • Project to integrate techniques from mathematical programming, constraint programming, and interval analysis.