A Big List of Things that Minds Do
(always incomplete!)

Designing "functional sketches" of cognitive architectures and finding ways to build them by piecing together smaller goal-directed problem solvers is the next big challenge in artificial intelligence.  These are the kinds of functions that we will need to implement if we are to construct a machine with human-level intelligence.  The important thing is that we design our AI systems functionally, and don't worry too much at first about finding the best way to serve those functions.  Eventually, every function will be served in multiple ways, resulting in extremely robust and resourceful AI systems.

Simulate a mental model of some event
Maintain a description against a changing world
Matching descriptions
Generate examples
Deal with conflicts between agents
Retrieve past experience from memory
Optimize a solution method
Anticipate what will happen next
Choose between alternatives
Determine the identity of an object
Repair broken knowledge
Find an incorrect assumption
Make new assumptions
Construct a solution to a method
Use a method you already know
Combine two related methods
Handle a problem solving impasse
Debug the method you were using
Determine the obstacle that in your way
Reformulate your description
Reformulate by changing to another object
Reformulate by switching from one pronome in a paranome to another
Reformulate by adding or removing constraints
Reformulate by changing the theory you are operating by
Blame the method you were using
Try a better method
Learn more about the method by trying it in other situations and on other objects
Change some parameter of the method, like trying it harder or more smoothly
Modify the conditions of execution of the current method
(makes easier to abandon that method)
Get angry in the hope of making a big change in your state
Try again tomorrow in the hope of melting the assumptions that are blocking you
Try to recall a related impasse and do what you did then
Try to find another person who has the required skill and learn from them
Give up solving it yourself, try to find another person and pay them to solve the problem
Give up solving it yourself, try to find other people to help you
Describe the situation using language machinery in the hope of a grand reformulation
Try to explain the model you are operating by to yourself in the hope of seeing a flaw
Abandon this problem entirely
Learn to stay away from problems of this nature
Recognizing something
Objects
Situations
Plans
Motivations
Credit Assignment
Learning
Uniframing
Accumulation
Construct a plan
Generate possibilities
Match two descriptions
Gather resources in preparation for an act

Pushpinder Singh push@mit.edu [ MIT Media Lab | MIT AI Lab ]

This page was last updated on 10/01/98.