**************************************************
TinyCog
Minimalist Cognitive Architecture
(c) 2015 Frank Bergmann (fraber@fraber.de)
Licensed under GPL V3
**************************************************
About TinyCog
-------------
See http://tinycog.sourceforge.net/ for documentation.
TinyCog is designed as an easy to learn cognitive
architecture for academic use. It only consists of a few
thousand lines of code.
TinyCog License
---------------
All files are licensed under the GPL V3 unless otherwise
specified. Please contact the author for other licensing
terms. The GPL V3 explicitly disclaims any warranty for
the AI gone rogue :-)
TinyCog Training
----------------
Please contact fraber@fraber.de for remote classes and
other TinyCog related training.
Getting Started
---------------
1. Install SWI-Prolog V6.6 or higher from
www.swi-prolog.org/download/
2. On Windows just double-click on any *.pl file.
All *.pl files contain some testing procedures, so
they will write out some - more or less - reasonable
messages.
Directory Structure
-------------------
The directory structure resembles the internal TinyCog
structure. There is the "core" and there are application
"domains" (=example worlds):
- core: TinyCog Core
- test: Tests for TinyCog Core
- http: Auxillary files for Web server(s)
- algebra-domain: Not yet working - under development
A domain of algebraic expressions
to be simplifed by TinyCog.
- hunter-domain: Partially working - under development
A domain of "hunters" chasing "deer"
with a Unity3D client
TinyCog Core
------------
The core of TinyCog is shared across all domains.
It consists of the following "modules" that are designed
to be imported by other files.
The modules are listed in the order of their dependency
from most basic to most advanced:
- strlib.pl: Auxillary string prediates
- auxil.pl: Auxillary predicates
- scene.pl: Storage back-end for scenes and objects:
Uses tuples similar to the SWI-Prolog
implementation of OWL (semantic Web)
- dl.pl: "TinyDL" Description Logics:
Minimalist DL system based on the ideas
of FLEX (successor of BACK). Uses scene.pl
for it's TBox and ABox representation
- hanoi_noplan.pl: Hanoi Towers test for dl.pl + scene.pl:
Plays hanoi using a built-in planner
(not the full-blown planner.dl)
- planner.pl: Simple Deterministic Planner:
Builds plans (linked scenes) based on the
"actions" available for agents
- hanoi.pl: Hanoi Towers test for planner.pl:
Defines a single "action" and simple
proximity measure for hanoi towers
- persgoals: Persistent Goals for Agents:
Defines a portfolio of goals for each
agent that persist between actions and
control the agent's behavior
Hunter Domain
-------------
- hunter.pl Starts the Hunter Domain Web server at
port 5555, where it listenes for REST
calls from the Unity3D client.
Hunter-Sencha Domain
--------------------
- hunter-sencha.pl: HTML5 Test Bed with "Hunter" domain:
Defines "deer" and "hunter" agents on a
1000 x 1000 playing field in order to
test multi-agent plan coordination
Algebra Domain
--------------
- algebra.pl Not working yet