Google Search
Wednesday, September 19, 2007

Why "Seeing" is More Than Just Registering an Image

Few would argue against the statement "perception is a key component of artificial intelligent systems". A game-playing agent must "perceive" the game world before choosing a move, while a robot must "see" the real-world in order select a path or construct a motion plan etc. But, the game playing agent needs no special machinery to "see" the game world, and the robot might use a laser range finder to map out obstacles in the real world. So is perception a solved problem? I, and many others, would argue 'no'; at least not when it comes to vision. The following example, highlights some of the complexities of vision:

(Marr, D. 1982 Vision: a Computational Investigation into the Human Representation and Processing of Visual Information. Henry Holt and Co., Inc. pp. 51)

What if I were to tell you that each figure contains three layers? The lowest layer is an outline of a triangle. The middle layer is a collection of solid circles. The top layer is a triangle-like shape, with one curved edge. Which edge is curved, and is it concave or convex? Do you see this shape where no lines exist? (Note that my "lowest" layers are not unique, nor are they fixed. Since there is no overlap their order can be inverted, or they can be compressed into a single layer).



Version Control Systems as Research Tools

For a while, I've been contemplating the use of source code version control systems (such as CVS) as a tool for basic computer science research. This setup supposes that a system will be running some experiments on a set of input data, and that after running all experiments, some text-based report will be generated. The setup further supposes that structural or algorithmic changes (as opposed to parameter changes) will be applied to the software between experimental runs. By keeping the source code and result report under version control, a record of all results will be kept. Additionally, past experiment configurations can be recovered by simply accessing previous versions of the software in the repository. Moreover, since CVS only stores file changes (deltas), the effects of various changes will be immediately apparent; existing GUI or web based tools will literally highlight how each result report changed with each software modification. This could really help/formalize future analysis, and may help justify final results.



08/01/2007 - 09/01/2007  09/01/2007 - 10/01/2007  10/01/2007 - 11/01/2007  

This page is powered by Blogger. Isn't yours?

Copyright © 2007, Adam Fourney