480 likes | 775 Views
Constraint Reasoning for Differential Models Jorge Cruz CENTRIA - Centre for Artificial Intelligence DI/FCT/UNL June 2009 PRESENTATION OUTLINE Constraint Reasoning Constraint Reasoning for Differential Models Examples: Drug Design / Epidemic Study Conclusions and Future Work
E N D
Constraint Reasoning for Differential Models Jorge Cruz CENTRIA-Centre for Artificial Intelligence DI/FCT/UNL June 2009
PRESENTATION OUTLINE • Constraint Reasoning • Constraint Reasoning for Differential Models • Examples: Drug Design / Epidemic Study • Conclusions and Future Work
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
[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
[r1..r2] r [r..r] [f1 .. f2] F-box Representation of Continuous Domains F-interval R F
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
[0,2] [1,5] y = x2 x y no Simulation: 0 0 1 1 x1? y4? 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
[0,max(a2,b2)] ifa0b [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
[0,max(a2,b2)] ifa0b [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’ YX2 How to narrow the domains? Safe methods are based on Interval Analysis techniques
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’() 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
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= rif(ri)/f’() rif(ri)/f’(ri)
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!
If r is a root within I0 then: In particular, with r1=c=center(I0) we get the Newton interval function: I0 r1I0rr1f(r1)/f’(I0) r cf(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= r1f(r1)/f’()
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
y x2 = 0 F(Y) = Y [0,2]2 F’(Y) = 1 [0,2] [1,5] y = x2 x y yY x[0,2] yx2=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
y x2 = 0 F(Y) = Y [0,2]2 F’(Y) = 1 [0,2] [1,5] y = x2 x y yY x[0,2] yx2=0 y Interval Newton method NFy=x²: Y’ Y How to narrow the domains? Safe methods are based on Interval Analysis techniques
contractility correctness [0,2] [1,5] y = x2 NFy=x²: Y’ YX2 x y Y’ Y yY yY’ ¬xX y=x2 + NFy=x²: X’ (XY½)(XY½) X’ X xX xX’ ¬yY y=x2 NFy=x²: X’ X NFy=x²: Y’ Y How to narrow the domains? Safe methods are based on Interval Analysis techniques
[1,4] y NFy=x²: Y’ YX2 + NFy=x²: X’ (XY½)(XY½) y = x2 x NFx+y+z5.25: X’ X([,5.25]YZ) x+y+z 5.25 NFx+y+z5.25: Y’ Y([,5.25]XZ) z z x [1,2] NFx+y+z5.25: Z’ Z([,5.25]XY) [,3.25] NFzx: X’ X(Z[0,]) [1,3.25] NFzx: Z’ Z(X[0,]) Solving a Continuous Constraint Satisfaction Problem Constraint Propagation [1,5] [0,2] [,]
[1,3.25] y NFy=x²: Y’ YX2 + NFy=x²: X’ (XY½)(XY½) y = x2 x NFx+y+z5.25: X’ X([,5.25]YZ) x+y+z 5.25 NFx+y+z5.25: Y’ Y([,5.25]XZ) z z x NFx+y+z5.25: Z’ Z([,5.25]XY) [1,3.25] NFzx: X’ X(Z[0,]) NFzx: 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]
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]
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)
Constraint Reasoning for Differential Models All functions from [0,1] to R
Constraint Reasoning for Differential Models Functions s from [0,1] to R such that:
Constraint Reasoning for Differential Models Functions s from [0,1] to R such that:
I1 I0 Constraint Reasoning for Differential Models Functions s from [0,1] to R such that:
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
maximum k areak value k k minimum t firstk timeMaximum timek Trajectory Properties continuous function
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
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
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
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
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][-,]
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][-,]
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]
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]
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]
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]
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]
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]
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]
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
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) area1.0 minimum time1.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
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) area1.0 minimum time1.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]
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
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:
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
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
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.