Please review any and all PUBLIC repositories, groups and associate files. These allow anyone on the Internet to access without authentication. Repository and group owners are responsible for their content and permission settings. Go to your project(s), click on Settings > General and expand the "Visibility, project features, permissions" to change this setting.

Commit 0a89d5fa authored by Brutzman, Don's avatar Brutzman, Don

mission update, both breadth-first and depth-first search

parent aa839af3
;This code written in ANSI Common Lisp, Allegro 10.1 enhancement, from Franz, Inc., by
;Prof. Robert B. McGhee (robertbmcghee@gmail.com) at the Naval Postgraduate School,
; , CA 93943. Date of latest update: 7 July 2020.
; , CA 93943. Date of latest update: 14 July 2020.
;The mission coded below is taken from Fig. 7, pg. 434, in "Ethical Mission Definition
;and Execution for Maritime Robots Under Human Supervision", IEEE Journal of Oceanic
......@@ -46,15 +45,22 @@
;referenced JOE paper, "phase abstraction" can be used to combine phases and thereby
;reduce the number of phases in top level mission orders.
;Comment4: The intent of the following code ia to allow a human being to specify and explore the
;execution of robot or human mission orders defined by a finite-state mission excution automaton
;(MEA) as detailed in JOE 2018. Code included is also able to autonomously find all paths through
:a DAG defining a mission for joint robot/human execution or by either acting alone. Proof of the
;equivalence of correctly generated all-paths by human interaction with algorithmic results for
;the same purpose is included.
(defvar *current-paths-to-goal* nil)
(defvar *path-to-goal* '(s s s s))
(defvar *all-algorithmic-paths* nil)
(defvar *mission-execution-scenario* nil)
(defvar *abbreviated-scenario* nil)
(defvar *all-abbreviated-scenarios* nil)
(defvar *all-human-directed-paths* '((X X) (X F) (X S) (F X X) (F X F) (F X S) (F F X) (F F F) (F F S) (F S X) (F S F)
(F S S) (S X X) (S X F) (S X S) (S F) (S S X X) (S S X F) (S S X S) (S S F X) (S S F F) (S S F S) (S S S X) (S S S F)
(S S S S))) ;From 6/22/20 results emailed to NPS team.
(defvar *abbreviated-algorithmic-paths* nil)
(defvar *all-human-directed-paths* '((X X) (X F) (X S) (F X X) (F X F) (F X S) (F F X) (F F F) (F F S)
(F S X) (F S F) (F S S) (S X X) (S X F) (S X S) (S F) (S S X X) (S S X F) (S S X S) (S S F X) (S S F F)
(S S F S) (S S S X) (S S S F) (S S S S))) ;From 6/22/20 results emailed to NPS team.
(defvar agent1)
(defvar agent2)
(defvar phase1)
......@@ -196,6 +202,8 @@
(setf *current-paths-to-goal* nil)
(start1)
(start-all)
;(all-paths)
;(save-results)
'ready)
(defun run1 ()
......@@ -363,5 +371,12 @@
(defun repeat ()
(pop *all-algorithmic-paths*)
(reset)
(pprint *mission-execution-scenario*)
(abbreviate-scenario))
(push (abbreviate-scenario) *abbreviated-algorithmic-paths*))
(defun set-all-abbreviated-paths ()
(all-paths)
(save-results)
(setf *abbreviated-algorithmic-paths* nil)
(push (abbreviate-scenario) *abbreviated-algorithmic-paths*)
(dotimes (i 24) (repeat) 'done))
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment