Sunday, October 7, 2007


Robot Demos:
Interactive control of the DLR hand
Human control of robotic systems with a large number of DOFs is often difficult due to the overwhelming number of variables that need to be specified. We developed a method for controlling such systems using only a small number of input variables. Motivated by prosthetic applications, we applied our method on the control of a robot hand. Come and control the DLR robot hand using the mouse or a wiimote!













An insight into R,LAB's latest robotics platform, the SmURV
Robots either cost a lot of money or require hundreds of hours to be built; sometimes even both. The SmURV is a comparatively cheap basic robotics platform that was developed at R,LAB and is made up of off-the-shelf computer components. Come and see how easy it is to build one yourself!








Tactical Teams
We present a robotic system that integrates person and gesture recognition with speech recognition and synthesis. This results in a natural, hands-free interactive system.


























Robotic Video Games
A video game using Nintendo Wii Remotes as controllers for Sony AIBO dogs playing soccer. This is an interactive demo, so viewers will be allowed and encouraged to pick up a Wii Remote and join the fun!














Robot learning from Demonstration
Programming a robot to perform a task can be a long, arduous undertaking. We are exploring ways in which users can demonstrate tasks to robots in an intuitive manner and the robot learns to perform the task. Participants can interact with the robots and attempt to teach them new behaviors.










Graphics Demos:

ChemPad
Molecules are inherently three-dimensional objects that are represented by chemists on paper and classroom blackboards by a system of two-dimensional notations. ChemPad, a new Tablet PC application with a pedagogical focus, generates 3D molecular structures from hand drawn digital ink rather than from traditional molecule construction interfaces.
ChemPad allows chemists to sketch molecules in a quick and natural fashion to generate 3D models. This capability gives ChemPad pedagogical value as shown by our user study of a hundred organic chemistry students who had difficulty with 3D chemistry thinking and used ChemPad to overcome that hurdle.










Math Recognition & Error Correction
The Math Error Correction project is concerned with the user interface aspects of entering mathematical notations on a pen-based computer. The sometimes ambiguous nature of mathematical notation and the irregular, imprecise and ambiguous nature of human handwriting conspire to produce inconsistencies between what the human and the computer perceive. We have developed a sophisticated mathematic handwriting recognizer, and a handful of visualization techniques to aid the user in identifying parsing errors. Our demo also includes techniques for correcting the errors and for incorporating the math into a more general writing environment.











MathPad
MathPad2 is a prototype Tablet PC application that allows users to make dynamic illustrations by combining handwritten mathematical expressions with sketched drawings. This combination allows for animated illustrations that aid users in understanding mathematics, physics and engineering concepts. Users can also graph and solve equations as well as simplify and factor expressions with a simple gestural interface. The prototype makes use of Mas a computational back end and also has a sophisticated, trainable math recognition front endUsers can label their sketched diagrams and the system uses these labels to determine the associated mathematics. Output from Matlabis used to drive simple animations so users can observe diagram behavior.
Unlike other mathematics systems that require typed linear notations, MathPad2 uses natural 2D mathematical notation. In addition, the experience islive and interactive in contrast to a static paper notebook. With MathPad2, we have a powerful electronic problem solving notebook that utilizes pencil-and-paper style input with pen-based computing that can dramatically change how students learn and work.












Diagrammer
Our goal is to make the process of producing 2D diagrams much easier and more efficient. The observation that most diagrams can be sketched with a pen in a few seconds, while other interfaces (e.g., keyboard and mouse) wouldrequire much more time and seem tedious by comparison is why we believe a pen-based interface is probably the best interface for producing the kinds of diagrams most people need. However, an initial sketch can be many steps away from a completed diagram and what is needed is an end-to-end process that preserves the efficiency and ease with which an initial sketch can be made.

Thursday, September 20, 2007

Skeletonization (Roadmap) Methods

To be complete for motion planning, skeletonization methods must satisfy two properties:

The kinds of skeletonizations are visibility graphs, Voronoi diagrams and roadmaps, which consist of silhouette curves and linking curves. (This formulation due to Russell and Norvig; note that Latombe calls all of these things "roadmap methods.")

Visibility Graphs

Voronoi diagram

A roadmap method based on retraction. A continuous function of Cfree is defined onto a one-dimensional subset of itself. The Voronoi diagram consists of those curves in the space that are equidistant from two or more obstacles; these curves form the skeleton.

Cell Decomposition

A global approach to motion planning. The intuitive idea is to break the space down into a finite number of discrete chunks.

Potential Fields

Potential fields are very efficient but suffer from local minima. Two approaches overcome this:

· design potential functions with no local minima other than the goal configuration

· complement the basic potential field approach with mechanisms to escape from local minima

Landmark-Based Navigation

Configuration Space

Generalized Configuration Space

The term generalized configuration space is used to describe systems in which other objects are included as part of the configuration. These may be movable, and their shapes may vary.

1. Partition the generalized configuration space into finitely many states. The planning problem then becomes a logical one, like the blocks world. No general method for partitioning space has yet been found.

3. Restrict object motions to simplify planning.

Extensions of the Basic Problem

Multiple Moving Objects

The second and third extensions yield configuration spaces of arbitrarily large dimensions. Planning can be done in a composite configuration space which is the cross-product of the individual configuration spaces (this is called centralized planning), or another method called decoupled planning can be used to plan the motions more or less independently and interactions are only considered in the second phase of planning.

Kinematic Constraints

holonomic constraints

nonholonomic constraints

Uncertainty

Grasp Planning

There are three principal considerations in gripping an object. They are:

· stability -- the grasp should be stable in the presence of forces exerted on the grasped object during transfer and parts-mating motions

Computational Complexity

These theorems are taken from Latombe's book (see Sources).

Theorem 2 (Joints) In the absence of obstacles, deciding whether a planar linkage in some initial configuration can be moved so that a certain joint reaches a given point in the plane is PSPACE-hard.

Theorem 6 (Velocity-bounding) Planning the motion of a rigid object translating without rotation in three dimensions among arbitrarily many moving obstacles that may both translate and rotate is a PSPACE-hard problem if the velocity modulus of the object is bounded, and an NP-hard problem otherwise.

Reducing Complexity

It is possible to approximate the real problem before giving it to the motion planner; it is reasonable to trade generality for improved time performance.

Simplification heuristics make only local plans, by breaking the problem into subproblems. For example, many localities are stereotyped situations, such as moving through a door or turning in a corridor.

Robot Architectures

Brooks' Subsumption Architecture

This approach breaks the problem down into task-achieving behaviors (such as wandering, avoiding obstacles, or making maps) rather than decomposing it functionally (into sensing, planning, acting).

In subsumption architectures, levels of competence are stacked one on top of another, ranging from the lowest level (object avoidance) to higher levels for planning and map-making. Higher levels may interfere with lower levels, but each level's architecture is built, tested and completed before the next level is added. In this way the system is robust and incrementally more powerful.

Individual levels consist of augmented finite state machines connected by message-passing wires. Higher levels may inhibit signals on these wires, or replace them with their own signals; this is how they exercise control over more basic functions.

(For more information, see the AI Qual Summary on Agent Architectures.)

Shakey

After each action was executed, PLANES would execute the shortest plan subsequence that led to a goal and whose preconditions were satisfied. In this way, actions that failed would be retried and serendipity would lead to reduced effort. If no subsequence applied, PLANEX called STRIPS to make a new plan.

Situated Automata

This compilation approach distinguishes between the use of explicit knowledge representation by the designers (the "grand strategy") and the use of explicit knowledge within the agent architecture (the "grand tactic"). Rosenschein's compiler generates FSMs that can be proved to correspond to logical propositions about the environment, provided the compiler has the correct initial state and physics.

The FLAKEY system at SRI used situated automata to navigate, run errands, and ask questions, and had no explicit representation.