Replies: 11 comments 5 replies
-
Notes from today's discussion re: MVP for the Grouping feature:
|
Beta Was this translation helpful? Give feedback.
-
Here are my notes/questions on the implementation aspects General notes
Modeling for exporting the compound/TN information
How do users write this in the mission model ?Easiest would be to have
This allows the mission model checker/validator to perform checks and to package the information for the On the DB side, I was wondering if we could get away with adding a boolean to the We also need some kind of Do we need a The |
Beta Was this translation helpful? Give feedback.
-
Conversation with Matt and Theresa. We explored the synergies of grouping wrt simulation decomposition and concluded that the latter is very specific code for simulation and cannot be extrapolated to HTNs. |
Beta Was this translation helpful? Give feedback.
-
Talk to Tiago Vaquero. We explored in further detail alignement of Aerie future HTN with hierarchical modeling in Task Nets and particularly for MEXEC. Follow on meeting on Thursday 20th June. |
Beta Was this translation helpful? Give feedback.
-
Here is the proposed roadmap: Grouping v2 Grouping v3 Grouping v4 |
Beta Was this translation helpful? Give feedback.
-
Conversation with @adrienmaillard entering the territory of implementation.
Compound
Method
Note: In a meeting with Gregg Rabideau, he clarified that MEXEC uses hooks to external functions that decide what task network to use and return an instantiation of it. The idea of having external funtions that could implement heuristics defined by the user to choose the task network sounds very interesting, but I think it is more straightforward to benefit from current/future Aerie constraint capabilities. Task Network Planner Impact on scheduler Other pending design choices:
Pending to decide:
|
Beta Was this translation helpful? Give feedback.
-
Conversation with @bradNASA . Incremental sim seems the right approach to handle scenarios in which one of the activities in the decomposed task network fails (e.g. to be scheduled). In that scenario we need to undo the decomposition and try another one. |
Beta Was this translation helpful? Give feedback.
-
Conversation with @adrienmaillard and @mattdailis. Moving to implementation, I will continue implementing the elements to be included in the mission model: method, tasknettempalte and tasknetinstance. It is agreed to coordinate with Adrien either once these core classes are finished or whether an opportunity for work paralellization arises. The first milestone is set to provide an early demo on the side of mission modelling of how HTN modelling would look like. |
Beta Was this translation helpful? Give feedback.
-
Conversation with @mattdailis and @dandelany |
Beta Was this translation helpful? Give feedback.
-
Summary of assumptions:
|
Beta Was this translation helpful? Give feedback.
-
Work In ProgressThis a wrap up on the design, implementation and pending work for Activity Grouping in Aerie. The code is on the IntroductionCLIPPER requested the capability to group activities to be linked via scheduling. The request was captured in two tickets:
It can be summarized as follows:
Concepts and FormalismGrouping is the non-technical word that refers to the capability to define hierarchical task network (HTNs). HTN is the formalism used to implement the groups in Aerie, as defined in [1] The formalism introduces new concepts for Planning and Scheduling in Aerie:
Design PrinciplesHTNs can be implemented with different capabilities, which are enumerated below. For each capability, the design choice for the first MVP is described. Further information on a potential roadmap is presented in the next section.
RoadmapWe have defined a roadmap to incorporate increasing level of complexity into Aerie:
Design and ImplementationThe main design choices are related to how to model Task Networks and the structure of the solvers. In the following, we will describe the final design and current implementation:
Pending Work
|
Beta Was this translation helpful? Give feedback.
-
Groupingv2.pptx
This discussion aims to steer the decision-making process wrt the design and implementation approach for Grouping capability in Aerie.
Grouping expands the needs expressed in the tickets below:
Allow groupings of sequential activities in eDSL #870
Ability to "Group" Activities Linked via Scheduling #1073
The overall goal of grouping is to allow the user to define group of activities and constraints among them that are known to be repeated in a plan. Grouping is commonly used in space system engineering to construct plans. Previous systems such as ASPEN and current ones such as COPILOT make use of groups for routine operations.
Aerie implementation of grouping shall not be limited to the needs of a specific mission (e.g. CLIPPER), but focus on the most useful approach for current and future customers.
We will implement grouping following the Hierarchical Task Network's formalism (HTN). In particular, we will use the formal definition provided in the book Automated Planning: Theory & Practice (Malik Ghallab, Paolo Traverso, Dana Nau), which is used as reference in most literature on HTNs.
Attached the slides that summarize the current approach
Beta Was this translation helpful? Give feedback.
All reactions