Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add HDDL output for ESS SHOP. #152

Open
wants to merge 47 commits into
base: master
Choose a base branch
from
Open

Add HDDL output for ESS SHOP. #152

wants to merge 47 commits into from

Conversation

rpgoldman
Copy link
Contributor

Add the ability to translate an ESS enhanced plan tree into an HDDL format plan. To date, it has been too difficult to add this capability to the classic SHOP planning tree.

@rpgoldman rpgoldman force-pushed the hddl-ess-only branch 2 times, most recently from 8820856 to 52c2852 Compare October 26, 2023 23:14
@rpgoldman rpgoldman force-pushed the hddl-ess-only branch 2 times, most recently from 819105c to d430207 Compare November 4, 2023 16:04
@rpgoldman
Copy link
Contributor Author

This is still imperfect: the Classic SHOP trees still have issues. But ESS-SHOP output to HDDL plans works properly.

@rpgoldman rpgoldman force-pushed the hddl-ess-only branch 2 times, most recently from 675ce06 to 9c94439 Compare November 6, 2023 22:02
@rpgoldman rpgoldman requested a review from ukuter November 7, 2023 15:17
@rpgoldman
Copy link
Contributor Author

@ukuter Please have a look at this. I'm not happy with the way the classic SHOP plan trees are (not) working, but the ESS ones are, and the HDDL output seems pretty solid now.

The problem with classic SHOP plan trees is that it seems that somehow primitive actions that were tried, but rejected and backtracked over, can appear in the plan tree. I have not been able to figure out what causes this problem, or even in what cases it happens.

But I would like to get this merged for our experiments. I suppose we could simply keep using this branch until we can clean up the SHOP plan trees.

In order to support exporting plans as HDDL, we need to have
information in the plan trees to specify what methods are used to
perform what decompositions.  This patch makes that change.
Translate SHOP plans into HDDL plans in IPC format.  Translate HDDL
problems into SHOP problems.
Also fix bug that came from two different meanings for `t` as a stream
argument: `*standard-output*` versus `*terminal-io*`.
- Better print-object method for `complex-tree-node`

- Add `all-primitive-nodes`
Dropping the rewrite function.
Simplify the process of indexing the nodes in the plan tree at the
expense of making it a 2-pass process.
Replace `*reduction-labels*` alist with more efficient hash-table
implementation.

Update the tests.
These are still messed up, and not critical.
Add command-line applications and HDDL support to the manual.
There was an over-complicated method that hid an off-by-one error.
This version uses Shirakumo's (Nicholas Hafner's) random-state library
to give repeatable random sequences that are implementation
independent.
Fix the loading, which didn't always load RANDOM-STATE soon enough.

Add a test for repeatability of random sequences.
There are 4 more theorem-prover tests to check the new random function
in SHOP.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant