A: NL-Soar is a natural-language modeling system that is based on the Soar cognitive modeling architecture.
Q: Why haven't I heard about NL-Soar before?
A: NL-Soar has not been widely distributed, though it has been documented in various publications. A bibliography of NL-Soar related papers and presentations can be found at this web site. The last publicly available release was in 1997.
Q: How does NL-Soar work?
A: NL-Soar is implemented as a Soar agent. As such, it is run via an interactive Toolkit Command Language (Tcl) interpreter. Utterances (usually sentences) are typed into the system, and the system performs incremental, word-by-word processing on the input. As each word enters the system it is stored in an adjustable buffer subject to parameterized decay. As each word is attended to, lexical access is performed for that word to retrieve morphological, syntactic, and semantic information. Each word is then integrated into ongoing syntactic and semantic models of the utterance. Since Soar (and hence NL-Soar) are machine-learning systems, the system can store information about how it processed the utterances, and this knowledge can be brought to bear in the future when processing similar situations. Besides processing language utterances alone, NL-Soar can also perform other Soar-implemented tasks, thus serving as a platform to model language/task integrations.
Q: What languages can NL-Soar currently process?
A: At the present time the released version of NL-Soar is only used to model English utterances. It has also been implemented for French, and the French version may be released in the future as well.
Q: What are the distribution terms and licensing conditions for NL-Soar?
A: As with the basic Soar software distribution, NL-Soar is in the public domain, and is made available AS IS. Carnegie Mellon University, The University of Michigan, The University of Southern California/Information Sciences Institute and Brigham Young University make no warranties about the software or its performance, implied or otherwise.
Q: What hardware/software platform is NL-Soar available for?
A: The current version of NL-Soar is based on version 7.3 of the Soar system, and also involves much application programming in C and Tcl. At the present time, NL-Soar will be supported under the Solaris operating system (later versions, e.g. 5.8). Other ports are perhaps possible, though these haven't been tried yet. The system also requires a version of Tcl/Tk which is compatible with Soar 7.3; at the current time Tcl/Tk 8.0 is supported in Soar 7.3
Q: How do I install NL-Soar?
A: Follow the instructions in this web page.
Q: How does this release compare with the previous one?
A: First, this version is completely compatible with previous ones. Secondly, this version introduces processing based on information supplied by the lexical database called WordNet. This includes: the Morphy component for morphological (base form) reduction, verb frame subcategorization for syntactic information, and lexical semantic word senses for semantic processing. Coverage is vastly improved over previous versions, although there are still several bugs to be worked out.
Q: How can I learn how to run NL-Soar?
A: Follow the tutorials on this web page for a basic introduction.
Q: What do all these terms mean?
A: A glossary of basic NL-Soar-related terms can be found here.
Q: Where can I find system documentation?
A: There is much Soar documentation at the the Soar project web pages, and CMU also contains (somewhat outdated) web pages describing NL-Soar.
Q: What does NL-Soar currently do, and how stable is NL-Soar?
A: A summary description of past and current functionality can be found on this web page. There are several areas where more work needs to be done. Still, the system is usable for pedagogical purposes and prototyping.
Q: What are future plans for NL-Soar?
A: NL-Soar is very much a work in progress, and therefore many different directions are being pursued, which will eventually be released.
A: Of course, NL-Soar is based on work created by people involved in the Soar project; see the Soar project web pages for more information. The NL-Soar system has been developed principally by groups at Carnegie Mellon and Brigham Young University. Principal developers have included: Jill Fain Lehman, Richard Lewis, Greg Nelson, Robert Rubinoff, Deryle Lonsdale, Hanming Ong, Mark Smith, Julie Van Dyke, Nancy Green, Nate Blaylock, Anton Rytting, Tim Richards, William Taysom, Mike Manookin, Rebecca Rees, Aric Bills, Merrill Hutchison, and current members of the BYU NL-Soar Research Group.
Q: What if I find bugs with NL-Soar?
A: First, check the functionality description to see whether it's a known bug or limitation. If not, send a short bug report to lonz@byu.edu. Please include a (non-inflammatory!) description of the utterance used, the type of error encountered (e.g. lexical access, morphological, syntactic, semantic, system, etc.) and any other information that might be helpful.
Q: How can I volunteer to help?
A: Send comments, suggestions, etc. via email to lonz@byu.edu.