CLG+ Source code
A contingent planner by A.Albore and H.Geffner (c)2010

== compiling the code ==
A simple 'make' should suffice.

== Running the planner ==
The translator from conformant to classical problems cf2cs should work for CLG+ (it is called ccf2cs sometimes, because it uses costs, i.e. cost-cf2cs). 

It is called in the following way:

./ccf2cs -t0 -cond -cod -cmr -csl -ckit -ckinl -cmit -cminl -mac -cdisjk0 -cdisjm0 -cfc -fp -cdisjm -cost -ass -ncc -sn domain.pddl p.pddl

CLG+ is called with the following command line:

./cclg -a 1 -v 0 -k 1 -p ./ -f new-p.pddl -o new-d.pddl -c 1 -S -w hidden.pddl 

Where hidden.pddl is a file with the hidden observations. Check the example that should be attached with this distribution.

== known bugs ==
There is a bug that appears in those problems with many uncertain clauses relevant to the same literals (it never happened in existing contingent domains, but you never know.... Actually there is a domain called RockSamples that Ronen Brafman is using that has this feature). 
There is a known bug in CLG+, when applying automated sensing: it is not done until fixpoint. Never had problems for that, in any of my benchmarks, but it is not the correct algorithm. You can correct that with small changes...

Have fun! 

