For years I've been thinking about writing a program that could learn from user-provided input and eventually hold some kind of (hopfully intelligent) conversation. But every time I get stuck right at the beginning: what would the be the goal of the program? Me reasoning is thus: a human being has certain motivations for doing things like hunger, cold, loneliness, etc. It starts out by crying and learning that when it cries it gets food or a hug or a blanket. People talk to it and it learns words. With those words it can specify that it didn't want the blanket it wanted food and specifically the kind it had yesterday, what was it called? So it goes on learning, to satisfy its desires, its goals. The goals don't have to be completely clear to the subject. It might need a certain amount of sugar and another amount of water. It has learned that when it eats a chocolate icecream it feels better, but it doesn't specifically know that that is because it has just (maybe partially) satisfied a goal. I want to take this analogy and put it in a computer program. But I don't know what kind of goals to use. (Computers don't need food). It has to be simple. Any ideas? Please Register or Log in to view the hidden image!