Re: The Automated Planning and Scheduling Community Group

Adam, your reference to "a new planning domain definition language" reminds me of the proposal John Teeter made when he was DCIO at HHS, to create a Planning and Accountability domain in NIEM.
Given your proposed focus on JSON and JavaScript as well as the example you provide below, I'm not sure how much I might have to contribute to the group.  However, I would encourage you to cite this reference as well -- https://en.wikipedia.org/wiki/Strategy_Markup_Language -- and, given the broader subject of "planning," I could not resist the opportunity to: 

a) learn more about what the group might be able to accomplish, and b) reporting its vision, mission, goals, objectives, stakeholders, and performance indicators in StratML Part 2, Performance Plan/Report, format, at https://stratml.us/drybridge/index.htm#W3C.

I just added my support for creation of the group, at https://www.w3.org/community/blog/2022/11/17/proposed-group-automated-planning-and-scheduling-community-group/
Owen Amburhttps://www.linkedin.com/in/owenambur/
 

    On Thursday, November 17, 2022 at 10:23:39 PM EST, Adam Sobieski <adamsobieski@hotmail.com> wrote:  
 
  Artificial Intelligence Knowledge Representation Community Group, Hello. I recently proposed a new Community Group, the Automated Planning and Scheduling Community Group (https://www.w3.org/community/ , https://www.w3.org/community/blog/2022/11/17/proposed-group-automated-planning-and-scheduling-community-group/). "This group will discuss and advance automated planning and scheduling technologies, in particular planning domain definition languages. Using such languages, developers can define planning domains, these including types, predicates, actions, constraints, and preferences, and can define planning problems. Web technologies can be of use for designing new such languages, e.g., XML, JSON, Semantic Web technologies, and JavaScript. This group will develop a specification for a new planning domain definition language." I would like to invite you to support the creation of the group. Thank you!  Best regards,Adam Sobieski [1] https://en.wikipedia.org/wiki/Automated_planning_and_scheduling [2] https://en.wikipedia.org/wiki/Action_description_language [3] https://en.wikipedia.org/wiki/Planning_Domain_Definition_Language  P.S.: Here is a rough-draft sketch of a prototype XML-based planning domain definition language. The example domain defines an operator for moving a robot, e.g., Robby, from one room to another.
 
<domain xmlns="..." xmlns:ext="..." version="0.1.4">  
 
 <head>...</head>  
 
 <body>  
 
   <operators>  
 
     <operator name="move" onenter="move_onenter" ext:duration="move_duration">  
 
       <meta>...</meta>  
 
       <parameters>  
 
         <parameter modifier="input" name="from" />  
 
         <parameter modifier="input" name="to" />  
 
         <guard type="text/sparql+calculus">  
 
           <![CDATA[  
 
             PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>  
 
             PREFIX domain: <http://example.com/domain#>  
 
             ASK  
 
             {  
 
               rdf:type(?from, domain:room).  
 
               rdf:type(?to, domain:room).  
 
               ?from != ?to.  
 
             }  
 
           ]]>  
 
         </guard>  
 
       </parameters>  
 
       <preconditions type="text/sparql+calculus">  
 
         <![CDATA[  
 
           PREFIX domain: <http://example.com/domain#>  
 
           ASK  
 
           {  
 
             domain:at-robby({{from}}).  
 
           }  
 
         ]]>  
 
       </preconditions>  
 
       <effects type="text/sparul+calculus">  
 
         <![CDATA[  
 
           PREFIX domain: <http://example.com/domain#>  
 
           DELETE DATA  
 
           {  
 
             domain:at-robby({{from}}).  
 
           }  
 
           INSERT DATA  
 
           {  
 
             domain:at-robby({{to}}).  
 
           }  
 
         ]]>  
 
       </effects>  
 
       <script type="text/javascript">  
 
         <![CDATA[  
 
           function move_onenter(p, a)  
 
           {  
 
             console.log('planner ' + p.name + ' entering action ' + a.name);  
 
           }  
 
           function move_duration(p, a)  
 
           {  
 
             /* ... */  
 
           }  
 
         ]]>  
 
       </script>  
 
     </operator>  
 
   </operators>  
 
 </body>  
 
</domain>  
 
  

Received on Friday, 18 November 2022 04:31:38 UTC