Electrolocation
This project is a combination of experiment and analysis. The robot
is a rigid body that translates in an x-y plane in a tank of water.
The robot moves to locate a metal object in the tank. It does this by
looking for disturbances caused by the object in an electric field.
The electric field is created by an emitter and ground electrode
either fixed to the robot or fixed to the tank. The robot carries a
detector, and disturbances to the expected electric field are mapped
to uncertain observations of the target position by using a model of
the electric field. These observations are fused over time to localize
the target.
The result should be a control law (as a function of the current belief of the location of the target) that moves the robot so as to maximize the information gained at the next observation (greedy motion). This should be implemented on an actual x-y table robot. The robot would quickly move to the target location.
Twist: the control law could lookahead several steps to try to find a trajectory that is likely to reduce the uncertainty more over several timesteps than the simple greedy strategy. Demonstrate particular scenarios where this results in a significant advantage (i.e., greedy does not perform so well). Could exaggerate the virtual inertia of the robot to see dynamic effects.
Pursuer/Evader
This is a variant of the electrolocation problem above. In this
problem the robot's goal is to move to the object being sensed, which
is trying to evade. The robot's sensing of the object has
uncertainty. The robot's motion is dynamic (controls are forces, not
velocities), but there is no uncertainty in the motion model. The
goal is to capture the evader as quickly as possible subject to the
uncertain sensing of the evader's location and its motion
capabilities. In particular, one robot motion plan might result in
capture of the evader in a short time with a high probability, but
with small probability the capture time might be very long (e.g., the
evader is just outside the robot's reachable set in small time,
forcing the robot to have to circle around again). The solution may
make use of heuristics to simplify the problem, perhaps based on a
finite set of motion primitives available to the robot or a
precompiled representation of body-fixed reachable sets as a function
of the robot's initial velocity. For example, the forward reachable
sets of both the robot and the evader could be calculated in advance
(see, e.g., the work of Claire Tomlin et al. on calculation of reachable
sets). See also work on differential games.
Papers to get started:
K. Ghose, T. Horiuchi, P. S. Krishnaprasad, and C. F. Moss,
Echolocating bats use a nearly time-optimal strategy to intercept prey.
V. S. Patsko and V. L. Turova, Homicidal chauffeur game: Computation
of level sets of the value function.
I. M. Mitchell, A. M. Bayen, and C. J. Tomlin,
A Time-Dependent Hamilton-Jacobi Formulation of Reachable Sets for Continuous Dynamic Games,
IEEE Transactions on Automatic Control, 2005.
Steve LaValle's pursuer-evader work.
The Outfielder's Dilemma
When a deep fly is hit to the outfield, the outfielder has to decide
whether to backpedal or turn and run to the spot he expects the ball
to land. The outfielder would prefer to backpedal to be able to
keep the ball in view, but may have to sacrifice this in order to
run faster.
It has been hypothesized that humans use Bayesian information integration in motor control tasks. You will test this hypothesis on a video game version of the outfielder's dilemma. You will write a program (e.g., in Matlab) that simulates the flight of a baseball in two dimensions. The user controls the left-right motion of the outfielder via a joystick. The user attempts to position the fielder to catch the ball. When the user presses a button, the fielder toggles between facing home plate and facing the outfield fence. When the fielder faces the fence, the fielder can run faster toward it, but the in-flight ball becomes invisible. A successful catch occurs when the fielder is (almost) exactly at the location where the ball lands. The goal of the player is to maximize the number of successful catches.
One hypothesis you will test is whether players learn to switch to facing the outfield wall at the right times, subject to limits in their ability to predict the landing point of the ball, and their understanding of how fast the fielder can run.
First the player will practice moving the fielder and watching the flights of balls. Then you will develop a model of the user's ability to predict the landing point of the ball by performing a number of trials where only the beginning of the ball's trajectory is visible. This model will predict how well the player predicts the landing point of the ball based on only the initial motion of the ball. (Presumably the prediction gets worse when less of the trajectory is visible, and the typical error may be monotonic with the flight distance of the ball.) As a backpedaling player realizes with increasing uncertainty that the fielder will not get to the ball, the player should switch at the time when the expected chance of catching the ball by backpedaling drops below the expected chance of catching by turning and running.
An added twist would be to add dynamics: the player controls the fielder's acceleration, not velocity. This would complicate the player's motion model.
Papers to get started:
Kording, K.P. and D.M. Wolpert, Bayesian integration in sensorimotor learning. Nature, 2004. 427(6971): p. 244-247.
Todorov, E., Optimality principles in sensorimotor control. Nature Neuroscience, 2004. 7(9): p. 907-915.
Mobile Sensor Network
The goal of this project is to control a swarm of mobile robots to
localize a target. Each robot senses the location of the target (if
the target is within its sensing radius) and communicates its estimate
of the target's location with its neighbors. Together the robots
develop a model of the location of the target and the uncertainty
using the joint information of all the mobile sensors (robots). This
model may be represented by an estimated location and covariance
matrix describing the uncertainty, and the goal is to minimize some
scalar function of the covariance matrix, such as the determinant or
maximum eigenvalue. A key aspect is that the computation must be
distributed: no single robot has access to all of the sensed
information, and robots may only communicate with fixed bandwidth with
neighbors in a communication graph. The approach should also be
robust to robots being added or subtracted.
Based on the current estimate of the target location, each robot moves to minimize the measure of uncertainty (equivalently, moves to maximize the information expected to be gained by the ongoing sensing operations). The goal of the project is to design the information passing protocol, estimator run by each robot, and control algorithm run by each robot, and show theoretically and through simulation that the system performs well. A starting point for this framework can be found in the formation control algorithm of Freeman, Yang, and Lynch.
Added twists: Estimate the velocity of the target. Make the robot's sensing or motion capabilities anisotropic, to see different behaviors (e.g., the robot might decide to move quickly in some direction rather than slowly in the direction that otherwise yields the most information).
Papers to get started:
R. Freeman, P. Yang, K. M. Lynch, Distributed estimation and control of
swarm formation statistics, American Control Conference 2006.
T. H. Chung, V. Gupta, J. W. Burdick, and R. M. Murray, On a decentralized
active sensing strategy using mobile sensor platforms in a network,
Conference on Decision and Control 2004.
B. Grocholsky, H. Durrant-Whyte, and P. Gibbens, An information-theoretic
approach to decentralized control of multiple autonomous flight vehicles.
R. Olfati-Saber, Distributed Kalman filter with embedded consensus sensors.