=================================================================
Logtalk - Object oriented extension to Prolog
Release 2.28.2
Copyright (c) 1998-2006 Paulo Moura. All Rights Reserved.
To load this example and for sample queries, please see the SCRIPT file.
You will also need to load the following files in the library directory:
dates_loader, types_loader, events_loader, metapredicates_loader, and
hierarchies_loader. Alternatively, you can just load the library all_loader
file.
Some of the code in this folder is adopted, with permission, from the book
"Prolog Programming for Artificial Intelligence" by Ivan Bratko.
For a description of the search problems, please see a classical AI book
(such as the one above) or visit the url <http://www.plastelina.net/games>.
This example defines two hierarchies of objects, one for representing
state-spaces and another for representing search methods:
state_space
farmer
water_jug
salt(Quantity, Measure1, Measure2)
heuristic_state_space
bridge
eight_puzzle
miss_cann
search_strategy
blind_search(Bound)
breadth_first(Bound)
depth_first(Bound)
heuristic_search(Threshold)
best_first(Threshold)
hill_climbing(Threshold)
Taken together, these two hierarchies implement a framework for solving
state-space search problems in Logtalk. There is also a monitor object,
"performance", which tries to measure the time taken to find a solution,
the branching factor while searching for a solution, and the number of
transitions made to find a solution.