How Texai Will Write Its Own Programs
I’ve made progress on the Texai Behavior Language that provides the primitive composition operations required for writing its own programs. A new page here describes them.
I’ve made progress on the Texai Behavior Language that provides the primitive composition operations required for writing its own programs. A new page here describes them.
When Texai learns a skill from a mentor, it will compose a Java method, format its source code, compile that class containing the method, and reload the revised class into the Java Virtual Machine (JVM) that is executing the local Texai instance. From various code samples and tutorials found on the web, I have assembled Java code that performs these operations. Because this is generally useful for Java developers, I am describing the steps in this post. Continue Reading »
I have subjected myself to these constraints to face the challenge ahead:
It looks now that I am trying to solve at least the following AI-hard problems simultaneously:
Although daunting, I believe small progress on this combination of problems will proceed into a virtuous circle of exponential improvement.
I’ve given automatic programming a lot of thought over my rather long (i.e. 40 years) experience programming computers. While at Cycorp, I persisted abstract syntax trees for an Turing-complete agent control language into the Cyc knowledge base. I had the idea then that Cyc could thus reason about programs and begin to author portions of them. But the idea did not gain traction with our sponsors nor with Cycorp management, so it languished. Continue Reading »
Note that the system now can only understand and generate a single utterance. Progress towards a broader coverage of English awaits the completion of the Grammar Acquisition Skill, and the Vocabulary Acquisition Skill.
I have completed coding the English Generation Skill and I tested it on my use case utterance “the book is on the table“. As expected, I wrote the supporting Generation Rule Application Library with less effort than its counterpart on the parsing side - Parsing Rule Application Library. The same rule set is used by both libraries, and the method of rule application is similar. In my opinion, this is strong validation of the Fluid Construction Grammar engine that I adopted from Luc Steel’s work here. Continue Reading »
Zitgist has released UMBEL web services that provide a subject ontology, based upon the OpenCyc ontology that is linked to other useful ontologies including WordNet. A useful navigation page is here. This news is especially good for Texai because I too have adopted the OpenCyc ontology as the basis of the current symbolic portion of the Texai knowledge base. I expect that Texai can thus exchange knowledge with users adopting UMBEL.
Note that the system now can only understand a single utterance. Progress towards a broader coverage of English awaits the completion of the Grammar Acquisition Skill, and the Vocabulary Acquisition Skill.
I’ve completed writing the English Comprehension Skill, described with graphs here, and tested it on my use case utterance “the book is on the table“. This skill contains, as a component, the parsing rule application library described in my previous system status post. In February and March I completed two additional libraries: one to perform Kintsch spreading activation, and the other to perform discourse elaboration. Both use the AI technique of spreading activation. Accordingly, I factored out a generally useful Java library for spreading activation and released it on the SourceForge project site as a separate package. Continue Reading »
On the SourceForge project site, I just released the Spreading Activation Java library. It is a generally useful component of the English dialog system, in which spreading activation elaborates a discourse context by activating relevant concepts that are linked via the knowledge base to one or more concepts explicitly mentioned in an utterance.
Previously, I posted the bootstrap dialog system design. See the project roadmap to see how this component supports the creation of artificial intelligence. I’m currently writing the parsing rule application library. At this pace, I hope that within a couple of months the system will echo back the single use case sentence that I used in the Incremental Fluid Construction Grammar library. Continue Reading »
I just upgraded the dialog system under development, and RDF Entity Manager libraries to Sesame v2.0, which is the RDF store that I use to hold the Texai partitioned knowledge base. I’ll release the new version of the RDF Entity Manager at SourceForge in a few days. Continue Reading »