This repository was archived by the owner on Jul 18, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmining-robots-OS.xml
More file actions
111 lines (95 loc) · 4.06 KB
/
mining-robots-OS.xml
File metadata and controls
111 lines (95 loc) · 4.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://moise.sourceforge.net/xml/os.xsl" type="text/xsl" ?>
<organisational-specification
id="mining-robots"
os-version="0.3"
xmlns='http://moise.sourceforge.net/os'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xsi:schemaLocation='http://moise.sourceforge.net/os http://moise.sourceforge.net/xml/os.xsd' >
<structural-specification>
<role-definitions>
<role id="miner"/>
<role id="leader">
<extends role="miner"/>
</role>
<role id="courier">
<extends role="miner"/>
</role>
</role-definitions>
<link-types>
<link-type id="authority"/>
<link-type id="acquaintance"/>
<link-type id="communication"/>
</link-types>
<group-specification id="team">
<roles>
<role id="miner"/>
<role id="leader"/>
<role id="courier"/>
</roles>
<links>
<link from="miner" to="miner"
type="communication"
scope="intra-group"
bi-dir="false"/>
<link from="leader" to="miner"
type="authority"
scope="intra-group"
bi-dir="false"/>
</links>
<formation-constraints>
<cardinality min="4" max="4" object="role" id="miner"/>
<cardinality min="1" max="1" object="role" id="leader"/>
<cardinality min="1" max="1" object="role" id="courier"/>
<compatibility from="miner" to="leader" type="compatibility" scope="intra-group" extends-subgroups="false" bi-dir="true"/>
<compatibility from="miner" to="courier" type="compatibility" scope="intra-group" extends-subgroups="false" bi-dir="true"/>
<compatibility from="courier" to="leader" type="compatibility" scope="intra-group" extends-subgroups="false" bi-dir="true"/>
</formation-constraints>
</group-specification>
</structural-specification>
<functional-specification>
<scheme id="meeting_point" >
<goal id="mp(X,Y)" >
<plan operator="sequence" >
<goal id="proposeMP" />
<goal id="goldAtDepot" min="1" >
<plan operator="choice" >
<goal id="option1">
<plan operator="sequence" >
<goal id="agreeMP"/>
<goal id="gotoMP"/>
<goal id="courierCarryGoldToDepot"/>
</plan>
</goal>
<goal id="option2">
<plan operator="sequence" >
<goal id="refuseMP"/>
<goal id="minerCarryGoldToDepot"/>
</plan>
</goal>
</plan>
</goal>
</plan>
</goal>
<mission id="mMiner" min="1" max="1">
<goal id="mp"/>
<goal id="proposeMP"/>
<goal id="goldAtDepot"/>
<goal id="gotoMP"/>
<goal id="minerCarryGoldToDepot"/>
</mission>
<mission id="mCourier" min="1" max="1">
<goal id="goldAtDepot"/>
<goal id="option1"/>
<goal id="option2"/>
<goal id="agreeMP"/>
<goal id="refuseMP"/>
<goal id="courierCarryGoldToDepot"/>
</mission>
</scheme>
</functional-specification>
<normative-specification>
<norm id="n1" type="permission" role="miner" mission="mMiner" />
<norm id="n2" type="obligation" role="courier" mission="mCourier" />
</normative-specification>
</organisational-specification>