The Problem
The real problem is not whether machines think but whether men do.
--B. F. Skinner
When working with the AIBO through this project, we notice that there are many limitations, mainly the vision and precise motion. We tried to come out on ways of how to solve the problem. Some, we have successfully solved while others, we are still working on it or we might not even have a clean solution due to our limited knowledge. Any suggestion to solve our problems we are facing is most welcomed.
The Vision Problem
Seeing is believing; even if some things have to be believed in order to be seen
-- Unknown
To be able to follow a line, first you have to be able to see it. Yet what might be a line might seem to be a blob to the AIBO due to insufficient data or due to way we program the AIBO to look. For example, we might be only looking at a short section of the line or the line might be too close to us (which appear to be too big in the screen) hence appearing as a blob.
Apart from unable to detect the object of interest, the AIBO might place object inaccurately in the local map which will affect calculation. This is due to the hard decision problem of projecting images to ground relative to the AIBO. It affects our ability to calculate movement.
The Motion Problem
From each according to his ability, to each according to his need
-- Quote by Karl Marx
The AIBO cannot make precise movement. When we program it to move forward, it will deviates away from its course. The problem becomes more apparent when we asked it to strafe left or right. The only solution to the problem seems to be to walk a few steps, readjust the AIBO through simple geometry before walking again. Look at the diagram below. Given that the AIBO is facing the direction of the green arrow. We want to align it to be parallel to the orange line. Using Tekkotsu, we first search if the top point of the orange line is to the right of the AIBO. If it is, to obtain the orientation of the line B, we can find the angle by using PI – theta. Thus we can program the dog to reposition itself. On the other hand, if the top point of the orange line is to the left of the AIBO, we could just use the orientation as stated by Tekkotsu.
The Diagram
|
|
Yet in reality this does not work.
Firstly, vision is not accurate. This cause the line to be not accurate in the local map, hence the calculation of A and B will not be accurate enough for us to position the dog parallel to the line but it should not be a big problem as we can tolerate a malign of error.
What give a bigger problem is that reposition is not accurate and can cause the dog to lose sight of the line it is following. Or it repositions itself to think that it is following another line. We do not know of a neat way to solve the problem as each dog will behave differently in its walk. Even a similar dog will walk differently at different instances! Furthermore, different ground surfaces will result in different walking behavior of the dog.
In the end, we found that just walking straight is in fact better than trying to reposition in most situation.
Project by Elizabeth M. Lingg and Zhengheng Gho