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

Update promises for goal classes #501

Open
wants to merge 90 commits into
base: common/promises
Choose a base branch
from

Conversation

snoato
Copy link
Contributor

@snoato snoato commented Dec 10, 2021

This PR redoes the promises and time estimations based on the static times used by the execution time estimator.

Enforce a more strict separation between preconditions that are necessary
for formulating a precondition formula for goal formulation (i.e. accessing
facts that hold information for a particular order, WP, etc.) and those
that are required for actual goal formulation (i.e. transient facts that
represent a world-state and need to be fulfilled to actually execute the
goal). The former are captured in the form of CLIPS LHS preconditions
before the goal-class for the corresponding goal is a asserted and serve
configuration purposes. The latter are enforced in the form of the
precondition formula that is continously evaluated, once asserted and
grounded, against the current state of the world-model.

The existing goal-class create and assert goals are updated accordingly.
Add the PDDL-based formulation precondition for the MOUNT-NEXT-RING goal.
To make the goal and precondition more reasonable it is split into 2 rules.
snoato and others added 28 commits December 14, 2021 20:42
Promises might lead to actions being in state pending for longer durations
this should be accomodated.
Promises can cause conflicts in combination with machine interaction goals.
Required resources might be conflicting leading to unsuccessful operations.
By using alternative resource descriptors such conflicts can be avoided.
This was a hack, back when promised goals promised stuff that they did
not perform.
The shelf will not be empty before minute 1 and synching causes problems.
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.

2 participants