Goto

Collaborating Authors

 Search


Analysis of the alpha-beta pruning algorithm

Classics

Dept. of Computer Science, Carnegie-Mellon University. "Many game-playing programs must search very large game trees. Use of the alpha-beta pruning algorithm instead of the simple minimax search reduces by a large factor the number of bottom positions which must be examined in the search. An analytical expression for the expected number of bottom positions examined in a game tree using alpha-beta pruning is derived, subject to the assumptions that the branching factor N and the depth D of the tree are arbitrary but fixed, and the bottom positions are a random permutation of ND unique values. A simple approximation to the growth rate of the expected number of bottom positions examined is suggested, based on a Monte Carlo simulation for large values of N and D. The behavior of the model is compared with the behavior of the alpha-beta algorithm in a chess playing program and the effects of correlation and non-unique bottom position values in real game trees are examined."


An approach to the frame problem, and its implementation

Classics

The frame problem in representing natural-language information is discussed. It is argued that the problem is not restricted to problem-solving-type situations, in which it has mostly been studied so far, but also has a broader significance. A new solution to the frame problem, which arose within a larger system for representing natural-language information, is described. The basic idea is to extend the predicate calculus notation with a special operator, Unless, with peculiar properties. Some difficulties with Unless are described.


And-or graphs, theorem-proving graphs, and bi-directional search

Classics

And-or graphs and theorem-proving graphs determine the same kind of search space and differ only in the direction of search: from axioms to goals, in the case of theorem-proving graphs, and in the opposite direction, from goals to axioms, in the case of and-or graphs. Bidirectional search strategies combine both directions of search. We investigate the construction of a single general algorithm which covers unidirectional search both for and-or graphs and for theorem-proving graphs, bidirectional search for path-finding problems and search for a simplest solution as well as search for any solution. We obtain a general theory of completeness which applies to search spaces with infinite or-branching. In the case of search for any solution, we argue against the application of strategies designed for finding simplest solutions, but argue for assigning a major role in guiding the search to the use of symbol complexity (the number of symbol occurrences in a derivation).


Relational Descriptions in Picture Processing

Classics

"In this paper we describe work on the recognition by computer of objects viewed by a TV camera. We have written a program which will recognize a range of objects including a cup, a wedge, a hammer, a pencil, and a pair of spectacles. A visual image, represented by a 64.× 64 array of light levels, is first partitioned into connected regions. These regions are chosen to have well-defined edges.Having chosen the regions, the program then computes properties of and relations between regions. Properties include shape as defined by Fourier analysis of the s–ψ equation of the bounding curve. A typical relation between regions is the degree of adjacency.Finally, the program matches the actual relational structure of the regions of the picture with ideal relational structures representing various objects, using a heuristic search procedure, and selects that object whose relational structure best matches the actual picture."In B.Meltzer and D.Michie (Eds.), Machine intelligence 6. New York: Elsevier, 377-396



A Logic of Actions

Classics

One of the central principles upon which intelligent devices seem to operate is that of maintaining internal models of their external environments. How difficult this is, depends upon both the complexity of the model and its method of representation. In particular, it is usually easy when the problem is posed in the classical heuristic search paradigm, and the data structures used to represent static configurations of the puzzle are relatively unproblematic (arrays, lists, and so on). The lack of side-effects reflects the simplicity of the physics which such models embody. This limitation to elementary forms of interaction is not, of course, intrinsic to the heuristic search method; but when more complex models are constructed it becomes less trivial to pursue the consequences of performing an action. This approach is more general than the heuristic search method (but the latter -- when it has sufficient expressive power -- wins at present by its computational advantage). Assertions mentioning several different situations can then be used to describe dynamical laws which move us from one situation to another. But in some ways the resulting sharp separations between states of affairs are an embarrassment. For if we distinguish two situations s1 and s2, then from the fact, if such it be, that a predicate p is true of Si, nothing whatever follows concerning s2. And this is true even when s2 is directly associated with sl. Say s2 results from s1 by the performance of some action: s2 do (a, si) then no matter how remote -- speaking intuitively -- the connection between the property p and the action a, it still does not follow that p is true of s2. If we want it to so follow we must state this explicitly. Now, unfortunately, there are innumerable facts which might remain unchanged when actions are performed. So instead of writing a law of motion' in the form A(s) B(do(a, s)) where A and B are fairly short expressions, we are apparently obliged to list systematically all conceivable facts which are not changed. So that the law looks more like (Ci(s)& Ci(do(a, s))& & C„(do(a, s))&B(do(a, s)) for some very large n. This works for small problems (such as the familiar hungry anthropoid), but these are usually better formalized in the heuristic search paradigm anyway.


Bi-Directional Search

Classics

Ph.D. dissertation "Bi-directional and heuristic search in path problems" (Stanford, Computer Science, 1970) summarized in this article in Machine Intelligence 6 (1971).In the uni-directional algorithms, the search proceeds from an initial nodeforward until the goal node is encountered. Problems for which the goal nodeis explicitly known can be searched backward from the goal node. Analgorithm combining both search directions is bi-directional.This method has not seen much use because book-keeping problems werethought to outweigh the possible search reduction. The use of hashingfunctions to partition the search space provides a solution to some of theseimplementation problems. However, a more serious difficulty is involved.To realize significant savings in bi-directional search, the forward andbackward search trees must meet in the 'middle' of the space. The potentialbenefits from this technique motivates this paper's examination of thetheoretical and practical problems in using bi-directional search.


Studies in the completeness and efficiency of theorem-proving by resolution

Classics

Inference systems Τ and search strategies E for T are distinguished from proof procedures β = (T,E) The completeness of procedures is studied by studying separately the completeness of inference systems and of search strategies. Completeness proofs for resolution systems are obtained by the construction of semantic trees. These systems include minimal α-restricted binary resolution, minimal α-restricted M-clash resolution and maximal pseudo-clash resolution. Certain refinements of hyper-resolution systems with equality axioms are shown to be complete and equivalent to refinements of the pararmodulation method for dealing with equality. The completeness and efficiency of search strategies for theorem-proving problems is studied in sufficient generality to include the case of search strategies for path-search problems in graphs. The notion of theorem-proving problem is defined abstractly so as to be dual to that of and" or tree. Special attention is given to resolution problems and to search strategies which generate simpler before more complex proofs. For efficiency, a proof procedure (T,E) requires an efficient search strategy E as well as an inference system T which admits both simple proofs and relatively few redundant and irrelevant derivations. The theory of efficient proof procedures outlined here is applied to proving the increased efficiency of the usual method for deleting tautologies and subsumed clauses. Counter-examples are exhibited for both the completeness and efficiency of alternative methods for deleting subsumed clauses. The efficiency of resolution procedures is improved by replacing the single operation of resolving a clash by the two operations of generating factors of clauses and of resolving a clash of factors. Several factoring methods are investigated for completeness. Of these the m-factoring method is shown to be always more efficient than the Wos-Robinson method. The University of Edinburgh


REF-ARF: A system for solving problems stated as procedures

Classics

This paper describes an effort to design a heuristic problem-solving program which accepts problems stated in a nondeterministic programming language and applies constraint satisfaction methods and heuristic search methods to find solutions. The use of nondeterministic programming languages for stating problems is discussed, and ref, the language accepted by the problem solver arf, is described. Various extensions to ref are considered. The conceptual structure of the program is described in detail and various possibilities for extending it are discussed. The use of the input language and the behaviour of the program are described and analyzed in sixteen sample problems.


Planning and robots

Classics

This paper is a survey and discussion of research work relevant to the task of constructing some kind of reasoning robot. The emphasis is entirely on the organization of the reasoning processes, in particular planning, rather than on hardware. In practice the reasoning would most probably be carried out within a digital computer. My objective is to clarify the relationship between some superficially rather disparate approaches to this task, and simultaneously to indicate what seem to be the key problem areas. No new experimental results are presented, but the approach to the subject which I have adopted is a consequence of earlier experimentation with a simple computer simulation of a robot (Doran 1968a, 1969).