The invention is a way of getting computers to behave intelligently to satsify goals. It is known as planning as modeling because it is based on the idea that planning and modeling are closely linked: planning is really a special case of modeling.
Posted by Paul Almond under Science & Technology
There are two main problems in artificial intelligence (AI). The first, modeling, is using a machine's experiences to construct a model of the world which can be used to make predictions and determine the likely results of various outputs being made. The second, planning, is making use of this model to plan appropriate behavior to satisfy goals. The tree search performed by chess algorithms is an example of this sort of planning process, although a chess program generally has the model provided to it by humans.
Planning as modeling is based on the idea that planning and modeling are very closely linked: in fact, planning is a special case of modeling. The modeling system does almost all of the processing involved in planning. As far as the modeling system is concerned, no distinction is made between inputs and outputs. The modeling system just "sees" a pattern of previous input and onputput events and is required to make probabalistic predictions of the values of particular future input or output events on demand. In the modeling system, no distinction is made between the outside world and the internal workings of the AI system itself: as far as the modeling system is concerned, both are just part of the world that causes inputs and outputs to occur and its job is to make probabalistic predictions about input/output events on demand.
An evaluation function is continually applied to recent inputs to obtain a "score" indicating the desirability of the current situation. This score is continually passed to the modeling system as an input so that, as far as the modeling system is concerned, the evaluation function score is just another one of the many input events occurring over time. This means that the values of the score will form part of the history of inputs and outputs used to make probabalistic predictions of future inputs and outputs and the modeling system can be requested to provide a probabalistic prediction of a future input of the score - and therefore a future value of the score - without any special processing in the modeling system.
When an input occurs with some value the modeling system is informed about it so that it can modify its predictions accordingly.
When an output is to occur the modeling system is actually used to generate the output. For each possible value of the output a simulation of the effects of making the output with that value is conducted by informing the modeling system that the output has occurred with that value. A probabilistic prediction of a future input corresponding to what will be one of the inputs of the evaluation function score is requested and this is an indication of the desirability of making the output with that value. The act of informing the modeling system that the output has occurred with that value is then undone. The output value which causes the best score expectation is made permanent: the modeling system is informed that the output has occurred with that value and the output is sent to the outside world and THAT IS IT. There is no need to run any "tree search" or similar process. There is no need to try to construct a complex planning process which will capture a high "level" of abstraction in motivation and goals. The modeling system does not distinguish between events inside the system and events outside the system, so the simple act of informing the modeling system that an output has occurred and requesting a prediction of the results automatically implies a prediction of the effects of that output including the expected behavior of the AI system itself after making the output. In a further refinement of the system, some of the system's outputs can be designated as special prioritization control outputs and sent to the modeling system as control signals which are used to control its focus and deal with the carpet texture problem.
Planning as modeling does have one disadvantage. It is not a general AI solution. It does not attempt to solve the modeling problem. To make planning as modeling work you would still need an excellent modeling system. The planning ability of the system will only be as good as the modeling ability, so that the system will plan with whatever degree of abstraction, efficiency and sophistication is afforded by its modeling system. In a way, the prediction of behavior is being used to plan behavior, so for the AI system to behave with a given level of sophsitcation the modeling system must be capable of simulating a system with that degree of complexity. The invention should therefore be of most interest to organizations that regard themselves as strong in this area.
There is, however, an enormous advantage of planning as modeling. It is the same as the disadvantage: the degree of sophistication, efficiency and abstraction in the planning process is the same as that in the modeling process. Solving one problem automatically solves the other. With planning as modeling, once you have a strong modeling system you automatically have a strong planning system. Also, by using prioritization control outputs to control the modeling system, the modeling system, by directing planning can effectively improve itself.
I suggest that this is the correct way to do AI. It is natural that planning and modeling should be combined. The traditional separation of modeling and planning functions is artificial and much abstraction will be lost along the way. Planning as modeling may need a particularly sophisticated modeling system to get going, but its ultimate potential is far greater than any approach involving the artificial separation of planning and modeling functions.
A provisional patent application has been filed with the US Patent and Trademark Office (Application Number: 60/952490, EFS ID: 202167, Receipt Date: 27 July 2007), followed by a full utility patent application (Application Number: 12181296, EFS ID: 3690562, Receipt Date: Monday 28 July 2008).
A description of planning as modeling is available at www.paul-almond.com/PlanningAsModellingNew.pdf.