UserPreferences

Week2 (Due 9/13)


CS 372 (Artificial Intelligence) Fall 2004

Week2 (Due 9/13) Reactions & Thoughts

Ioana Butoi

The first time I interacted with agents was at a higher level. I started with direct control brains but I soon moved on to writing neural network based brains. It is interesting now to look from a much simpler perspective at the wall following behavior. The program I wrote is similar to the one based on the grid environment, but it came from a different approach. I was thinking more real life instead in terms of an abstraction.

It is interesting now to look at things that I have already used and go back to a lower level. The same thing happened with neural networks. When I was introduced to neural networks I did not fully understand them, but as I used them things started to make sense. Until this week I saw networks in a global way, but now I get to look at them from the basic unit building up.

Andrew Cantino

After reading about Python and Pyro, I'm very excited to get to work with the robots! Pyro looks easy-to-use and powerful and I'd like to see what I can do with it, especially with the computer vision features. I don't know if we're going to get into computer vision or not? I took a year of computer vision at Swarthmore last year, so it would be fun to get to use it on the robots.

Learning about the Stimulus-Response robots this week reminded me of a project that I worked on a while ago. A few years ago, I played an online MUD -- a text-based adventure game. I eventually got bored of actually playing it, but I did realize that it would be an excellent challenge to write a bot (a softbot, I guess) that would play it for me. This turned out to be very difficult due to the dynamic and natural language nature of the game. I would classify my softbot as a S-R robot using something resembling the Subassumption Architecture from chapter 2 of Nilsson. It used a stack to store and process 'tasks.' So, for example, if the bot was attempting to explore an area of the MUD world, it's current task might be 'explore.' But if it suddenly found that it couldn't see, it would push a new task on the stack called "get light." The new task would take precedence and the bot would attempt to light a torch so that it could see. Once this task was accomplished, the stack would pop and the bot would go back to exploring.

I got my softbot to perform some basic survival tasks like healing, finding light, and moving around the world using a pre-generated network of interconnected known locations. This was fun, but I eventually stopped working on the project, both because of it's complexity and because I lost interest. It's interesting now to look back and see what parts of AI I was inadvertently exploring. Maybe I'll eventually work more on this old project using techniques that I learn from this class.

Audrey Flattes

Christina Florio

Chapter 2 lead me back to the main question of last week regarding whether or not machines can think. While learning about a robot in a 2-D grid world, I was reminded of a termite program that was discussed last semester in CS361 (Emergence). The termites program is said to be a reflection of how living termites actually work. They were in a 2-D grid and, depending on which version was used, a termite was able to keep track of four or eight of its neighbors, it then performs an action dependent on these results; which is very similar to the S-R agents. This similarity is what lead me back to the thinking question because, it seems to me, that the termite program was able to think and manipulate its “world” according to a set of guidelines, just as live termites, so the programmed termites, then, must be considered thinking machines; then all S-R agents are thinking machines as well. However, I am sure that this conclusion is easily argued because it brings up the following: where is the line drawn between man and machine?

Kathleen Maffei

During class when stimulus-response vehicles were discussed, I was reminded of something I read in Cognitive Science that was also mentioned in the AI book in Chapter 2. Braitenberg’s Vehicles was a very interesting read – I’d recommend it to anyone who’s just looking for something fun.

Braitenberg approaches the issue of artificial intelligence with the idea that the simplicity and/or regularity of certain animal systems are comparable to computing systems. We study animals through observation, and so he considers how it would be if artificially constructed vehicles were observed by people with no idea as to how they work. He presents us with a fictional world in which he constructs very basic vehicles with minimal sensors and actions. His first vehicle begins with one sensor and one motor. The more the sensor detects of something (let’s say light), the faster it moves. Its behavior would seem to indicate that it is at the least alive.

Vehicle 2 has two motors and two sensors, hooked up in one of two different ways. In 2a, the right sensor controls the right motor (and wheel) and the left sensor controls the left motor (and wheel), each moving at a speed relative to how much light is sensed by its sensor (like vehicle 1). With this set-up, if there is, for example, a strong light source to the right of the vehicle, the right sensor will detect more light than the left, so the right motor will move faster than the left, turning the vehicle away from the light source. This vehicle appears to avoid light. Vehicle 2b has its motors and sensors crossed: the right sensor controls the left motor and vice versa. When it detects light to the right, it speeds up the left motor and slows down the right, turning toward the source. It appears to be attracted to the light.

Each succeeding vehicle is slightly more complicated, adding sensors, motors, thresholds and such. The result is that each succeeding vehicle appears to display some more complex sort of behavior, which an uninformed observer might mistake for animal or human qualities. Vehicle 5 actually does perform certain amounts of logic. In the end, Braitenberg demonstrates that some very simple systems can display behavior that can be interpreted as very complex. It’s some interesting food for thought when considering how to approach such a complex subject as artificial intelligence.

Sara McCullough

Tuesday in class we discussed more about what our opinions were on AI, with regard to what everyone wrote for responses last week. My response last week stated that I did not see how we could move on to study AI when we do not even have a solid definition of the word intelligence. I assumed that everything we studied would always go back to the question of how we define intelligence. However, in class last week someone mentioned in response to my thoughts that we do not need a broad, solid definition of the word intelligence. Rather, we just need to understand that we are studying intelligence within a certain scope. This really clarified my ideas and questions. When we are experimenting with stimulus-response agents for instance, we will not be studying intelligence in the scope of self-will or self-realization.

In response to Christina's posting this week, I think it all depends on how you define thinking. If you consider the thought process nothing more than simple rule-obeying, then the termites in the program are thinking. Some might disagree, but I would say that termites in the real world are doing exactly the same thing, just rule-obeying. I don't think that the real-world termite contemplates to itself about where to put the woodchip it picks up. I think that the termite is just following simple rules, or instinct in other words, just as the programmed termite is doing. I think that the rules Christina programmed her termites to obey can be considered one and the same as the instincts of real-world termites. The only difference I see between the termite in the real world and the programmed termite is that I know where the programmed termites instincts come from, but I don't know how to explain the real-world termite's instincts.

William Moss

Karen Pang

Yuna Park

Ben Root

Sandeep Singh

Darby Thompson

After the first week I had many questions about what AI included and what behaviors showed signs of ‘thinking’ and ‘intelligence’. Thankfully this past week I began to understand that it really wasn’t incredibly important that we define these illusive terms. Questions and quotes brought up in class such as ‘Who is calling what intelligent?’ and ‘If the brain was simple enough to understand, we would be too simple to understand it’ were very helpful. I especially liked the concept of the intelligence ‘line’ rather than criteria, and relationship of when the environment is more complex, our actions become simpler. It was also very useful to look at the different stages/types of behaviors that we are going to explore. Understanding the processing of percepts/sensors for a simple reflex agent, model based agent, goal based agent and utility based agent clarified my concept of these behaviors. I also liked seeing the robots again, and am excited to see our ideas put into practice in the simulators and hopefully also with the real robots.