OpenCyc is the open source version of the Cyc(r) technology, the world's largest and most complete general knowledge base and commonsense reasoning engine. Version 0.9 is the first OpenCyc release in over two years and it is FIVE TIMES LARGER than the previous version.
OpenCyc now contains over 47,000 concept terms and over 300,000 facts (163MB compressed), all represented formally using CycL, a predicate-calculus-like language. Inference is also twice as fast, on average, as in the previous version, despite the increased size.
OpenCyc can be used as the basis for a wide variety of intelligent applications. There have been over 50,000 SourceForge downloads of previous versions of OpenCyc.
SourceForge users can contribute modifications to the Java or Python APIs that are included in the distribution. These will also be updated in the SourceForge CVS soon. At that point, those that want developer access should contact the project administrators. Developers can also post their own OpenCyc-based projects in SourceForge CVS. A standard method of collection KB content contributions has not been established, but the OpenCyc team encourages a vigorous discussion of this on the SourceForge forum and through the SourceForge mailing lists.
There have been two major changes in approach that should lead to more frequent releases of OpenCyc going forward.
1. It was the case, prior to this release, that we were holding back definitional assertions on terms until they were reviewed and found to be essentially complete across terms included in the KB.
For example, for all of the terms 1, 2, . . . n in the OpenCyc KB, we would attempt to ensure that, for all i1 and i2 in n, (disjoint i1 i2) was known to be either true or false. This takes far too long to do manually across all definitional predicates, especially as the ontology fans out further down the hierarchy. Some automated methods have been identified to speed this process, but it is not a problem that will be solved any time soon.
This attempt at completeness was motivated, in part, by the belief that the OpenCyc ontology might be used, in its entirety, as a basis for a Semantic Web ontology. We now believe that the OpenCyc ontology will more likely be treated as a library from which a subset of terms, perhaps a large one, will be drawn upon for various Semantic-Web-like uses. For that usage, defintional completeness is not necessary, and we are not attempting it. As a result, we're including all of the definitional assertions for all of the terms that happen to appear in ResearchCyc (see http://research.cyc.com\), the no cost (but not open source) version of the Cyc KB aimed at the academic and commercial research community.
We look forward to help from the OpenCyc community in addressing the incompleteness issue.
2. Since OpenCyc is a mostly unfunded effort, we have determined that we must limit our ambitions with respect to new product features. In short, we can't be innovators here (but OpenCyc users, of course, can be innovative in how they use OpenCyc!). Instead, we need to include whatever we can from features that happen to be developed for Full Cyc or for ResearchCyc. This will result in changes to the release plans, but in general it should mean more frequent releases.