Also note that the 5 point scale I'm using to grade reading reports is nonlinear. You should be shooting for (at least) a "4".
whuang@cs.rpi.edu
This paper discusses a method to perform path planning in a difficult configuration space with many degrees of freedom. The authors extend upon existing work of randomized path planning by increasing the number of nodes sampled in hard to reach areas, a process they refer to as "enhancement."The algorithm begins by randomly sampling a number of nodes in the configuration space. Each node generated is tested for collisions, and if it passes, it is kept. Next, the researchers connect the nodes. They do this with the following algorithm: for each node n, order the remaining nodes according to their distance from n, and then attempt to connect n to its K closest neighbors. After the nodes are connected, connected components are found with a breadth-first search algorithm.
The last step of the algorithm is what makes this work different from others. The authors discuss a process where they enhance nodes in "difficult" regions. After the initial N nodes are created, each node is assigned a weight w, which is inversely proportional to the number of nodes to which it is connected. These weights are normalized. They then sample M new nodes, each picked randomly in a small region around a node which is selected randomly with probability w. Each new node m is connected to its parent node if possible and is tested for connection to the K closest neighbors among the nodes that are in different connected components. This step will increase the size and reduce the number of the connected components.
One final step that the researchers add is to further reduce the number of connected components. They do this by trying to connect connected components. For each pair of connected components, starting with the largest, they pick a pair of points that are relatively close together and then run a randomized path planner on them with a timeout for failure. This is done several times for each pair, and if a pair can be connected, they are joined into one.
In the path planning stage, the researchers attempt to connect the initial and the final configurations to the same connected component using a simple path planner, and upon failure of that, a randomized walk.
The model that the researchers use consists of a robot arm with ten degrees of freedom. Their results show that this algorithm outperforms simple random path planning in several ways. It is more stable and more likely to find a path if it exists. It is also faster in the path-planning stage. For large numbers of nodes, the preprocessing stage is also faster. I suspect this is due to the fact that during the enhancement stage, the percentage of non-conflicting nodes sampled increases.
The algorithm seems very reasonable and efficient. The results show a definite improvement over the straight-forward randomized path planning.
The preprocessing stage is broken into four steps. The first step generates random configurations of the robot over the free configuration space from a uniform distribution. It does this by essentially generating a node that draws each degree of freedom from its allowed range, then testing for collision with obstacles and self-collision. The step repeats until N (an input parameter) nodes have been created. The second step connects the nodes created in the first step using a simple planner. The simple heuristic of nodes closest to each other using some metric of the C-space having a greater chance of being connected is employed. Again, an input parameter K dictates the number of closest nodes checked for connection. The third step attempts to enhance the "difficult" regions of the C-space. "Difficult" regions are defined as narrow parts of the C-space and the paper presents a heuristic to find them, but points out that it is not a perfect heuristic and suggests it is an area for improvement. Generally speaking, the heuristic employs a certain measure of difficulty of a configuration. M (another input parameter) nodes are created according to the heuristic and added to the collection and are attempted to be connected to the existing nodes. The last step attempts to deal with produced networks that are not completely connected. It selects two components, starting with the largest, selects a node from each that are close to each other, and tries to connect them. If successful, the components are merged. If not, another pair of nodes is considered. This process occurs within some time bound, avoiding getting stuck.
This reading, entitled "Sensorless Manipulation Using Transverse Vibrations of a Plate", describes a method of manipulating parts so as to place them into desired orientations for ease of automated assembly. The paper first describes existing devices used for this task, most of which involve using mechanical filters or specially designed trays to pick out only those parts which are in the desired orientation. The drawbacks of these devices are pointed out, most notably the need to redesign the hardware (i.e., the filters or traps) for each specific part geometry.This received a (low) "5". My comments to this student were that it is missing discussing of force fields and associated analysis but is otherwise well written and cohesive. In the future, reading reports should contain a more complete technical summary.The method described in the paper uses a vibrating plate to align the parts, instead of mechanical filters or traps. Basically, a flat plate is vibrated such that nodes are set up at various locations on the plate. Due to the vibrations, a planar part on the plate's surface will be drawn to a node and will even change orientation to line up with the node. The locations and curvatures of the nodes are determined by the frequency of oscillation, the method of vibration, and the location of clamps at the edges of the plate. The paper then goes on to describe how any planar part can be placed into any orientation simply by changing the location and orientation of the nodes produced by vibrating the plate. This can actually be done via software, by controlling clamps on the edges of the plate as well as the frequency of oscillation. While a device (and the necessary software) to perform such a task was not yet realized by the researchers, they were able to accurately predict the final orientation of a part given a specific configuration of clamps and vibration frequency.
While the conclusions made by the paper and the work done by the researchers may seem trivial at first, they actually have great potential. A device that could position a tray of parts into any desired orientation, regardless of the shape of the part, without hardware redesign, could make automated assembly much less expensive. However, even after reading this paper, I was not entirely convinced that such a device could be realized. While the authors describe how this could be accomplished, it still seemed to me that actually designing such a device to be as reliable as mechanical traps or filters would be rather difficult.
Here's my sample reading report:
This paper describes a novel method for feeding planar parts based on the fact that parts resting on a vibrating plate will align to a node of the vibration. The vibrating plate is treated as producing a force field which acts on the part; this provides a model which can be used for simulation and analysis of part behavior. For simple force fields, the authors describe conditions for determining the possible rest configurations of a part. For the more general force fields that arise in practice, they use numerical simulation to determine rest configurations. Based on Goldberg's sensorless grasp plans and the actuator array plans by B\"ohringer, et al.\ and Will and Liu, they suggest that sensorless plans can be automatically generated that bring a part from any initial configuration to a single goal configuration.They have done an experimental implementation in which the nodes of the plate for different vibration frequencies are experimentally measured, and the force field is assumed to grow linearly with distance from the node. They report that their simulations with this force field closely match experimental results, and demonstrate an alignment plan which takes a triangular part from two different initial orientations to a single goal configuration.
This paper is a good example of developing a model for a physical process and making use of that model to accomplish a task. Although there are many elements lacking from an ideal and complete theory that maps directly into a practical experimental implementation (an admittedly lofty goal), they present the basic analysis and lay out directions for further work. Their problem is well motivated and shows promise of developing useful results.