-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathproblem_SDMP.pddl
More file actions
99 lines (75 loc) · 5.28 KB
/
problem_SDMP.pddl
File metadata and controls
99 lines (75 loc) · 5.28 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
(define (problem CITYMANAGER)
(:domain CITY_MANAGER)
(:objects Hub1 - hub
Waterloo - position
Strand - position
LONDON_EYE - position
China_Town - position
National_Gallery - position
car1 - car
car2 - car
package1 - goods
package2 - goods
package3 - goods
package4 - goods
package5 - goods
package6 - goods
UAV1 - UAV
UAV2 - UAV
robot1 - robot
robot2 - robot
)
(:init (free car1) (free car2) (free UAV1) (free UAV2) (free robot1) (free robot2) (at car1 Hub1) (at package1 Hub1)
(at package2 Hub1) (at package3 Hub1) (at package4 Hub1) (at package5 Hub1)
(at UAV1 Hub1) (at UAV2 Hub1) (at robot1 Hub1) (at robot2 Hub1) (at car2 Hub1)
(path Hub1 Waterloo) (path Waterloo Hub1)
(path Hub1 Strand) (path Strand Hub1)
(path Waterloo Strand) (path Strand Waterloo)
(path Waterloo LONDON_EYE) (path LONDON_EYE Waterloo)
(path Strand National_Gallery) (path National_Gallery Strand)
(path Strand China_Town) (path China_Town Strand)
(=(total_power)0)
(=(distance_land Hub1 Waterloo)100) (=(distance_land Waterloo Hub1)100)
(=(distance_land Hub1 Strand)80) (=(distance_land Strand Hub1)80)
(=(distance_land Waterloo Strand)100) (=(distance_land Strand Waterloo)100)
(=(distance_land Waterloo LONDON_EYE)70) (=(distance_land LONDON_EYE Waterloo)70)
(=(distance_land Strand National_Gallery)100) (=(distance_land National_Gallery Strand)100)
(=(distance_land Strand China_Town)70) (=(distance_land China_Town Strand)70)
(=(distance_air Hub1 Waterloo)80) (=(distance_air Waterloo Hub1)80)
(=(distance_air Hub1 LONDON_EYE)90) (=(distance_air LONDON_EYE Hub1)90)
(=(distance_air Hub1 Strand)50) (=(distance_air Strand Hub1)50)
(=(distance_air Hub1 National_Gallery)80) (=(distance_air Waterloo Hub1)80)
(=(distance_air Hub1 China_Town)100) (=(distance_air China_Town Hub1)100)
; max total movement for car:1000km
; max total movement for UAV: 200km
; max total movement for robot: 500km
(=(weight package1)50) (=(weight package2)50) (=(weight package3)50) (=(weight package4)50) (=(weight package5)50)
(=(speed car1)150) (=(speed car2)150) (=(speed UAV1)100) (=(speed UAV2)100) (=(speed robot1)50) (=(speed robot2)50)
(=(power_used_rate car1)12) (=(power_used_rate car2)12) (=(power_used_rate UAV1)30) (=(power_used_rate UAV2)30)
(=(power_used_rate robot1)10) (=(power_used_rate robot2)10)
(=(load_time car1)0.1) (=(load_time car2)0.1) (=(unload_time car1)0.1) (=(unload_time car2)0.1)
(=(load_time robot1)0.1) (=(load_time robot2)0.1) (=(load_time UAV1)0.1) (=(load_time UAV2)0.1)
(=(unload_time robot1)0.1) (=(unload_time robot2)0.1) (=(unload_time UAV1)0.1) (=(unload_time UAV2)0.1)
(=(carrying_capacity UAV1)50) (=(carrying_capacity UAV2)50) (=(carrying_capacity robot1)100) (=(carrying_capacity robot2)100)
(=(goods_position_available car1)3) (=(goods_position_available car2)3)
(=(goods_position_available robot1)1) (=(goods_position_available robot2)1)
(=(goods_position_available UAV1)1) (=(goods_position_available UAV2)1)
(=(robot_position_available car1)2) (=(robot_position_available car2)2)
(=(max_robot_position car1)2) (=(max_robot_position car2)2)
(=(max_goods_position car1)3) (=(max_goods_position car2)3)
(=(max_goods_position robot1)1) (=(max_goods_position robot2)1)
(=(max_goods_position UAV1)1) (=(max_goods_position UAV2)1)
(=(charge_rate_in_hub car1)20) (=(charge_rate_in_hub car2)20) (=(charge_rate_in_hub UAV1)30) (=(charge_rate_in_hub UAV2)30)
(=(charge_rate_in_hub robot1)30) (=(charge_rate_in_hub robot2)30)
(=(charge_rate_in_car robot1)5) (=(charge_rate_in_car robot2)5)
(=(power_level car1)100) (=(power_level car2)100) (=(power_level UAV1)100) (=(power_level UAV2)100) (=(power_level robot1)100)
(=(power_level robot2)100)
)
(:goal (and
(at package1 China_Town)(at package2 Strand) (at package3 Waterloo) (at package4 National_Gallery) (at package5 LONDON_EYE)
)
)
(:metric
minimize (total-time)
)
)