-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdata.py
76 lines (64 loc) · 3.5 KB
/
data.py
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
max_volume = {
1: 15 * 0.4 + 15 * 0.8,
2: 15 * 0.4 + 15 * 0.8,
3: 20 * 0.4 + 20 * 0.8,
4: 20 * 0.4 + 20 * 0.8,
5: 15 * 0.4 + 15 * 0.8,
6: 20 * 0.4 + 20 * 0.8,
7: 30 * 0.4 + 30 * 0.8,
8: 30 * 0.4 + 30 * 0.8,
9: 35 * 0.4 + 35 * 0.8,
10: 25 * 0.4 + 25 * 0.8,
11: 30 * 0.4 + 30 * 0.8,
12: 30 * 0.4 + 30 * 0.8,
13: 30 * 0.4 + 30 * 0.8,
14: 35 * 0.4 + 35 * 0.8,
15: 30 * 0.4 + 30 * 0.8,
16: 40 * 0.4 + 40 * 0.8,
17: 25 * 0.4 + 25 * 0.8,
18: 20 * 0.4 + 20 * 0.8,
19: 15 * 0.4 + 15 * 0.8,
20: 20 * 0.4 + 20 * 0.8,
}
# location
# origin (0, 0) is top left corner of the rectangular outline of size (12 x 6)
shop_location = {
1: (2, 0),
2: (10, 0),
3: (3, 1),
4: (5, 1),
5: (8, 1),
6: (0, 2),
7: (2, 3),
8: (6, 3),
9: (10, 3),
10: (12, 3),
11: (1, 4),
12: (4, 4),
13: (11, 4),
14: (3, 5),
15: (8, 5),
16: (10, 5),
17: (2, 6),
18: (4, 6),
19: (7, 6),
20: (12, 6)
}
warehouse_location = [(4, 3), (9, 4)]
###############################
def get_warehouse_to_shop_distance():
# calculate rectilinear distance | x1 - x2 | + | y1 - y2 |
dij = [
[], []
]
for i, warehouse in enumerate(warehouse_location):
for shop in shop_location.values():
dij[i].append(abs(warehouse[0] - shop[0]) + abs(warehouse[1] - shop[1]))
return dij
dij = get_warehouse_to_shop_distance()
bip = [
[650, 650],
[650, 650]
]
ajp = [[[1, 6], [1, 5], [2, 6], [2, 8], [2, 5], [2, 8], [3, 13], [3, 9], [5, 12], [3, 9], [3, 10], [4, 12], [4, 13], [4, 12], [3, 11], [6, 12], [4, 10], [2, 7], [1, 6], [2, 7]],
[[3, 3], [3, 4], [5, 4], [4, 5], [4, 4], [6, 4], [7, 5], [6, 7], [8, 6], [6, 7], [8, 7], [6, 4], [7, 7], [7, 8], [6, 7], [11, 9], [6, 5], [4, 4], [4, 3], [4, 4]], [[4, 1], [4, 2], [6, 3], [7, 3], [6, 2], [5, 2], [11, 4], [9, 4], [12, 5], [6, 3], [9, 3], [10, 4], [10, 4], [9, 5], [9, 5], [14, 5], [8, 3], [7, 2], [6, 2], [8, 2]], [[7, 1], [6, 1], [9, 1], [7, 1], [5, 1], [7, 1], [12, 2], [13, 2], [15, 2], [10, 1], [12, 2], [10, 2], [11, 1], [15, 2], [12, 2], [18, 2], [11, 1], [10, 1], [5, 1], [9, 1]], [[7, 0], [8, 0], [9, 0], [10, 0], [8, 0], [7, 0], [12, 0], [21, 0], [18, 0], [14, 0], [12, 0], [16, 0], [14, 0], [15, 0], [14, 0], [18, 0], [9, 0], [8, 0], [7, 0], [10, 0]], [[6, 0], [5, 0], [8, 0], [9, 0], [6, 0], [9, 0], [11, 0], [14, 0], [18, 0], [11, 0], [15, 0], [14, 0], [16, 0], [15, 0], [17, 0], [17, 0], [13, 0], [9, 0], [7, 0], [8, 0]], [[7, 0], [6, 0], [9, 0], [8, 0], [7, 0], [12, 0], [12, 0], [14, 0], [17, 0], [12, 0], [15, 0], [14, 0], [14, 0], [18, 0], [13, 0], [19, 0], [12, 0], [9, 0], [5, 0], [9, 0]], [[7, 1], [7, 1], [8, 1], [7, 1], [8, 1], [9, 1], [12, 1], [13, 2], [11, 2], [9, 1], [13, 2], [15, 2], [10, 2], [11, 2], [13, 1], [19, 2], [11, 1], [8, 1], [5, 0], [9, 1]], [[5, 1], [4, 2], [7, 2], [6, 2], [4, 2], [7, 3], [11, 3], [11, 3], [12, 4], [10, 3], [10, 4], [10, 4], [10, 4], [10, 4], [11, 4], [14, 6], [7, 2], [6, 2], [4, 2], [8, 2]], [[4, 3], [4, 3], [5, 5], [5, 3], [3, 4], [5, 4], [8, 6], [7, 7], [6, 8], [5, 6], [6, 6], [6, 7], [8, 7], [9, 8], [8, 7], [8, 8], [6, 4], [4, 4], [3, 3], [5, 4]], [[1, 4], [1, 5], [2, 7], [2, 7], [2, 5], [2, 7], [3, 9], [4, 11], [4, 10], [3, 8], [3, 11], [3, 11], [3, 8], [4, 15], [4, 11], [5, 14], [3, 9], [2, 8], [1, 6], [1, 6]], [[0, 6], [0, 8], [0, 10], [0, 10], [0, 7], [0, 10], [0, 13], [0, 15], [0, 14], [0, 12], [0, 12], [0, 13], [0, 14], [0, 18], [0, 15], [0, 20], [0, 13], [0, 7], [0, 7], [0, 10]]]