Bootstrapping
"Bootstrapping" refers to the process of "growing" an artificial intelligence system from a manually hard-coded base system to a Seed AI. Scene Based Reasoning assumes that the bootstrapping process is split into several phases.
Contents
Bootstrapping Levels
Hand Coding
This is the lowest level of bootstrapping and refers to the development of the Reasoning and Planning algorithms required for the higher bootstrapping layers. Hand coding in TinyCog is performed in SWI-Prolog. All hand coded components of TinyCog are contained in "*.pl" files where the file name does not include "*test*".
Description Logic Terminology
"Terminology" refers to DL TBox concepts and roles defined in DL syntax. "human :< animate and exactly(2,has_parent,human)." is an example of defining the Concept of a "human" as a sub-concept of "animate" with exactly two parents. DL terminologies are defined in TinyCogas part of "*.pl" files or in separate "*.dl" files.
Training Sets
"Training sets" are collection of training data designed and compiled manually with detailed knowledge of the hand coded Reasoning and Planning infrastructure. They are mainly used to provide the system with plans and task decompositions. Training sets can be seen as an equivalent but more efficient way of entering data into the system, compared to hand coding or DL terminologies. Training sets in TinyCog are included in most "test*.pl" files.
Training Domain
"Training domains" are limited simulated environments designed as test cases, test beds or training grounds. Currently the only training domain in development is the Hunter Domain. Training domains allow subsets of the TinyCog system to operate and to "practice" the capabilities (acquired via DL terminology and training sets) within the limits of the domain. Training domains are designed to produce very specific skills in terms of plans, task decompositions, concepts and success statistics. Successfully developed skills may be saved to a file, manually cleaned up and used as a starting point for additional simulations.
Social Training Domains
"Social training domains" include multiple agents and various interaction options including collaborative action and simplified natural language communication with the intention to facilitate the development of social behavior. We expect for example that the Hunter Domain agents will develop strategies to hunt in packs and to use the appropriate speech acts in order to involve peer hunters in the execution of social plans.
Real World Domain
"Real world" scenarios expose the system to unforeseen input. Real world inputs are recorded and may be used as training domains afterwards.
Degrees of Freedom
- Hand coding, DL terminologies and training sets are deterministic and allow for zero freedom to the TinyCog system. The results of training domain simulations are not deterministic anymore, but they are designed to produce a system state of limited complexity in order to facilitate manual cleanup of the learned plans, decompositions and concepts.
- Social training domains (the Hunter Domain in particular) may yield completely unforeseen results due to the recursive interactions between multiple agents. We expect that agents will develop widely varying tactics when starting with different parameter sets (for example skills and social rank).