init
This commit is contained in:
12
processors/ripr_agents/aiai/old.SOAR.old/RIPR-AIAI.soar
Normal file
12
processors/ripr_agents/aiai/old.SOAR.old/RIPR-AIAI.soar
Normal file
@@ -0,0 +1,12 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
|
||||
pushd RIPR-AIAI
|
||||
source RIPR-AIAI_source.soar
|
||||
popd
|
||||
27
processors/ripr_agents/aiai/old.SOAR.old/RIPR-AIAI.vsa
Normal file
27
processors/ripr_agents/aiai/old.SOAR.old/RIPR-AIAI.vsa
Normal file
@@ -0,0 +1,27 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
|
||||
VERSION 4
|
||||
\RIPR-AIAI\RIPR-AIAI.dm
|
||||
0 ROOT RIPR-AIAI RIPR-AIAI 1
|
||||
1 0 FOPERATOR _firstload _firstload.soar 2
|
||||
2 0 FOLDER all all 3
|
||||
3 2 FOPERATOR output output.soar 4
|
||||
4 2 FOPERATOR wait wait.soar 5
|
||||
5 0 FOLDER elaborations elaborations 6
|
||||
6 5 FOPERATOR _all _all.soar 7
|
||||
7 5 FOPERATOR monitor monitor.soar 8
|
||||
8 5 FOPERATOR top-state top-state.soar 9
|
||||
9 0 OPERATOR f-pole f-pole.soar 10
|
||||
10 0 OPERATOR initialize-RIPR-AIAI initialize-RIPR-AIAI.soar 11
|
||||
11 0 OPERATOR pursue-target pursue-target.soar 12
|
||||
12 0 OPERATOR pursuit-lag pursuit-lag.soar 13
|
||||
13 0 OPERATOR pursuit-lead pursuit-lead.soar 14
|
||||
14 0 OPERATOR pursuit-pure pursuit-pure.soar 15
|
||||
END
|
||||
178
processors/ripr_agents/aiai/old.SOAR.old/RIPR-AIAI/RIPR-AIAI.dm
Normal file
178
processors/ripr_agents/aiai/old.SOAR.old/RIPR-AIAI/RIPR-AIAI.dm
Normal file
@@ -0,0 +1,178 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
|
||||
81
|
||||
SOAR_ID 0
|
||||
SOAR_ID 1
|
||||
SOAR_ID 2
|
||||
SOAR_ID 3
|
||||
ENUMERATION 4 2 operator state
|
||||
ENUMERATION 5 1 none
|
||||
ENUMERATION 6 4 conflict constraint-failure no-change tie
|
||||
SOAR_ID 7
|
||||
FLOAT_RANGE 8 -Infinity Infinity
|
||||
FLOAT_RANGE 9 -Infinity Infinity
|
||||
FLOAT_RANGE 10 -Infinity Infinity
|
||||
FLOAT_RANGE 11 -Infinity Infinity
|
||||
FLOAT_RANGE 12 -Infinity Infinity
|
||||
FLOAT_RANGE 13 -Infinity Infinity
|
||||
SOAR_ID 14
|
||||
FLOAT_RANGE 15 -Infinity Infinity
|
||||
SOAR_ID 16
|
||||
ENUMERATION 17 1 initialize-RIPR-AIAI
|
||||
ENUMERATION 18 1 elaboration
|
||||
SOAR_ID 19
|
||||
STRING 20
|
||||
SOAR_ID 21
|
||||
INTEGER_RANGE 22 -2147483648 2147483647
|
||||
STRING 23
|
||||
SOAR_ID 24
|
||||
SOAR_ID 25
|
||||
ENUMERATION 26 1 pursue-target
|
||||
SOAR_ID 27
|
||||
STRING 28
|
||||
STRING 29
|
||||
STRING 30
|
||||
SOAR_ID 31
|
||||
ENUMERATION 32 1 wait
|
||||
SOAR_ID 33
|
||||
INTEGER_RANGE 34 -2147483648 2147483647
|
||||
SOAR_ID 35
|
||||
STRING 36
|
||||
STRING 37
|
||||
FLOAT_RANGE 38 -Infinity Infinity
|
||||
FLOAT_RANGE 39 -Infinity Infinity
|
||||
FLOAT_RANGE 40 -Infinity Infinity
|
||||
FLOAT_RANGE 41 -Infinity Infinity
|
||||
FLOAT_RANGE 42 -Infinity Infinity
|
||||
STRING 43
|
||||
SOAR_ID 44
|
||||
STRING 45
|
||||
ENUMERATION 46 1 nil
|
||||
FLOAT_RANGE 47 -Infinity Infinity
|
||||
FLOAT_RANGE 48 -Infinity Infinity
|
||||
FLOAT_RANGE 49 -Infinity Infinity
|
||||
SOAR_ID 50
|
||||
STRING 51
|
||||
FLOAT_RANGE 52 -Infinity Infinity
|
||||
FLOAT_RANGE 53 -Infinity Infinity
|
||||
FLOAT_RANGE 54 -Infinity Infinity
|
||||
FLOAT_RANGE 55 -Infinity Infinity
|
||||
FLOAT_RANGE 56 -Infinity Infinity
|
||||
SOAR_ID 57
|
||||
SOAR_ID 58
|
||||
STRING 59
|
||||
INTEGER_RANGE 60 -2147483648 2147483647
|
||||
STRING 61
|
||||
INTEGER_RANGE 62 -2147483648 2147483647
|
||||
FLOAT_RANGE 63 -Infinity Infinity
|
||||
FLOAT_RANGE 64 -Infinity Infinity
|
||||
FLOAT_RANGE 65 -Infinity Infinity
|
||||
INTEGER_RANGE 66 -2147483648 2147483647
|
||||
INTEGER_RANGE 67 -2147483648 2147483647
|
||||
FLOAT_RANGE 68 -Infinity Infinity
|
||||
FLOAT_RANGE 69 -Infinity Infinity
|
||||
SOAR_ID 70
|
||||
SOAR_ID 71
|
||||
ENUMERATION 72 2 attack recon
|
||||
STRING 73
|
||||
FLOAT_RANGE 74 -Infinity Infinity
|
||||
FLOAT_RANGE 75 -Infinity Infinity
|
||||
SOAR_ID 76
|
||||
FLOAT_RANGE 77 -Infinity Infinity
|
||||
STRING 78
|
||||
STRING 79
|
||||
STRING 80
|
||||
86
|
||||
0 attribute 4
|
||||
0 choices 5
|
||||
0 impasse 6
|
||||
0 io 1
|
||||
0 item 44
|
||||
0 name 36
|
||||
0 operator 16
|
||||
0 operator 25
|
||||
0 operator 31
|
||||
0 stale-time 47
|
||||
0 superstate 46
|
||||
0 top-state 7
|
||||
1 input-link 2
|
||||
1 output-link 3
|
||||
2 current-time 15
|
||||
2 orders-root 57
|
||||
2 ownship-ammo 9
|
||||
2 ownship-closing-speed-max 48
|
||||
2 ownship-closing-speed-min 49
|
||||
2 ownship-corner-speed 12
|
||||
2 ownship-engagement-range-max 11
|
||||
2 ownship-engagement-range-min 10
|
||||
2 ownship-speed 8
|
||||
2 ownship-speed-max 13
|
||||
2 ownship-threat-tolerance 63
|
||||
2 ownship-weapons-incoming 67
|
||||
2 point-root 70
|
||||
2 track-root 14
|
||||
2 weight-closing-speed-of 54
|
||||
2 weight-current-target 56
|
||||
2 weight-others-targeting 65
|
||||
2 weight-patrol-attack 74
|
||||
2 weight-patrol-recon 75
|
||||
2 weight-slant-range-to 53
|
||||
2 weight-weapons-in-flight 69
|
||||
3 do-nothing 21
|
||||
3 pursue-point 76
|
||||
3 pursue-target 24
|
||||
14 target 19
|
||||
16 name 17
|
||||
16 random 18
|
||||
19 closing-speed-of 40
|
||||
19 currently-targeted 55
|
||||
19 others-targeting 66
|
||||
19 positioning 43
|
||||
19 relative-bearing-to 38
|
||||
19 slant-range-to 42
|
||||
19 speed 41
|
||||
19 target-name 20
|
||||
19 target-type 61
|
||||
19 threat-level 64
|
||||
19 update-time 39
|
||||
19 weapons-in-flight 62
|
||||
21 nothing 22
|
||||
21 status 23
|
||||
24 job-bid 68
|
||||
24 pursuit-mode 29
|
||||
24 status 30
|
||||
24 target-name 28
|
||||
25 actions 35
|
||||
25 counted 50
|
||||
25 name 26
|
||||
25 target 19
|
||||
27 do-nothing 33
|
||||
31 actions 27
|
||||
31 name 32
|
||||
33 nothing 34
|
||||
33 status 37
|
||||
35 pursue-target 24
|
||||
44 actions 35
|
||||
44 name 45
|
||||
44 target 19
|
||||
50 name 51
|
||||
50 value 52
|
||||
57 prefer-target-type 58
|
||||
58 target-type 59
|
||||
58 weight 60
|
||||
70 point 71
|
||||
71 point-name 73
|
||||
71 point-patrol-type 72
|
||||
71 relative-bearing-to 38
|
||||
71 slant-range-to 42
|
||||
76 job-bid 77
|
||||
76 point-name 80
|
||||
76 pursuit-mode 78
|
||||
76 status 79
|
||||
@@ -0,0 +1,21 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
source _firstload.soar
|
||||
pushd all
|
||||
source all_source.soar
|
||||
popd
|
||||
pushd elaborations
|
||||
source elaborations_source.soar
|
||||
popd
|
||||
source f-pole.soar
|
||||
source initialize-RIPR-AIAI.soar
|
||||
source pursue-target.soar
|
||||
source pursuit-lag.soar
|
||||
source pursuit-lead.soar
|
||||
source pursuit-pure.soar
|
||||
@@ -0,0 +1,9 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
@@ -0,0 +1,10 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
source output.soar
|
||||
source wait.soar
|
||||
@@ -0,0 +1,32 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
|
||||
sp {apply*operator*create-action-command
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^operator <o>
|
||||
^io.output-link <ol>)
|
||||
(<o> ^actions <act>)
|
||||
(<act> ^<command-name> <command>)
|
||||
(<o> ^name <oname>)
|
||||
-->
|
||||
(<ol> ^<command-name> <command>)
|
||||
(write (crlf) |Outputting | <oname> | | <command-name>)
|
||||
}
|
||||
|
||||
|
||||
sp {apply*operator*remove-command
|
||||
(state <s> ^operator.actions
|
||||
^io.output-link <ol>)
|
||||
(<ol> ^<att> <value>)
|
||||
(<value> ^status complete)
|
||||
-->
|
||||
(<ol> ^<att> <value> -)
|
||||
(write (crlf) |Completed | <value>)
|
||||
}
|
||||
@@ -0,0 +1,94 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
|
||||
### Propose wait for a state no-change
|
||||
|
||||
sp {top-ps*propose*wait
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^io.input-link.track-root <tr>
|
||||
^io.input-link.point-root <pr>
|
||||
^io.input-link.current-time <time>)
|
||||
(<tr> -^<target> <t>)
|
||||
(<pr> -^<point> <p>)
|
||||
-->
|
||||
(<s> ^operator <o> + >)
|
||||
(<o> ^name wait)
|
||||
(<o> ^actions <a>)
|
||||
(<a> ^do-nothing <dn>)
|
||||
(<dn> ^nothing 0)
|
||||
(write (crlf) |Propose wait++++++++++++++++++++++++++++++++++++++++++++++++|)
|
||||
}
|
||||
|
||||
sp {top-ps*check1
|
||||
(state <s> ^name RIPR-AIAI)
|
||||
-->
|
||||
(write (crlf) |@@@ state <s> ^name RIPR-AIAI|)
|
||||
}
|
||||
|
||||
sp {top-ps*check2
|
||||
(state <s> ^io.input-link.track-root <tr>)
|
||||
-->
|
||||
(write (crlf) |@@@ state <s> ^io.input-link.track-root <tr>|)
|
||||
}
|
||||
|
||||
#sp {top-ps*check3
|
||||
# (state <s> ^io.input-link.track-root <tr>)
|
||||
# (<tr> -^<target> <t>)
|
||||
#-->
|
||||
# (write (crlf) |@@@ <tr> -^<target> <t>|)
|
||||
#}
|
||||
|
||||
#sp {top-ps*check4
|
||||
# (state <s> ^io.input-link.point-root <pr>)
|
||||
#-->
|
||||
# (write (crlf) |@@@ state <s> ^io.input-link.point-root <pr>|)
|
||||
#}
|
||||
|
||||
#sp {top-ps*check5
|
||||
# (state <s> ^io.input-link.point-root <pr>)
|
||||
# (<pr> -^<point> <p>)
|
||||
#-->
|
||||
# (write (crlf) |@@@ <pr> -^<point> <p>|)
|
||||
#}
|
||||
#
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#sp {top-ps*propose*wait
|
||||
# "Propose wait if there is a state no-change."
|
||||
# :default
|
||||
# (state <s> ^attribute state
|
||||
# ^choices none
|
||||
# -^operator.name wait)
|
||||
#-->
|
||||
# (<s> ^operator <o> + <)
|
||||
# (<o> ^name wait)
|
||||
# (<o> ^actions <a>)
|
||||
# (<a> ^do-nothing <dn>)
|
||||
# (<dn> ^nothing 0)
|
||||
# (write (crlf) |Propose wait|)
|
||||
#}
|
||||
|
||||
|
||||
### This avoids a operator no-change after wait is selected
|
||||
### I've included it just to keep the trace simple - it never fires
|
||||
|
||||
#sp {top-ps*apply*wait*random
|
||||
# "Fake production just to avoid extra operator no-change."
|
||||
# :default
|
||||
# (state <s> ^operator <o>)
|
||||
# (<o> ^name wait)
|
||||
#-->
|
||||
# (<o> ^random elaboration)
|
||||
#}
|
||||
@@ -0,0 +1,55 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
#sp {impasse-conflict*resolve*reject-non-current
|
||||
# (state <s> ^superstate nil)
|
||||
# (state <ss> ^superstate <s>
|
||||
# ^impasse conflict
|
||||
# ^item <i1>
|
||||
# ^item { <i2> <> <i1> } )
|
||||
# (<i1> ^name pursue-target
|
||||
# ^target.currently-targeted 1
|
||||
# ^target.target-name <name1>
|
||||
# ^target.update-time <ut> >= <st>)
|
||||
# (<i2> ^name pursue-target
|
||||
# ^target.currently-targeted 0
|
||||
# ^target.target-name <name2>)
|
||||
#-->
|
||||
# (write (crlf) |prefer-current: Operator conflict between | <name1> | & | <name2>)
|
||||
# (<s> ^operator <i2> -)
|
||||
#}
|
||||
|
||||
#sp {fix*operator*tie*impasse
|
||||
# (state <s> ^attribute operator
|
||||
# ^impasse tie
|
||||
# ^item <i1> ^item {<i2> <> <i1> })
|
||||
# (<i1> ^name pursue-target
|
||||
# ^job-bid <v1>)
|
||||
# (<i2> ^name pursue-target
|
||||
# ^job-bid <v2>)
|
||||
#-->
|
||||
# (<s> ^operator <i1> =)
|
||||
# (<s> ^operator <i2> =)
|
||||
#}
|
||||
|
||||
#sp {impasse-conflict*resolve*set-indifferent
|
||||
# (state <s> ^superstate nil)
|
||||
# (state <ss> ^superstate <s>
|
||||
# ^impasse conflict
|
||||
# ^item <i1>
|
||||
# ^item <i2> <> <i1>)
|
||||
# (<i1> ^name <oname1>
|
||||
# ^target.target-name <name1>
|
||||
# (<i2> ^name <oname2>
|
||||
# ^target.target-name <name2>
|
||||
# ^actions.pursue-target.pursuit-mode <pm2>)
|
||||
#-->
|
||||
# (write (crlf) |set-indifferent: Operator conflict between | <oname1> |:| <name1> |:| <pm1>| & | <oname2> |:| <name2>|:| <pm2>)
|
||||
# (<s> ^operator <i1> =)
|
||||
# (<s> ^operator <i2> =)
|
||||
#}
|
||||
@@ -0,0 +1,9 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
source impasse-conflict.soar
|
||||
@@ -0,0 +1,95 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
0
|
||||
@@ -0,0 +1,43 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
|
||||
|
||||
#copy the io to all substates
|
||||
sp {elaborate*state*io
|
||||
(state <s> ^superstate.io <io>)
|
||||
-->
|
||||
(<s> ^io <io>)
|
||||
}
|
||||
|
||||
|
||||
#sp {elaborate*write-proposals
|
||||
# (state <s> ^operator <o> +
|
||||
# ^io.output-link <ol>
|
||||
# ^name <sname>)
|
||||
# (<o> ^actions <act>
|
||||
# ^name <oname>)
|
||||
# (<act> ^<command-name> <command>)
|
||||
# (<command> ^<parameter-name> <parameter>)
|
||||
#-->
|
||||
# (write (crlf) |State: | <sname> | Proposed: | <oname> | Parameter: | <parameter> | Op: | <o>)
|
||||
#}
|
||||
|
||||
#sp {elaborate*stale-time
|
||||
# (state <s> ^io.input-link.current-time <ct>)
|
||||
#-->
|
||||
# (<s> ^stale-time (- <ct> 10))
|
||||
#}
|
||||
|
||||
##copy the top state to all substates
|
||||
#sp {elaborate*state*top-state
|
||||
# (state <s> ^superstate.top-state <ts>)
|
||||
#-->
|
||||
# (<s> ^top-state <ts>)
|
||||
#}
|
||||
@@ -0,0 +1,11 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
source _all.soar
|
||||
source monitor.soar
|
||||
source top-state.soar
|
||||
@@ -0,0 +1,106 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams michael.x.williams@boeing.com
|
||||
|
||||
#LBM - for debug
|
||||
#sp {all*monitor*output-link
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^io.output-link <out>)
|
||||
# (<out> ^<attr> <link>)
|
||||
# (<link> ^{ <> status <attr2> } <value>)
|
||||
# -->
|
||||
# (write (crlf) | Output Command: | <attr> |.| <attr2> | | <value>)
|
||||
#}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#sp {default*top-goal*halt*operator*failure
|
||||
# "Halt if no operator can be selected for the top goal."
|
||||
# :default
|
||||
# (state <s> ^superstate nil)
|
||||
# (state <ss> ^impasse conflict ^superstate <s>)
|
||||
#-->
|
||||
# (write (crlf) |Operator conflict.| )
|
||||
# (write (crlf) |Soar must halt.| )
|
||||
# (halt)
|
||||
#}
|
||||
|
||||
#sp {default*select*reject-and-reconsider*conflict
|
||||
# "Reject an object if it leads to a conflict that can not be solved."
|
||||
# :default
|
||||
# (state <s2> ^impasse conflict
|
||||
# ^attribute operator
|
||||
# ^superstate <s1>
|
||||
# ^item <obj>
|
||||
# ^quiescence t)
|
||||
# (state <s3> ^attribute state
|
||||
# ^choices none
|
||||
# ^superstate <s2>
|
||||
# ^quiescence t)
|
||||
# (state <s1> ^operator <obj> +)
|
||||
# -->
|
||||
# (<s1> ^operator <obj> -)
|
||||
#}
|
||||
|
||||
#sp {default*top-goal*halt*operator*failure
|
||||
# "Halt if no operator can be selected for the top goal."
|
||||
# :default
|
||||
# (state <s> ^superstate nil)
|
||||
# (state <ss> ^impasse constraint-failure ^superstate <s>)
|
||||
#-->
|
||||
# (write (crlf) |No operator can be selected for top goal.| )
|
||||
# (write (crlf) |Soar must halt.| )
|
||||
# (halt)
|
||||
#}
|
||||
|
||||
#sp {impasse-conflict*resolve*prefer-closest
|
||||
# (state <s> ^impasse conflict
|
||||
# ^item <i1>
|
||||
# ^item { <i2> <> <i1> } )
|
||||
# (<i1> ^name pursue-target
|
||||
# ^target.currently-targeted 1)
|
||||
# (<i2> ^name pursue-target
|
||||
# ^target.currently-targeted 0)
|
||||
#-->
|
||||
# (write (crlf) | prefer-closest: Operator conflict between | <name1> | & | <name2>)
|
||||
# (<s>
|
||||
#}
|
||||
|
||||
#### Monitor impasses I don't expect to get
|
||||
|
||||
#sp {all*monitor*impasse*state-no-change
|
||||
# (state <s> ^attribute state
|
||||
# ^choices none)
|
||||
#-->
|
||||
# (write (crlf) | State no-change impasse detected.|)
|
||||
# (cmd |stop-soar --self|)
|
||||
#}
|
||||
|
||||
#sp {all*monitor*operator*tie*impasse
|
||||
# (state <s> ^attribute operator
|
||||
# ^impasse tie
|
||||
# ^item <i1> ^item {<i2> <> <i1> })
|
||||
# (<i1> ^name <name1>)
|
||||
# (<i2> ^name <name2>)
|
||||
#-->
|
||||
# (write (crlf) | Operator tie between | <name1> | & | <name2>)
|
||||
# (cmd |stop-soar --self|)}
|
||||
#
|
||||
#sp {all*operator*impasse*tie*break
|
||||
# (state <s> ^attribute operator
|
||||
# ^impasse tie
|
||||
# ^item <o>
|
||||
# ^superstate <ss>)
|
||||
#-->
|
||||
# (write (crlf) | Make tied operators indifferent.|)
|
||||
# (<ss> ^operator <o> =)}
|
||||
#
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
|
||||
#sp {elaborate*top-state*top-state
|
||||
# (state <s> ^name RIPR-AIAI)
|
||||
#-->
|
||||
# (<s> ^top-state <s>)
|
||||
#}
|
||||
@@ -0,0 +1,26 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
|
||||
sp {propose*pursue-target*f-pole
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^io.input-link.track-root <tr>
|
||||
# ^target-name <tn>
|
||||
)
|
||||
(<tr> ^<target> <t>)
|
||||
(<t> ^target-name <tn>
|
||||
^weapons-in-flight <wif> > 0)
|
||||
-->
|
||||
(<s> ^operator <o> +)
|
||||
(<o> ^name pursue-target
|
||||
^target <t>
|
||||
^actions <a>)
|
||||
(<a> ^pursue-target <command>)
|
||||
(<command> ^pursuit-mode f-pole
|
||||
^target-name <tn>)
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
|
||||
sp {propose*initialize-RIPR-AIAI
|
||||
(state <s> ^superstate nil
|
||||
-^name)
|
||||
-->
|
||||
(<s> ^operator <o> +)
|
||||
(<o> ^name initialize-RIPR-AIAI)
|
||||
(write (crlf) |Propose init|)
|
||||
}
|
||||
|
||||
sp {apply*initialize-RIPR-AIAI
|
||||
(state <s> ^operator <op>)
|
||||
(<op> ^name initialize-RIPR-AIAI)
|
||||
-->
|
||||
(<s> ^name RIPR-AIAI)
|
||||
(write (crlf) |Done with init!|)
|
||||
}
|
||||
|
||||
@@ -0,0 +1,152 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
# AUTHOR: Michael Williams (michael.x.williams@boeing.com)
|
||||
|
||||
### RIPR-AIAI knows how to pick a target and pursue it
|
||||
|
||||
sp {evaluate*pursue-target*prefer-lag
|
||||
(state <s> ^name RIPR-AIAI
|
||||
# ^target-name <name1>
|
||||
^operator <o1> +
|
||||
^operator <o2> +)
|
||||
(<o1> ^name pursue-target
|
||||
^actions.pursue-target.pursuit-mode lag
|
||||
^target.target-name <name1>)
|
||||
(<o2> ^name pursue-target
|
||||
^actions.pursue-target.pursuit-mode pure
|
||||
^target.target-name <name1>)
|
||||
-->
|
||||
(<s> ^operator <o1> > <o2>)
|
||||
}
|
||||
|
||||
sp {evaluate*pursue-target*prefer-lead
|
||||
(state <s> ^name RIPR-AIAI
|
||||
# ^target-name <name1>
|
||||
^operator <o1> +
|
||||
^operator <o2> +)
|
||||
(<o1> ^name pursue-target
|
||||
^actions.pursue-target.pursuit-mode lead
|
||||
^target.target-name <name1>)
|
||||
(<o2> ^name pursue-target
|
||||
^actions.pursue-target.pursuit-mode << pure lag >>
|
||||
^target.target-name <name1>)
|
||||
-->
|
||||
(<s> ^operator <o1> > <o2>)
|
||||
}
|
||||
|
||||
sp {evaluate*pursue-target*prefer-f-pole
|
||||
(state <s> ^name RIPR-AIAI
|
||||
# ^target-name <name1>
|
||||
^operator <o1> +
|
||||
^operator <o2> +)
|
||||
(<o1> ^name pursue-target
|
||||
^actions.pursue-target.pursuit-mode f-pole
|
||||
^target.target-name <name1>)
|
||||
(<o2> ^name pursue-target
|
||||
^actions.pursue-target.pursuit-mode << pure lead lag >>
|
||||
^target.target-name <name1>)
|
||||
-->
|
||||
(<s> ^operator <o1> > <o2>)
|
||||
}
|
||||
|
||||
|
||||
#sp {monitor*pursue-target*counts
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o> +)
|
||||
# (<o> ^name pursue-target
|
||||
# ^target <t>)
|
||||
# (<t> ^target-name <name>
|
||||
# ^counted <c>)
|
||||
# (<c> ^name <val-name>
|
||||
# ^value <v>)
|
||||
#-->
|
||||
# (write (crlf) |count: | <name> | | <val-name> | | <v> )
|
||||
#}
|
||||
|
||||
|
||||
#sp {evaluate*proposed-actions-for-diff-targets*indifferent
|
||||
# (state <s> ^name check-target
|
||||
# ^operator <o1> +
|
||||
# ^operator <o2> +)
|
||||
# (<o1> ^actions.<command1>.target-name <name1>)
|
||||
# (<o2> ^actions.<command2>.target-name {<name2> <> <name1>})
|
||||
#-->
|
||||
# (<s> ^operator <o1> = <o2>)
|
||||
#}
|
||||
|
||||
|
||||
#sp {evaluate*pursue-target*prefer-high-score
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^operator { <o2> <> <o1> } +)
|
||||
# (<o1> ^name pursue-target
|
||||
# ^actions.pursue-target.job-bid <score1>
|
||||
# ^target.target-name <name1>)
|
||||
# (<o2> ^name pursue-target
|
||||
# ^actions.pursue-target.job-bid { <score2> < <score1> }
|
||||
# ^target.target-name <name2> <> <name1>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> > <o2>)
|
||||
# (write (crlf) |prefer-high-score: | <name1> | (| <score1> |) > | <name2> | (| <score2> |)|)
|
||||
#}
|
||||
|
||||
|
||||
#sp {evaluate*pursue-target*prefer-fastest-closer
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^operator <o2> +)
|
||||
# (<o1> ^target.closing-speed-of <cso1>)
|
||||
# (<o2> ^target.closing-speed-of <cso2> < <cso11>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> > <o2>)
|
||||
#}
|
||||
#
|
||||
#sp {evaluate*pursue-target*prefer-closest
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^operator <o2> +)
|
||||
# (<o1> ^target.slant-range-to <nls1>)
|
||||
# (<o2> ^target.slant-range-to <nls2> < <nls1>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> < <o2>)
|
||||
#}
|
||||
#
|
||||
#sp {evaluate*pursue-target*prefer-pure
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^operator <o2> +)
|
||||
# (<o1> ^actions.pursue-target.pursuit-mode pure
|
||||
# ^target <t>)
|
||||
# (<o2> ^actions.pursue-target.pursuit-mode << lead lag >>
|
||||
# ^target <t>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> < <o2>)
|
||||
#}
|
||||
#
|
||||
#sp {evaluate*pursue-target*prefer-lead
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^operator <o2> +)
|
||||
# (<o1> ^actions.pursue-target.pursuit-mode lead
|
||||
# ^target <t>)
|
||||
# (<o2> ^actions.pursue-target.pursuit-mode lag
|
||||
# ^target <t>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> < <o2>)
|
||||
#}
|
||||
|
||||
#sp {evaluate*pursue-target*prefer-current-target
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^operator <o2> +)
|
||||
# (<o1> ^target.currently-targeted 0)
|
||||
# (<o2> ^target.currently-targeted 1)
|
||||
#-->
|
||||
# (<s> ^operator <o1> < <o2>)
|
||||
#}
|
||||
@@ -0,0 +1,38 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
sp {propose*pursue-target*lag
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^io.input-link <il>
|
||||
^io.input-link.track-root <tr>
|
||||
# ^target-name <tn>
|
||||
)
|
||||
(<il> ^ownship-engagement-range-max <erx>)
|
||||
(<tr> ^<target> <t>)
|
||||
(<t> ^target-name <tn>
|
||||
^slant-range-to <srt> <= <erx>
|
||||
-^positioning <pos> << head-to-head head-to-tail >>)
|
||||
-->
|
||||
(<s> ^operator <o> +)
|
||||
(<o> ^name pursue-target
|
||||
^target <t>
|
||||
^actions <a>)
|
||||
(<a> ^pursue-target <command>)
|
||||
(<command> ^pursuit-mode lag
|
||||
^target-name <tn>)
|
||||
}
|
||||
|
||||
#sp {evaluate*pursue-target*reject-lag*closing-too-slow
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^io.input-link.ownship-closing-speed-min <csm>)
|
||||
# (<o1> ^actions.pursue-target.pursuit-mode lag
|
||||
# ^target.closing-speed-of <cso> < <csm>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> -)
|
||||
#}
|
||||
@@ -0,0 +1,61 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
sp {propose*pursue-target*lead*not-head-to-slower-than-target
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^io.input-link <il>
|
||||
^io.input-link.track-root <tr>
|
||||
# ^target-name <tn>
|
||||
)
|
||||
(<il> ^ownship-engagement-range-min <erm>
|
||||
# ^ownship-engagement-range-max <erx>
|
||||
^ownship-speed <os>)
|
||||
(<tr> ^<target> <t>)
|
||||
(<t> ^target-name <tn>
|
||||
^slant-range-to <srt> >= <erm>
|
||||
-^positioning <pos> << head-to-head head-to-tail >>
|
||||
^speed <spd> >= <os>)
|
||||
-->
|
||||
(<s> ^operator <o> +)
|
||||
(<o> ^name pursue-target
|
||||
^target <t>
|
||||
^actions <a>)
|
||||
(<a> ^pursue-target <command>)
|
||||
(<command> ^pursuit-mode lead
|
||||
^target-name <tn>)
|
||||
}
|
||||
|
||||
#sp {evaluate*pursue-target*reject-lead*closing-too-slow
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^io.input-link.ownship-closing-speed-min <csm>)
|
||||
# (<o1> ^actions.pursue-target.pursuit-mode lead
|
||||
# ^target.closing-speed-of <cso> < <csm>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> -)
|
||||
#}
|
||||
#
|
||||
#sp {evaluate*pursue-target*reject-lead*closing-too-fast
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^io.input-link.ownship-closing-speed-max <csx>)
|
||||
# (<o1> ^actions.pursue-target.pursuit-mode lead
|
||||
# ^target.closing-speed-of <cso> > <csx>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> -)
|
||||
#}
|
||||
|
||||
sp {evaluate*pursue-target*reject-lead*too-close
|
||||
(state <s> ^name check-target
|
||||
^operator <o1> +
|
||||
^io.input-link.ownship-engagement-range-max <erx>)
|
||||
(<o1> ^actions.pursue-target.pursuit-mode lead
|
||||
^target.slant-range-to <srt> < <erx>)
|
||||
-->
|
||||
(<s> ^operator <o1> -)
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
# ****************************************************************************
|
||||
# CUI
|
||||
#
|
||||
# The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
|
||||
#
|
||||
# The use, dissemination or disclosure of data in this file is subject to
|
||||
# limitation or restriction. See accompanying README and LICENSE for details.
|
||||
# ****************************************************************************
|
||||
sp {propose*pursue-target*pure*outside-max-range
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^io.input-link <il>
|
||||
^io.input-link.track-root <tr>
|
||||
# ^target-name <tn>
|
||||
)
|
||||
(<il> ^ownship-engagement-range-max <erx>)
|
||||
(<tr> ^<target> <t>)
|
||||
(<t> ^target-name <tn>
|
||||
^slant-range-to <srt> > <erx>)
|
||||
-->
|
||||
(<s> ^operator <o> +)
|
||||
(<o> ^name pursue-target
|
||||
^target <t>
|
||||
^actions <a>)
|
||||
(<a> ^pursue-target <command>)
|
||||
(<command> ^pursuit-mode pure
|
||||
^target-name <tn>)
|
||||
}
|
||||
|
||||
sp {propose*pursue-target*pure*inside-max-range-head-to-x
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^io.input-link <il>
|
||||
^io.input-link.track-root <tr>
|
||||
# ^target-name <tn>
|
||||
)
|
||||
(<il> ^ownship-engagement-range-max <erx>)
|
||||
(<tr> ^<target> <t>)
|
||||
(<t> ^target-name <tn>
|
||||
^slant-range-to <srt> <= <erx>
|
||||
^positioning <pos> << head-to-head head-to-tail >>)
|
||||
-->
|
||||
(<s> ^operator <o> +)
|
||||
(<o> ^name pursue-target
|
||||
^target <t>
|
||||
^actions <a>)
|
||||
(<a> ^pursue-target <command>)
|
||||
(<command> ^pursuit-mode pure
|
||||
^target-name <tn>)
|
||||
}
|
||||
|
||||
#this rule may not be necessary, consider removing?
|
||||
sp {evaluate*pursue-target*reject-pure*too-close-bad-positioning
|
||||
(state <s> ^name RIPR-AIAI
|
||||
^operator <o1> +
|
||||
^io.input-link.ownship-engagement-range-max <oerx>)
|
||||
(<o1> ^actions.pursue-target.pursuit-mode pure
|
||||
^target.slant-range-to <srt> < <oerx>
|
||||
-^target.positioning << head-to-head head-to-tail >>)
|
||||
-->
|
||||
(<s> ^operator <o1> -)
|
||||
}
|
||||
|
||||
#sp {evaluate*pursue-target*reject-pure*closing-too-fast-too-close
|
||||
# (state <s> ^name RIPR-AIAI
|
||||
# ^operator <o1> +
|
||||
# ^io.input-link.ownship-closing-speed-max <csx>
|
||||
## ^io.input-link.ownship-engagement-range-max <oerx>
|
||||
# )
|
||||
# (<o1> ^actions.pursue-target.pursuit-mode pure
|
||||
## ^target.slant-range-to <srt> < <oerx>
|
||||
# ^target.closing-speed-of <cso> > <csx>)
|
||||
#-->
|
||||
# (<s> ^operator <o1> -)
|
||||
#}
|
||||
Reference in New Issue
Block a user