* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download I 1
Survey
Document related concepts
Transcript
Constraint Reasoning for Differential Models Jorge Cruz CENTRIA - Centre for Artificial Intelligence DI/FCT/UNL June 2009 1 PRESENTATION OUTLINE • Constraint Reasoning • Constraint Reasoning for Differential Models • Examples: Drug Design / Epidemic Study • Conclusions and Future Work 2 Constraint Reasoning Continuous CSP (CCSP): Constraint Satisfaction Problem (CSP): set of variables Intervals of reals [a,b] set of domains set of constraints Solution: Numeric (=,,) Many assignment of values which satisfies all the constraints GOAL Find Solutions; Find an enclosure of the solution space 3 Constraint Reasoning Continuous Constraint Satisfaction Problem (CCSP): [1,5] y Interval Domains Numerical Constraints y = x2 x+y+z 5.25 Many Solutions x=1, y=1, z=1 ... Solution: x=1, y=1, z=3.25 ... x [0,2] zx z [,] assignment of values which satisfies all the constraints GOAL Find solutions; Find an enclosure of the solution space 4 Representation of Continuous Domains [r1..r2] r [f1 .. f2] R F [r..r] F-interval F-box 5 Solving CCSPs: Branch and Prune algorithms constraint propagation box split Safe Narrowing Functions Strategy for isolate canonical solutions provide an enclosure of the solution space 6 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 [0,2] x Simulation: Constraint Reasoning: 0 x1? 1 2 [1,2] y= x2 [1,5] y 0 no 1 4 y4? [1,4] 7 How to narrow the domains? [0,2] y= x2 [1,5] x y Safe methods are based on Interval Analysis techniques x[a,b] x2[a,b]2= [0,max(a2,b2)] [min(a2,b2),max(a2,b2)] if a0b otherwise 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] 8 How to narrow the domains? [0,2] y= x2 [1,5] x y Safe methods are based on Interval Analysis techniques x[a,b] x2[a,b]2= [0,max(a2,b2)] [min(a2,b2),max(a2,b2)] if a0b otherwise NFy=x²: Y’ YX2 9 Newton Method for Finding Roots of Univariate Functions Let f be a real function, continuous in [a,b] and differentiable in (a..b) 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= r1f(r1)/f’() 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 10 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= rif(ri)/f’() rif(ri)/f’(ri) 30 20 f(x) 10 r2 0 0 1 2 3 4 r5 r16 r0 r2 r1 7 8 r2 r 1 9 r0 10 0 -10 -20 x 11 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! 30 20 r1=+ f(x) 10 0 0 1 2 3 r 4 5 6 7 8 9 10 0 -10 -20 x 12 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= r1f(r1)/f’() If r is a root within I0 then: r1I0 r r1f(r1)/f’(I0) I0 (all the possible values of are considered) In particular, with r1=c=center(I0) we get the Newton interval function: r cf(c)/f’(I0) = N(I0) Since root r must be within the original interval I0, a smaller safe enclosure I1 may be computed by: I1 = I0 N(I0) 13 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 30 20 10 f(x) r1 0 0 1 2 3 4 5 6 7 8 9 I0 c -10 10 N(I0) I1 -20 x 14 How to narrow the domains? [0,2] y= x2 x [1,5] y Safe methods are based on Interval Analysis techniques y x2 = 0 F(Y) = Y [0,2]2 F’(Y) = 1 yY x[0,2] yx2=0 y N( Y) c( Y) If x[0,2] and y[1,5] 2 3 [ 0 , 2 ] Then y N([1,5]) 3 [0,4] 1 y[1,5] [0,4] y[1,4] F(c( Y)) F' ( Y) Interval Newton method 15 How to narrow the domains? [0,2] y= x2 x [1,5] y Safe methods are based on Interval Analysis techniques y x2 = 0 F(Y) = Y [0,2]2 F’(Y) = 1 yY x[0,2] yx2=0 y N( Y) c( Y) F(c( Y)) F' ( Y) Interval Newton method 2 c ( Y ) X NFy=x²: Y’ Y c( Y) 1 16 How to narrow the domains? [0,2] y= [1,5] x2 x y Safe methods are based on Interval Analysis techniques NFy=x²: Y’ YX2 2 c ( Y ) X NFy=x²: Y’ Y c( Y) 1 ½) + NFy=x²: X’ (XY½)(XY 2 Y c ( X ) NFy=x²: X’ X c( X) 2X contractility correctness Y’ Y yY yY’ ¬xX y=x2 X’ X xX xX’ ¬yY y=x2 17 Solving a Continuous Constraint Satisfaction Problem Constraint Propagation [1,4] [1,5] y NFy=x²: Y’ YX2 ½) + NFy=x²: X’ (XY½)(XY y = x2 x+y+z 5.25 x [0,2] [1,2] zx NFx+y+z5.25: X’ X([,5.25]YZ) NFx+y+z5.25: Y’ Y([,5.25]XZ) z [,] [,3.25] [1,3.25] NFx+y+z5.25: Z’ Z([,5.25]XY) NFzx: X’ X(Z[0,]) NFzx: Z’ Z(X[0,]) 18 Solving a Continuous Constraint Satisfaction Problem Constraint Propagation [1,3.25] [1,4] [1,5] y y = x2 x+y+z 5.25 x [0,2] [1,2] [1,3.25] zx NFy=x²: Y’ YX2 ½) + NFy=x²: X’ (XY½)(XY NFx+y+z5.25: X’ X([,5.25]YZ) NFx+y+z5.25: Y’ Y([,5.25]XZ) z [,] [,3.25] [1,3.25] NFx+y+z5.25: Z’ Z([,5.25]XY) NFzx: X’ X(Z[0,]) NFzx: Z’ Z(X[0,]) 19 Solving a Continuous Constraint Satisfaction Problem Constraint Propagation + Branching Stopping Criterion [1,3.25] y y = x2 x+y+z 5.25 x [1,3.25] x y z 1 1 1 1 1 3.25 x 3.25 1.5 zx z y = x2 y = 3.25 2.25 1.5 5.25 x+y+z z 2-3.25 zx <3.25 [1,3.25] 20 How to deal with change in dynamic models? Typically through differential equations Classical constraint methods do not address differential models directly Differential model: dv v dt solution v(0) [0.5,1.0] v(1) [1.0,2.0] Constraint model: v(t)=v(0)et Variables: x0, x1 Domains: [0.5,1][-1,2] Constraints: x1 = x0e And without using the solution form? x0[0.5,2/e] (non linear models) x1[0.5e,2] 21 Constraint Reasoning for Differential Models 3 2 dv v dt 1 v(0) [0.5,1.0] 0 v(1) [1.0,2.0] 0 0,5 1 -1 -2 All functions from [0,1] to R 22 Constraint Reasoning for Differential Models 3 2 dv v dt 1 v(0) [0.5,1.0] 0 v(1) [1.0,2.0] 0 0,5 1 -1 -2 Functions s from [0,1] to R such that: t[0,1] ds(t ) s (t ) dt 23 Constraint Reasoning for Differential Models 3 2 dv v dt 1 v(0) [0.5,1.0] 0 v(1) [1.0,2.0] 0 0,5 1 -1 -2 Functions s from [0,1] to R such that: t[0,1] ds(t ) s (t ) dt s(0) [0.5,1.0] 24 Constraint Reasoning for Differential Models dv v dt v(0) [0.5,1.0] v(1) [1.0,2.0] 3 2 I1 1 I0 0 0 0,5 1 -1 -2 Functions s from [0,1] to R such that: t[0,1] ds(t ) s (t ) dt s(0) [0.5,1.0] s(1) [1.0,2.0] 25 Extended Continuous Constraint Satisfaction Problem [1,5] y y= CSDP x2 x+y+z 5.25 x [0,2] zx dv v dt v(0) y v(1) z z [,] ODE system Trajectory properties NFCSDP: Y’ ... Z’ ... 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 26 Trajectory Properties maximum k value areak k continuous function k minimum firstk t timeMaximum timek 27 Solving a CSDP Maintain a safe trajectory enclosure 1.5 and safe enclosures for each trajectory property: s1( t)TR1 x 1 I1 0 0 t 6 x 2 I2 x 3 I3 1.5 x4 I4 x 5 I5 s2( t)TR2 ... 0 0 t 6 28 Use Narrowing functions for pruning the domains through propagation Solving a CSDP b max s (t ) 1.5 1t3 a TR I x I s TR continuous function 0 0 t 6 Maximum Narrowing Functions 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] [tp1,tp2][1,3] TR ([tp1,tp2]) TR ([tp1,tp2]) [,c] where c is the upper bound of I 29 Solving a CSDP ds(t ) 0.7s(t ) dt s(0) [1.25] 1.75 1.5 s(1) [, ] t[0,1] s(t) [, ] 0.75 TR 0 0 t 0.30.408 1 Interval Picard Operator For: t[0,1] Assume: s(t) s(0)[0.5,0.5]=[0.75,1.75] t[0,0.3] then: ds(t ) 0.7 [0.75,1.75] [1.225,0.525] dt s(t) [1.25] [0,0.3][1.225,0.525]=[0.8825,1.25] 30 Solving a CSDP ds(t ) 0.7s(t ) dt 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 0 t 0.3 1 Interval Taylor Series (point enclosure): ti=0 ti+1=0.3 h=0.3 =[0,0.3] 0h.k3k ( k ) k h p 1 0( .p31p)1 s(0)=[1.25] s()=[0.8825,1.25] ss((0t.i3)1 )[1s.(25 ti )] s ( (0t.i7)) [1.25] s (()0.7) p 1 [0.8825,1.25] kk!! ( p 1)! ( p 1)! k 1 s ( k ) (t ) ( 0.7) k s(t ) p=0 s(0.3)[0.9875,1.0647] p p=1 s(0.3)[1.0069,1.0151] p=2 s(0.3)[1.0131,1.0138] Trajectory Narrowing Function 31 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[-1.0,2.0] 0 0 NF 0,5 1 -1 -2 TR =[0,1][-,] 32 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[-1.0,2.0] 0 0 0,5 1 -1 NF -2 TR =[0][0.5,1.0]:(0,1][-,] 33 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[-1.0,2.0] 0 0 0,5 1 -1 NF -2 TR =[0][0.5,1.0]:(0,1)[-,]:[1][-1.0,2.0] Based on an Interval Taylor Series method 34 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[-1.0,2.0] 0 0 0,5 1 -1 NF -2 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] 35 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[-1.0,2.0] 0 0 0,5 1 -1 NF -2 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] 36 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[1.35,2.0] 0 0 0,5 1 -1 NF -2 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 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[1.35,2.0] 0 0 0,5 1 -1 NF -2 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] 38 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) 3 2 I0=[0.5,1.0] 1 I1=[1.35,2.0] 0 0 NF 0,5 1 -1 -2 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] 39 Example: Constraint Satisfaction Differential Problem ODES,[0,1](xODE) Value0(x0) Value1(x1) (fixed point) 3 2 I0=[0.5,0.74] 1 I1=[1.35,2.0] 0 0 0,5 1 -1 -2 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 Application to Drug Design Differential model of the drug absorption process: concentration of the drug in the gastro-intestinal tract concentration of the drug in the blood stream dx(t ) p1 x(t ) D(t ) dt dy(t ) p1 x(t ) p2 y(t ) dt 2 if 0.0 t 0.5 drug intake regimen: D(t ) 0 if 0.5 t 6.0 Periodic limit cycle (p1=1.2, p2=ln(2)/5): 1 1,5 y(t) x(t) 0,5 1 0 0,5 0 1 2 3 t 4 5 6 0 1 2 3 t 4 5 6 41 Application to Drug Design Important properties of drug concentration are: maximum y(t) minimum area1.0 time1.1 CSDP framework can be used for: Bound the parameters (e.g p1) by imposing bounds on these properties 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 p1[0.0 , 4.0] p1[1.3 , 1.4] 42 Application to Drug Design Important properties of drug concentration are: maximum y(t) minimum area1.0 time1.1 CSDP framework can be used for: Compute safe bounds for these properties for chosen parameters p1[1.3 , 1.4] 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) 43 Application to Epidemic Studies 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 dS(t ) rS (t ) I (t ) dt Parameters dI (t ) rS (t ) I (t ) aI (t ) dt r a dR(t ) aI (t ) dt efficiency of the disease transmission recovery rate from the infection 44 Application to Epidemic Studies The SIR model of epidemics: Population 800 S(t) R(t) rend 600 400 imax I(t) 200 0 0 2 4 6 8 10 12 14 16 18 20 22 24 tmax t tend Important questions about an infectious disease are: the maximum number of infectives: imax the time that it starts to decline: tmax when will it ends: tend how many people will catch the disease: rend 45 Application to Epidemic Studies The SIR model of epidemics: Population 800 S(t) R(t) rend 600 400 imax I(t) 200 0 0 2 4 6 8 10 12 14 16 18 20 22 24 tmax t tend 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) 46 Predict the behaviour of an infectious disease from its parameter ranges 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 • directions for further research: Explore alternative safe methods Apply to different models Extend to PDEs 47 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. 48