Lecture 9: Behavior LanguagesAlternative Approaches To SequencersMotion Description LanguagesThis is an instance of our framework for control lawsThe Kinetic State MachineSlide 6Q: What is the role of G(x)?MDL ProgramsCompose Atoms to BehaviorsExample InterruptsExample AtomsEnvironment ModelExperimentLimitationsNext: ObserversEstimates and UncertaintyGaussian (Normal) DistributionThe Central Limit TheoremExpectationsVariance and CovarianceCovariance MatrixIndependent VariationDependent VariationLecture 9:Behavior LanguagesCS 344R: RoboticsBenjamin KuipersAlternative Approaches To Sequencers•Roger Brockett, MDL–Hristu-Varsakelis & Andersson, MDLe.•Jim Firby, RAPS•… there are others …•The right answer is not completely clear.Motion Description Languages•Problem: Describe continuous motion in a complex environment as a finite set of symbolic elements.–Applicability = sequencing–Termination = condition or time-out. •Roger Brockett defined MDL.–Extended to MDLe by Manikonda, Krishnaprasad, and Hendler.This is an instance ofour framework for control laws•A local control law is a triple: A, Hi, –Applicability predicate A(y)–Control policy u = Hi(y)–Termination predicate (y)€ Α(y)€ u=H(y)€ Ω(y)The Kinetic State Machine•The MDLe state evolution model is:–This is an instance of our general model•There is also:–a set of timers Ti;–a set of boolean features i(y)•U(t, x) is a general control law which can be suspended by the timer Ti or the interrupt i(y)€ ˙ x =f (x)+G(x)U(t,x) y=h(x)€ ˙ x = F(x,u)The Kinetic State MachineQ: What is the role of G(x)?•In the state evolution model•x is in Rn. Motor vector U(t,x) is in Rk.•G is an nk matrix whose columns gi are vector fields in Rn.–Each column represents the effect on x of one component of the motor vector.€ ˙ x =f (x)+G(x)U(t,x) y=h(x)MDL Programs•The simplest MDL program is an atom•To run an atom, –apply U to the kinetic state machine model,–until the interrupt function (y) goes false, or–until T units of time elapse.€ σ = U,ξ,TCompose Atoms to Behaviors•Given atoms •Define the behavior •Which means to do the atoms sequentially until the interrupt b or time-out Tb occurs.•Behaviors nest recursively to make plans.€ σ1= U1,ξ1,T1σ2= U2,ξ2,T2€ b= (σ1,σ2),ξb,TbExample Interrupts•(bumper)•(wait T)•(atIsection b)–b specifies 4 bits: whether obstacle is required (front, left, back, right).–Interrupt occurs when a location of that structure is detected.Example Atoms•(Atom interrupt_condition control_law)•(Atom (wait ) (rotate ))•(Atom (bumper OR atIsection(b)) (go v, ))•(Atom (wait T) (goAvoid , kf, kt))•(Atom (ri(t)==rj(t)) (align ri rj))•Select ideas from here for your controllers.Environment Model•A graph of local maps.–We will study local metrical maps later.–Likewise topological maps.•Edges in the graph represent behaviors.•Compact and effective:–Local metrical maps are reliable.–Describe geometry only where necessary.Experiment•They built a model of three places in their laboratory.•They demonstrated MDLe plans for travel between pairs of places.Limitations•Simple sequential FSM model.–No parallelism or combination of control laws.–No success/failure exits from control laws.–Much can pack into the interrupt conditions.•Limited evaluation:–No exploration or learning.–No test of reliability.Next: Observers•Probabilistic estimates of the true state, given the observations.•Basic concepts:–Probability distribution; Gaussian model–ExpectationsEstimates and Uncertainty•Conditional probability density functionGaussian (Normal) Distribution•Completely described by N(,) –Mean –Standard deviation , variance 2€ 1σ 2πe−(x−μ)2/2σ2The Central Limit Theorem•The sum of many random variables–with the same mean, but–with arbitrary conditional density functions, converges to a Gaussian density function.•If a model omits many small unmodeled effects, then the resulting error should converge to a Gaussian density function.Expectations•Let x be a random variable. •The expected value E[x] is the mean:–The probability-weighted mean of all possible values. The sample mean approaches it.•Expected value of a vector x is by component.€ E[x] = x p(x) dx∫≈ x =1Nxi1N∑ € E[x]=x =[x 1,L x n]TVariance and Covariance•The variance is E[ (x-E[x])2 ]•Covariance matrix is E[ (x-E[x])(x-E[x])T ]€ σ2=E[(x−x )2] =1N(xi−x )21N∑€ Cij=1N(xik−x i)(xjk−x j)k=1N∑Covariance Matrix•Along the diagonal, Cii are variances.•Off-diagonal Cij are essentially correlations. € C1,1= σ12C1,2C1,NC2,1C2,2= σ22O MCN ,1L CN ,N= σN2 ⎡ ⎣ ⎢ ⎢ ⎢ ⎢ ⎤ ⎦ ⎥ ⎥ ⎥ ⎥Independent Variation•x and y are Gaussian random variables (N=100)•Generated with x=1 y=3•Covariance matrix:€ Cxy=0.90 0.440.44 8.82 ⎡ ⎣ ⎢ ⎤ ⎦ ⎥Dependent Variation•c and d are random variables.•Generated with c=x+y d=x-y•Covariance matrix:€ Ccd=10.62 −7.93−7.93 8.84 ⎡ ⎣ ⎢ ⎤ ⎦
View Full Document