
AI Blueprints
By :

For a more practical example, we implemented a textual interface for the TAROT course advising system (TAROT: A Course Advising System for the Future, J. Eckroth, R. Anderson, Journal of Computing Sciences in Colleges, 34(3), pp. 108-116, 2018). TAROT's domain logic is implemented in Prolog, like our Pokémon example. However, TAROT is not open source, so we included the Pokémon example to show a complete solution. Yet, the course advising example shows a few interesting variations that we detail in the following text.
TAROT itself runs an HTTP server (http://tarotdemo.artifice.cc:10333) that accepts a JSON list containing the Prolog rule to execute as well as its arguments. Some of those arguments will be variables (starting with a capital letter), thus causing the TAROT to compute their values. The HTTP server returns all the values for these variables that meet the rule's constraints. These returned values are formatted as a JSON list of key-value...