The ProtoAndroid's "forebrain", a collection of High Level Deliberation resources, will be built from the technology winners in the great quest to create true AI. Some of the leading contenders are CYC, KQML, and SOAR.
Many existing resources may prove useful, in given limited-domain contexts, including expert systems, neural nets, etc. provided they address high level behaviors with semantic I/O.
A Case Based Reasoning system specific to the ProtoAndroid is proposed to coordinate the various deliberation resources as well as mediate between High Level Sensory Processing, High Level Task Management, and the Central Coordination Process.
This part of the ProtoAndroid architecture is the most far flung across the Internet and the least real-time in performance.
Appendix- CYC will eventually be available for use by third party intelligent systems using a Functional Interface like the one described below. Thanks are due to David Whitten for documenting CYC for the outside world and to CYCORP for assisting his efforts-
The Functional Interface (FI) of CYC is a set of procedures that can be used by external programs to query CYC for conclusions or general information. It currently consists of twenty-seven operations, with the following having the most general utility: FI-FIND given a name string return the CYC constant having that name FI-CREATE given a name string create and return a CYC constant having that name FI-KILL given a term return a modified knowledge base in which the term no longer exists and any assertions of which it was a component are no longer true FI-RENAME given a constant given a string (new constant name) change the constant's name to the new name and return the new constant FI- ASSERT given a logical formula, given a knowledge base subset produce a modified knowledge base with the formula as an axiom and return a status notification FI-UNASSERT given a logical formula, given a knowledge base subset produce a modified knowledge base with the formula not an axiom (the formula may still be a theorem, i.e., follow from other axioms) and return a status notification FI-JUSTIFY given a (concluded, cached) formula given a knowledge base subset return a list of the cached formula-subset pairs that together justify the previous derivation of the formula as a theorem FI- ASK given a logical formula, possibly including free variables, given a knowledge base subset return a binding list of variables that will make the formula true (optional parameters which can be varied include whether or not to backchain, the desired number of bindings, the clock time allowed for the operation, and how deeply in the search tree to search) FI-CONTINUE-LAST-ASK (no inputs) continue the last call to FI-ASK from the search state where it terminated, looking for (more, new) bindings, and return a binding list (optional parameters which can be varied are the same as those for FI-ASK). This is a new feature, possible because in CYC 10, unlike CYC 9, inference search state is explicitly maintained FI-DENOTATION given a natural language string return a list of CYC constants which (according to the CYC lexicon) constitute possible denotations for the string The present implementation of the FI includes an external telnet server. This means that applications (and users) can telnet directly to CYC, evaluate FI operations, and get the results. Currently, Cycorp has not chosen to publicize any port where this interaction may take place. Cycorp machines are privately owned. This telnet capability of the software is not an invitation to unauthorized access.
Thanks for flying PolyCosmos. Join us again.