Implied information, background knowledge, ellipsis, coreference, figurative speech, ambiguity; these are a few of the immense challenges a natural language semantic system faces. And yet, humans process language in real time every day with very little misunderstanding. How can a computer do the same?
By constraining the problem. Sixty six million and some odd amount of
thousands is, indeed, a large number. Two hundred and thirty five
billion is much larger. These two numbers represent the number of
choices an computational semantic system faces for a medium size and a slightly larger
size problem. Come across a truly long sentence and the numbers soar
past
. And that only to determine basic semantic dependencies;
add in ellipsis and coreference resolution possibilities and they
increase even faster. Such exponential growth in the size of
the problem must be constrained if serious work is to be accomplished.
In a ``blocks'' world, CSP techniques and solution synthesis are powerful mechanisms. Many ``real-world'' problems, however, have a more complex semantics: constraints are not ``yes'' or ``no'' but ``maybe'' and ``sometimes.'' In computational semantics, certain word-sense combinations might make sense in one context but not in another. We need a method as powerful as CSP for this more complex environment. Our proposal is to 1) use constraint dependency information to partition problems into appropriate sub-problems, 2) combine (gather) results from these sub-problems using a new solution synthesis technique, and 3) prune (hunt) these results using, not constraint satisfaction, but branch-and-bound techniques. These three issues are discussed next. Following this is a description of how a means-end planner for text generation can be implemented using HUNTER-GATHERER and constraint satisfaction techniques. The section concludes with a discussion of the place of natural language semantics in the HUNTER-GATHERER control paradigm. In particular, it will be argued that natural language semantic problems can be naturally broken into relatively independent sub-problems. These are exactly the types of problems that benefit most from HUNTER-GATHERER.