(very low priority beginner question) How to bootstrap inference process?

28 views
Skip to first unread message

Alex

unread,
Feb 14, 2017, 4:52:48 PM2/14/17
to opencog
Hi!

I am continuing to design inference process that can build abstract syntax tree (just some very complex node) from the formalized norms (just some other nodes and links) (my idea about automatic programming / program learning). 

Now I am trying to understand - how to bootstrap inference process? I think that I need to do forward chaining inference (and not backward chaining inference because my result is unknown). I understand that I should define in guile Scheme a lot of Atoms (according to zoo of Atoms http://wiki.opencog.org/w/Category:Atom_Types ) and especially I should define Atoms of type EvaluationLink that creates the root node of my tree and then creates leave nodes and leave links. The question is - having such set of Atoms (Atomspace) - how can I start bootstrap process and how can I read the resulting atomspace in which I hope to see my tree after completion of evaluation process? 

Starter example http://wiki.opencog.org/w/Getting_Started_with_Atoms_and_the_Scheme_Shell is about cog-execute of one specific Link but I need to execute entire Atomspace. E.g. JBoss Drools does this - it loads Knowledge base and then starts forward chaining inference (Rete algorithm) until the process completes.

What about inference rules - are they defined in *.scm files or are they encoded in the CogServer? It would be nice to have complete list of rules.

What about MindAgents - when I should switch from inference over Atomspace to MindAgent? I guess MindAgents are intended for interactive/reactive reasoning in which the Atomspace is constantly updated by incoming stream of new facts or queries...

AmeBel

unread,
Feb 14, 2017, 9:41:41 PM2/14/17
to opencog
Hi,



I am continuing to design inference process that can build abstract syntax tree (just some very complex node) from the formalized norms (just some other nodes and links) (my idea about automatic programming / program learning). 

Now I am trying to understand - how to bootstrap inference process? I think that I need to do forward chaining inference (and not backward chaining inference because my result is unknown). I understand that I should define in guile Scheme a lot of Atoms (according to zoo of Atoms http://wiki.opencog.org/w/Category:Atom_Types ) and especially I should define Atoms of type EvaluationLink that creates the root node of my tree and then creates leave nodes and leave links. The question is - having such set of Atoms (Atomspace) - how can I start bootstrap process and how can I read the resulting atomspace in which I hope to see my tree after completion of evaluation process? 

When you call cog-fc using a certain rulebase over the whole atomspace (or its subset) the returned result is the outcome. See http://wiki.opencog.org/w/URE_Configuration_Format on how to create a rulebase.
 

Starter example http://wiki.opencog.org/w/Getting_Started_with_Atoms_and_the_Scheme_Shell is about cog-execute of one specific Link but I need to execute entire Atomspace. E.g. JBoss Drools does this - it loads Knowledge base and then starts forward chaining inference (Rete algorithm) until the process completes.



What about inference rules - are they defined in *.scm files or are they encoded in the CogServer? It would be nice to have complete list of rules.
Reply all
Reply to author
Forward
0 new messages