Jump to content

OpenCyc 2.0 UDF


Recommended Posts

Here's the next generation of OpenCyc and AutoIt: new additions include a generic Cyc query and a planner interface.

Work needs to be done on queries with variable and optional parameters, but by and large, the beast is alive.

The old UDF was fairly complete, if redundant in some places., which allowed me to pretty much copy/paste it in whole. I ran tests and it appears most, if not all, functions are working properly. Some are limited, because their intended usage requires functions to be nested, and optional parameters to be used. In those scenarios, please report to me what is needed, and I will revise the UDF at that time.

Please report bugs, quirks, wishlists, demands, and Elvis sightings here.


Main Site

Download OpenCyc 2.0

Download Installer

And last, but not least, the new, improved (but really mostly just the old one :D ) OpenCyc 2.0 UDF.


Old functions that hadn't been working properly for the 1.0 release now appear to work properly. the OpenCyc internal API is much more complete and concurrent with documentation.


Func _plannerQuery($Task, $MT, $verbose = 0, $number = 1, $time = 20, $depth = 5, $backchain = 5)
;~Returns a list of action sequences each of which are a plan for TASK in the context of MT.
;TASK         -    a formula with an instance of #$ActionSequence as its first argument.
;MT           -    a microtheory that gives context to the planning problem.
;VERBOSE    -    an integer between 0 and 9, that controls how much logging information shop should send to standard output.
;NUMBER        -    the maximum number of plans to return.
;TIME        -    the maximum amount of time in seconds allocated to the planner.
;DEPTH        -    the maximum depth the planner can reach searching for plans.
;BACKCHAIN    -    the maximum number of backchains allowed when querying the KB when matching rule conditions.


Func _openCycQuery($api)
;~Returns Opencyc response.
Edited by JRowe
Link to comment
Share on other sites

Hmm. OpenCyc is 212 MB, and I don't really want to distribute that, seeing as I'm paying for bandwidth. It also requires the Java SDK to be installed, and there's potentially issues with setting up on various systems. At this point, I think it would be better for people to set up their own systems and report the results, so that I get a better idea of whats involved at all stages.

Maybe I should just run a semi-public opencyc server? The problem with that is simply security. The OpenCyc software has no security protocols, and is meant to be run by trusted users behind a firewall.

Basically, here's how to setup your system:

Download the Java SDK, install it normally.

Download OpenCyc, unzip to c:\opencyc-2.0

Run the script at "c:\opencyc-2.0\scripts\run-cyc.bat" to launch the server.

This will execute the cyc-server, allowing you to run your AutoIt scripts.

This opens up http://localhost:3602/cgi-bin/cyccgi/cg?cb-start, and it also opens up the ascii/telnet interface at http://localhost:3601, which is what the AutoIt UDF uses.

If I find a cheap way of distributing it in an all-in-one method, then I'll put together an easy to use installer with the whole shebang.

If you have issues with the Java installation, let me know, it should just be a matter of copying a folder to the correct location.

Link to comment
Share on other sites

212mb? thats big!

What if you had it online, like a server, and a script to use it from a client? So you don't need to have it installed but you can still send it questions and get answers back.


Link to comment
Share on other sites

  • 3 weeks later...

Added installer link. Installs a plain vanilla OpenCyc setup in your program files directory. Have at em!

Edited by JRowe
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...