In this paper we present a novel method for robot path planning based on learning motion patterns. A motion pattern is defined as the path that results from applying a set of probabilistic constraints to a ``raw'' input path. For example, a user can sketch an approximate path for a robot without considered issues such as bounded radius of curvature and our system would then elaborate it to include such a constraint. In our approach, the constraints that generate a path are learned by capturing the statistical properties of a set of training examples using supervised learning. Each training example consists of a pair of paths: an unconstrained (raw) path and an associated preferred path. Using a Hidden Markov Model in combination with multi-scale methods, we compute a probability distribution for successive path segments as a function of their context within the path and the raw path that guides them. This learned distribution is then used to synthesize a preferred path from an arbitrary input path by choosing some mixture of the training set biases that produce the maximum likelihood estimate. We present our method and applications for robot control and non-holonomic path planning. |