2. Recursive state estimation

Source: Internet
Author: User

2.1 Introduction

The core of a probabilistic robot is the concept of estimating State from sensor data. State estimation solves the problem of variables estimated from the sensor data, which are not directly observable, but are inferred. In most robotic applications it is relatively easy to decide what to do, if only certain variables are known. For example, moving a mobile robot is relatively easy if the exact position of the robot and all nearby obstacles is known. Unfortunately, these variables cannot be measured directly. Instead, a robot has to rely on its sensors to get this information. The sensors simply carry some information about these variables, and their measurements are corroded by noise. State estimation attempts to recover state variables from the data. The probability state estimation algorithm calculates the distribution of trust degree to the possible world state. An example of probabilistic state estimation has been encountered in this book introduction: Mobile Robot positioning.

The goal of this chapter is to introduce the basic vocabulary and mathematical tools for estimating state from sensor data.

2.2 Introduces the basic concept of probabilistic concepts used in the book.

2.3 Describes the formal model of robot environment interaction, and presents the key terminology used in this book.

2.4 The Bayesian filter is introduced, and the recursive algorithm for state estimation is the basis of each technology presented in this book.

2.5 This paper discusses the problems of representation and calculation when Bayesian filtering is implemented.

2.2 Basic Concepts in probability

This section allows the reader to familiarize themselves with the basic symbolic and probabilistic facts used in this book. In a probabilistic robot, variables such as sensor measurement, control, the state of the robot and its environment are all modeled as random variables. Random variables may present multiple values, and they do so according to a specific probability rule. Probabilistic derivation is the process of calculating the laws of these random variables, which are derived from other random variables and observational data.

Let x represent a random variable, and x represents a specific value that the X may render. An example of a standard random variable is tossing a coin, X may present the head and tail, if X can render all the value space is discrete, just like an ion, if X is the result of a coin toss, we write P (x=x) to indicate the probability that the random variable x has a value of x. For example, an ordinary coin has such a feature as P (x=head) =p (X=tail) =1/2. The sum of the discrete probabilities is 1, i.e.

∑p (x=x) =1. The probability is always non-negative, that is, p (x=x) >0.

To simplify this notation, we usually omit the representation of the random variable in detail, as long as it is possible, instead of using the usual shorthand p (x) to represent P (x=x).

Most of the techniques in this book deal with estimating and making decisions in a continuous space. A continuous space is crowned with such a characteristic that a random variable can represent a continuous value. Unless explicitly stated, we assume that all continuous random variables have a probability density function (PDF). A common density function is one-dimensional normal distribution with a mean μ covariance of σ2. The probability density function of a normal distribution is given by the following Gaussian function:

-------(2.3)

The normal distribution plays an important role in this book. We usually simplify them to illustrate the mean and covariance of random variables.

Normal distribution 2.3 assumes that x is a scalar value. Usually x will be a multidimensional vector. The normal distribution of vectors is called multivariable. The probability density function of a multidimensional normal distribution is the following form:

---(2.4), μ is the mean vector, and σ is a semi-definite symmetric matrix that becomes the covariance matrix. Superscript T denotes the transpose of a vector. The argument in the exponent with this PDF was quadratic in X,and the parameters of this quadratic function be u andσ.

Readers should take a moment to understand (2.4) is a popularization of (2.3). The two are equal if x is a scalar value of σ=σ2.

Equations (2.3) and (2.4) are examples of a probability density function. Just as discrete probability density distributions add up to 1, a probability density function has an integral of 1:

However, unlike discrete probabilities, the upper limit of a probability density function is not 1. Through this book, we will replace each other with terms, probabilities, probability density functions, probability densities. We default all continuous random variables to be measurable, and we also assume that all continuous distributions have density.

The two random variables x and y are the joint distributions given by the following:

Bayesian theory plays an important role in probabilistic robots (in general, probability derivation).

If x is a variable that can be deduced by Y, the probability p (x) is called a prior probability distribution of the variable x. As indicated by (2.14), Bayesian rules provide a convenient method for calculating the posteriori probability P (x|y) using its opposite conditional probability P (y|x) and a priori probability p (x). In other words, if you are interested in deriving X from sensor data y, then the Bayes rule allows us to do so by the opposite probability, which indicates the probability of the data y under the x condition. In robotics, probability P (y|x) is often referred to as the generation model, because at some level of abstraction it describes how the state variable x causes the sensor to measure the variable Y.

An important observation is that the denominator p (y) of the Bayesian rule does not depend on X. Therefore, factor P (Y)-1 will be the same in equations (2.13) and (2.14) regardless of the value of x in the posterior distribution P (x|y). Because of this, p (Y)-1 is usually written as a normalized variable in the Bayesian rule, and is generally expressed as η:

P (x|y) =ηp (y|x) p (x)

The advantage of this notation is its brevity. Rather than explicitly providing a definite expression for normalization constants-normalization constants can grow very quickly in some mathematical derivation---we will simply use the normalized symbol η to indicate that the final result will be normalized to 1. Throughout the book, this type of regularization will be expressed as η or (η ', η ', .... )。 The important thing is that we will use the same η freely in different equations to denote the normalization, although their actual values are not the same.

We have noticed that any rule discussed so far is appropriate for any variable, such as the variable Z. For example, the conditional Bayesian z=z is as follows:

In turn, it is not right: absolute independence does not imply conditional independence:

In a particular case, however, conditional independence and absolute independence may be consistent.

Many probabilistic algorithms require that we calculate the probability distributions of features or statistics. The expectation of a random variable x is given by the following:

Not all random variables have limited expectations, but what variables are not mentioned in this book.

The covariance matrix measures the square of the mean deviations from the mean. As mentioned above, the mean value of the multidimensional normal distribution N (x;μ,σ) is μ, and its covariance is Σ.

The last important concept in this book is entropy. The entropy of a probability distribution is given by the following expressions:

The concept of entropy originates from information theory. Entropy is the expected information carried by the X-value ....

In the discrete example,-log2p (x) is the required number of bits to encode x using an optimal encoding, assuming that P (x) is the probability of observing X. In this book, entropy will be used to gather information about robots in order to express the information that a robot may receive based on performing specific actions.

2.3 Robot Environment interaction

Represents the interaction of the robot with the surrounding environment. The environment or the world is a dynamic system with an internal state. The robot can use its sensors to obtain information about the environment. However, the sensor is noisy and there are often many things that are not directly perceived. As a result, the robot maintains an internal degree of trust in the state of the environment, in the left part of the picture.

The robot can also operate to influence its environment. The effect of doing so is usually unpredictable. Therefore, each control behavior affects both the environment state and the internal Trust degree maintained by the robot relative to the environment state.

The interaction will now be described more formally.

2.3.1 Status

The environment is called State. The material provided in this book is very convenient for viewing the state as a collection of all aspects of the robot and its environment (which can affect the future). A state variable tends to change over time, tracking people around the robot. Others tend to remain stationary, such as the location of a building's wall. The changed state is called the dynamic state, which differs from the static state, or the non-changing state. The state also includes variables about the robot itself, such as posture, speed, whether or not his sensor works correctly, and so on.

Throughout this book, the state is represented as X, although the specific variables that are contained in X will depend on the context. The state at T-moment is expressed as XT. The typical state variables in this book are:

Robot posture, including position and orientation relative to the global coordinate system. A rigid-body mobile robot has 6 state variables, three Cartesian coordinates, and three directional angles (tilt, roll, yaw). For rigid-body robots confined to planar environments, posture is usually given by three variables, in the coordinate position of the plane and its yaw angle.

In the operation of the robot, the posture includes the configuration variables for the actuator of the robot. For example: They may include a rotational joint angle, where each degree of freedom in the robotic arm is called a one-dimensional configuration at any point in time, which is part of the robot's motion state. Robot configuration is often referred to as the kinematic state.

The speed of the robot and the speed of its joints are called dynamic states. A rigid-body robot moves through a space with six velocity variables, one for each pose variable. The dynamic state of this book has a small effect.

The position and characteristics of objects around the environment are also known as state variables. An object may be a tree, a wall, a point on a very large plane. The characteristics of these objects may be their visual appearance (color, texture). Depending on the state of the model is starved of granularity, the robotic environment has a state variable (or even more) in the dozens of-channel Cheng. Imagine how many bits it takes to accurately describe a physical environment. Many problems have been studied in this book, and the position of objects in the environment is static. In some problems, the object will be assumed as a signpost form, it is distinguishable, static environmental characteristics can be reliably identified.

The position and speed of moving objects and people are also potential state variables. In general, robots are not the only moving factor in the environment. Other mobile entities have their own motion and dynamic state.

Full state: If this is the best forecast for the future, then the state XT will be called complete. In other words, the knowledge of the past state, measurement, or control is completely contained, and no additional information is carried, which will help us predict the future more accurately. It is important to note that a complete definition does not require that the future be a deterministic function of the state. The future may be random, but a variable with no prior to XT can affect the stochastic development of future States, except that dependency is mediated by XT, and the temporary process that satisfies these conditions is often referred to as a Markov chain.

The concept of state complete is theoretically important. In practice, it is impossible to specify a complete state for any real-world robotic system. A complete state includes not only all aspects of the environment that affect the future, but also the robot itself, the contents of the computer's storage, the brain dumps of the people around it, and so on. Some of them are hard to get. So the actual implementation picks up a subset of all the state variables, for example, listed above. Such a state is called a non-complete state.

In most robotic applications, the state is continuous, meaning that the XT defines a continuum. An example of a good continuous state space is the robot pose, that is, its position and direction relative to the external coordinate system. Sometimes, the state is discrete. An example of a discrete state space is if the state variable simulates whether the sensor is broken. The state space consists of contiguous and discrete variables called mixed state spaces.

In most interested robot problems, the state changes over time. In this book, time is discrete, that is, all events of interest will occur in discrete time steps t=0,1,2, ... If the robot starts its operation at a distinguishable point in time, we will indicate this time as t=0.

2.3.2 Environment Interaction

There are two basic types of interaction between the robot and its environment: the robot can affect the state of the environment through its brakes, it can collect information about the state of the pass sensor. Two types of interactions can occur at the same time. But for the sake of explanation, we will separate in this book, the interaction is shown in Figure 2.1.

Environmental sensor measurements.

Suppose that the robot can keep all the data and control records of the sensors, and we will call this set of data (whether or not they are stored), according to two types of environment interaction, the robot has two different data streams.

Environmental measurement data provides information about the transient state of the environment. Examples of measurement data include camera images, distance scanning, and so on. For the most part, we will simply ignore small, timely effects (for example, most laser sensors continuously scan the environment at very high speeds, but we only assume that the measurements correspond to a specific point in time). The measurement data at the T moment is expressed as ZT.

Control data carrying information that alters the state of the environment. In Mobile robotics, a typical example of control data is the speed of a robot. Set the speed to 10cm per second, after 5 seconds to indicate the robot posture, after the execution of this motion command, before it posture (control execution before) 50cm. Therefore, the control expresses the information of the relationship state change.

The difference between measurement and control is a key, and the two types of data are fundamentally different for the upcoming discussions. Environment awareness provides information about the state of the environment, so it tends to increase the knowledge of the robot. On the other hand, motion tends to trigger the loss of knowledge due to the inherent noise in the robot-driven environment and the randomness of the robot. Our differences are by no means intended to show that action and perception are separated in time. Instead, the perception and control room occur simultaneously. Our separation is just for convenience.

2.3.3 Probability Generation method

Evolution of state and measurement youcai probability rule management. In general, the state XT is randomly generated from the state xt-1. Therefore, it is reasonable to show that the XT is generated from the probability distribution. At first glance, the presence of the State XT may be conditional on all past states, measurements, and controls. Thus, the law of probability describes that the evolution of a state may be given by a probability distribution of the following form:

Note that there is no particular motive, we think here the robot first performs the control behavior U1, then acquires an observation z1.

An important insight is that if the state x is complete then it is a sufficient sum to take place in the previous time step. In particular, xt-1 is a sufficient statistic of all previous controls and measurements until this point in time, i.e., u1:t-1 and z1:t-1. From all the variables in the expression above, if we know the state xt-1, only the control amount of UT is important.

In the probability of belonging, this insight is expressed in the following equation:

The expression of this equation is an example of an independent condition. This indicates that a variable is independent of other variables if one already knows the value of the third variable group, this condition variable. In this book The conditions are widely applied independently. This is the main reason why many of the algorithm calculations mentioned in this book are possible.

We also want to simulate the measurement that this process is forming in the process. Once again if the XT is complete, then we have an important conditional independence:

In other words, the state XT is sufficient for predicting the amount of the observed ZT (which contains potential noise). The knowledge of any other variables, such as past measurements, controls, or even past states, is irrelevant if the XT is complete.

This discussion gives the two conditional independent probabilities to be:.

is the probability of a state transition. This paper points out how the environment state changes with time as a function of the robot to control UT. The robot environment is random, which is reflected by a fact, is a probability distribution, not a decisive function. Sometimes the state transition probabilities do not depend on the time index T, so that we can write as

Probability is called the observational probability.

2.3.4 Distribution of Trust (belief distributions)

Another important concept in probabilistic robotics is the degree of trust. A degree of trust reflects the internal knowledge of the robot about the state of the environment. We have discussed the state cannot be measured directly. For example, a robot's posture may be xt=<14.12,12.7,45. > in a global coordinate system, but it is usually not aware of its posture, because the posture is not directly measured (even the GPS can not!) )。 Instead, the robot must infer its pose from the data. So we're going to distinguish it from the real state from his internal trust (relative to the state). In the literature, it is synonymous with trust in the term-the state of knowledge and the state of information (not to be confused with the information matrix and information vectors discussed below). Probabilistic robotics represents the degree of trust through conditional probability distributions. A degree of trust distribution assigns a probability (or density value) to each possible hypothesis relative to the real state. Distribution of state variables under conditions based on available data when the trust degree is distributed. We will represent the trust of the state Variable XT, Bel (XT), which is a shorthand for a posteriori distribution:

Readers may notice that this trust is obtained by default, after adding the observed zt. Occasionally, this will prove useful in calculating a posteriori probability before incorporating ZT, just after the control UT is executed. Such a posteriori probability will be expressed as follows:

This probability distribution is called prediction in the context of probability filtering. This term reflects the fact that the state of the T-moment is predicted based on the previous state of the post-distribution, before incorporating T-moment measurements.

2. Recursive state estimation

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.