Naive Problem Solving and Naive Mathematics
Working Paper
AI problem solvers have almost always been given a complete and correct axiomatization of their problem domain and of the operators available to change it. Here I discuss a paradigm for problem solving in which the problem solver initially is given only a list of available operators, with no indication as to the structure of the world or the behavior of the operators. Thus, to begin it is "blind" and can only stagger about in the world tripping over things until it begins to understand what is going on. Eventually it will learn enough to solve problems in the world as well as if it the world had been explained to it initially. I call this paradigm naive problem solving. The difficulty of adequately formalizing all but the most constrained domains makes naive problem solving desirable. I have implemented a naive problem solver that learns to stack blocks and to use an elevator. It learns by finding instances of "naive mathematical cliches" which are common mental models that are likely to be useful in any domain.