My short story
Panayiotis Kamvysselis (pkamvyss@mit.edu)
http://web.mit.edu/pkamvyss/www/
1/15/1998
The following summarizes in prose my technical background and education to date. The second section lists some of my activities.
1. Academic background
Even
though I had hacked on a Commodore 64 while my family was in
Greece, my interest in computers began in earnest during high
school in France, where my family had moved to when I was 15.
Students were required to have a programmable calculator for use
in their scientific classes and I was fortunate enough to acquire
the HP-48SX, the best hand-held scientific programmable
calculator at the time. Unsatisfied with the slow execution speed
of code written in the calculator's high-level language, I spent
many free moments between classes--and even some during the less
exhilarating ones--to learn assembly for the Saturn, the
calculator's micro-processor. Unfortunately the calculator is not
intended to be programmed in such a low level by users. I
discovered however that it was possible to encode a program as a
graphical object and then execute it using an undocumented system
call reserved for technicians. Now the way was open to the few
hundred programs that I wrote during my high school years in
France. I wrote: a full-featured 3D-function renderer; games such
as a Tetris and a naval battle for two calculators communicating
through their infrared ports; a text editor with custom
characters and pictures; audio wave playback software so that the
calculator said "bonjour" when turned on; a drawing
program that used flickering to simulate shades of gray on the
monochrome display; interrupt drivers that trapped keypad events
such as "reset memory" and executed custom code;
programs that allowed using the infrared port of the calculator
to open some cars equipped with infrared-operated keys (radio
transmitters eventually replaced them), etc. Seeing my
enthusiasm, my teachers in France were very kind and donated a
computer that I took home to interface with the calculator.
While a Freshman at Tufts University I got interested in robotics. Professor Haralambos Doumanidis hired me to create a 3D-scanner program for his "Scan Welding" process, which is a way of printing in three dimensions. Using C and the Macintosh toolbox I wrote a complete Macintosh application to integrate a laser, a camera and a turning table for the project. My work was subsequently used as the basis of several of Prof. Doumanidis' graduate students. I also wrote a programmable autonomous robot simulator that Professor Doumanidis used in one of his classes to test student code before execution on real robots.
During
the summer 1995 I pursued my robotics interests in my first VI-A
assignment at IBM's Watson Research Center. I worked in the
medical robotics group headed by Dr. Russell Taylor. My task was
to calibrate LARS, the laparoscopic robot system IBM had built in
collaboration with Johns Hopkins medical school. I realized that
the expensive calibration procedures used for other robots were
unnecessary. Taking advantage of the "remote center of
motion" design of the robot, my calibration method achieves
sub-millimeter accuracy by using the robot itself as a measuring
device rather than relying on expensive additional hardware. In
addition, it is completely autonomous, quick, reliable and can be
performed even by inexperienced users. My experiments with the
calibrated robot further led me to the discovery of a major
design flaw that was subsequently corrected in all of the eight
manufactured robots. The calibration procedure is still used by
the Johns Hopkins team for calibrating their LARS robots, which
are presently used for liver cancer treatment.
In the
summer of 1996 I worked for Dr. Kenneth Salisbury of the MIT AI
laboratory, on haptic interfaces. I was interested in integrating
visual and haptic perceptions on the computer to simulate the
feeling of textures such as sandpaper using the Phantom haptic
interface. The results were encouraging, but Dr. Salisbury left
MIT and I chose to start working on something different for my
M.Eng. thesis.
Professor
Horn's machine vision class was instrumental in focusing my
interest in robot vision. I enjoyed the mathematics involved and,
more specifically, I was intrigued by the fact that vision, such
a fundamental robotics problem, is still a long way from being
totally understood. For the final project of the class I
implemented in Java a shape-from-shading algorithm that recovers
3D shape from a single image of an object. The user can
interactively select regions of interest for shape recovery and
once the algorithm converges, the user can move the light source
and the program re-computes the new shading in real time.
I recently took Professor Jordan's class in neural
networks and became very interested in probabilistic approaches
to robot vision and machine understanding. It seems much more
promising to try to understand intelligence as a collection of
neurons interacting with each other in non-deterministic ways
rather than high-level procedural abstractions. It is hard to
believe that we each have inside our head anything resembling an
expert system. It is more plausible that, instead, we understand
the world and in particular mechanical devices, in a highly
neural fashion. With Paul Viola and Randall Davis of the MIT AI
Lab we have begun work in computer understanding of mechanical
devices in a probabilistic/neural framework. Initially, I have
demonstrated an incremental estimation-maximization algorithm
that correctly segments images obtained from the moving wheels of
a mechanical clock, which will constitute the basis of my M.Eng.
thesis. I would like to pursue this line of research by having
the computer propose alternative clock designs.
Computers have historically played little role in design, an activity reserved for people. Thomas Stahovich in his Ph.D. thesis at the MIT AI Lab showed that it is possible for computers to abstract an engineering sketch to a multitude of different working engineering designs. His approach is based on abstracting the configuration space of the sketch in question and iteratively changing some parameters until a working simulation is obtained. I propose to start with a working mechanical device--for example a clock--and have the computer propose alternatives to its design by looking at it through a camera and by asking the user some questions. If a computer can do that using solely neural networks, it would have "understood" in a certain extent how the clock works. My proposal can be summarized in the following sentence: replace "search and simulate" by "learn and estimate" in machine understanding of mechanical devices.
MIT has resources that could be of enormous
assistance in my task. Paul Viola is also interested in
probabilistic understanding versus traditional AI. Randall Davis
has a broad background in expert systems and his advice on what
works and what doesn't would be invaluable. Berthold Horn is
world renown for his expertise in vision systems and he could
play a pivotal role in my thinking. The Learning and Vision group
at the AI lab is made up of people with very similar interests.
The MIT AI Lab as a whole has been my home for the past few years
and the people there have always been wonderful in both
criticizing and appreciating my work. Finally, Ford Corporation
has expressed interest in investing in work at the lab that
encompasses novel design techniques of mechanical devices as
Prof. Davis suggested to me.
2. Extra-curricular activities