1 / 22

Active and Passive Constraint Enforcement for Activity Planning

Active and Passive Constraint Enforcement for Activity Planning. Paul H. Morris and John L. Bresina NASA Ames Research Center Moffett Field, California. Max science Especially mine! Min resource margins. Scientists. Priorities & Constraints. Rover Activity Instances. Rover Driver.

nuri
Download Presentation

Active and Passive Constraint Enforcement for Activity Planning

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Active and Passive Constraint Enforcement for Activity Planning Paul H. Morris and John L. Bresina NASA Ames Research Center Moffett Field, California

  2. Max science Especially mine! Min resource margins Scientists Priorities & Constraints RoverActivityInstances Rover Driver Guidance; Approval InitialConditions Simple plan structure Safe resource margins MER activity planning Maximize science while obeying flight rules & science intent and staying within resource limits InstrumentActivity Instances MAPGEN User Instrument Experts Analyzers of data from rover Mission Management

  3. Mer Constraint Handling MAPGEN = Apgen + Europa passive checking active enforcement

  4. Next Generation System: Ensemble • Client/Server/Plugin architecture • Mixed-initiative Activity-Planning component • MSLICE for Mars Science Laboratory (MSL) mission • PSI for Phoenix mission • Bedrest Medical Study and Crew Scheduling applications • Active and Passive Constraint Enforcement

  5. Passive Versus Active • Passive enforcement detects constraint violations • time of violation • nature of violation • state requirement • resource requirement • direct temporal constraint • culprit activities • Active enforcement fixes constraint violations • move activities to ok times • under user control • User can also fix • move activities to ok times • add enabling activities • delete disabling activities

  6. Example: Med Plan Violation Breakfast 12 hr. fasting Glucose Test violation 1 pm 8 am Fix

  7. State Constraint Categories • Simple Mutual Exclusion • subject can do only one activity at a time • Complex Mutual Exclusion • daytime activities can’t overlap nighttime activities • Blackout Exclusion • no meal for 12 hrs before glucose test • no exercise for 2 hrs after meal • Window of Opportunity • Comm activity only during DSN window • Persistent state change • clean room (stays clean until dirty action) • stow vacuum cleaner (stays stowed until unstow action)

  8. no exercise Breakfast no exercise Lunch Why Distinguish? • All are examples of state changes & requirements • BUT may differ in the way state changes combine: false true false true Blackouts can merge false/false/true = false “additive” combination

  9. not dirty Clean not dirty Clean Why Distinguish? • BUT may differ in the way state changes combine: false true Dirty Dirty false true false/false/true = true “Markov” combination

  10. Why Distinguish? • BUT may differ in the way state changes combine: false not unstowed Stow not unstowed Stow false Double stowing is a violation

  11. Europa Engine Capabilities • Numerical Resource mechanism • resource violation flaws • use for passive enforcement • must encode states numerically • Activity Timeline mechanism • generation & placement of subgoals • use for active enforcement • must encode restrictions as subgoals • Temporal Consistency checking • Backtracking Solver

  12. Resource Encoding ofBoolean State (Basic)

  13. Double-false Violation -1000 not unstowed Stow not unstowed Stow -1000 1000 0 -1000 violation

  14. no exercise Breakfast no exercise Lunch Combination of Blackouts -1000 +1000 -1000 +1000 1000 0 -1000 Filter multiples of -1000

  15. not dirty Clean not dirty Clean “Markov” Combination false true Dirty Dirty false true Use Saturation arithmetic with [0, 1000] bounds: 1000 + 1000 ≈ 1000 0 - 1000 ≈ 0 x = rem(x-1, 1000) + 1 [Ada/CL rem: same sign as dividend]

  16. Culprit IdentificationAuto “ran-out-of-gas” example Culprit is trip2 only (“fill-up” wipes memory)

  17. true no exercise Culprit Identification false Breakfast Exercise 1000 “full” violation 0 -1 Culprits

  18. Europa Engine Capabilities • Numerical Resource mechanism • resource violation flaws • use for passive enforcement • must encode states numerically • Activity Timeline mechanism • generation & placement of subgoals • use for active enforcement • must encode restrictions as subgoals • Temporal Consistency checking • Backtracking Solver

  19. Active Enforcement Breakfast subgoal Exercise-Blocked Exercise-Avail exercise availability timeline subgoal Exercise

  20. Active Enforcement:Merged Blackout Subgoals Breakfast subgoal Exercise-Blocked exercise availability timeline subgoal Lunch

  21. Problems with Subgoal Merge • Can’t “insert between” after merge • Decision to merge may be premature • May lead to backtracking • Merge or Not-Merge alternatives • More backtracking choices • Merging may “pull” activities together Alternatives • Use multiple timelines for concurrency • Use active resource mechanism instead of timelines

  22. Future Work • Short-term: experiment with different Europa implementation strategies. • Long-term: Import higher-level resource types into core Europa engine, including state resources. • Both active and passive enforcement built into single higher-level type. • Identify new constraint categories that arise in new applications.

More Related