route4me 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0879f426bd8d43e25b855a940717c91b58c6b8a3
4
+ data.tar.gz: 6bdc3b5ed82c878889a5aeb8d2a9a531a022d323
5
+ SHA512:
6
+ metadata.gz: e75c447be83c2e45f7c85218b86743d588e9145cac3fe7c22ba89c404518797d5f10b52ea07ff3b9cd548395b89ab8ded5e73ad39a714f6b28d3d9b825b1fa12
7
+ data.tar.gz: cfc64a48993dba14010710d9b92f910db4073b6c1641074f28edae5dcd1af4a3b17ad429b8660845febc434e9c8421071c1f4ffede0f49f6394097c5ead0580e
@@ -0,0 +1,4 @@
1
+ /route4me-*.gem
2
+ /Gemfile.lock
3
+ .rvmrc
4
+ Gemfile.lock
@@ -0,0 +1,10 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.2
4
+ - 1.9.3
5
+ - 2.0.0
6
+ - 2.1.0
7
+ script: bundle exec rspec
8
+ notifications:
9
+ email:
10
+ - igor@route4me.com
data/Gemfile ADDED
@@ -0,0 +1,2 @@
1
+ source "https://rubygems.org"
2
+ gemspec
@@ -0,0 +1,72 @@
1
+ Route4Me Ruby SDK
2
+ -----------------
3
+
4
+ Access Route4Me's logistics-as-a-service API using our Ruby SDK
5
+
6
+ ## Installation
7
+
8
+ ```
9
+ gem install --source https://github.com/route4me/route4me-ruby-sdk route4me
10
+ # or
11
+ gem install route4me
12
+ ```
13
+
14
+ ## Usage example
15
+
16
+ ### Single Driver Route Optimization
17
+
18
+ ```ruby
19
+ require 'route4me'
20
+ require './addresses'
21
+
22
+ Route4me.api_key = '11111111111111111111111111111111'
23
+ problem = Route4me::OptimizationProblem.optimize(
24
+ :addresses => addresses.first(10),
25
+ :parameters => {
26
+ :algorithm_type => Route4me::AlgorithmType::TSP,
27
+ :distance_unit => Route4me::DistanceUnit::MILES,
28
+ :device_type => Route4me::DeviceType::WEB,
29
+ :optimize => Route4me::OptimizationType::DISTANCE,
30
+ :travel_mode => Route4me::TravelMode::DRIVING,
31
+ :vehicle_capacity => 1,
32
+ :vehicle_max_distance_mi => 10000
33
+ }
34
+ )
35
+
36
+ puts problem
37
+ ```
38
+
39
+ ### Multiple Depot Multiple driver route optimization
40
+
41
+ ```ruby
42
+ require 'route4me'
43
+ require './addresses'
44
+
45
+ Route4me.api_key = '11111111111111111111111111111111'
46
+ problem = Route4me::OptimizationProblem.optimize(
47
+ :addresses => addresses,
48
+ :parameters => {
49
+ :algorithm_type => Route4me::AlgorithmType::CVRP_TW_MD,
50
+ :distance_unit => Route4me::DistanceUnit::MILES,
51
+ :device_type => Route4me::DeviceType::WEB,
52
+ :optimize => Route4me::OptimizationType::DISTANCE,
53
+ :travel_mode => Route4me::TravelMode::DRIVING,
54
+ :route_max_duration => 86400,
55
+ :vehicle_capacity => 50,
56
+ :vehicle_max_distance_mi => 10000,
57
+ :parts => 50
58
+ }
59
+ )
60
+
61
+ puts problem
62
+ ```
63
+
64
+ ### More examples
65
+
66
+ Please see [examples](examples/) folder for more examples, which are to demonstrate examples of Route & GPS calls and some optimization problems (single driver, round trip, multiple driver, time window, re-optimization).
67
+
68
+ ## Tests
69
+
70
+ ```
71
+ rspec spec
72
+ ```
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.1.0
@@ -0,0 +1,410 @@
1
+ [
2
+ {
3
+ "lng": -85.757308,
4
+ "lat": 38.251698,
5
+ "is_depot": true,
6
+ "time": 300,
7
+ "sequence_no": 0,
8
+ "address": "455 S 4th St, Louisville, KY 40202"
9
+ },
10
+ {
11
+ "lng": -85.793846,
12
+ "lat": 38.141598,
13
+ "is_depot": false,
14
+ "time": 300,
15
+ "sequence_no": 1,
16
+ "address": "1604 PARKRIDGE PKWY, Louisville, KY, 40214"
17
+ },
18
+ {
19
+ "lng": -85.786514,
20
+ "lat": 38.202496,
21
+ "is_depot": false,
22
+ "time": 300,
23
+ "sequence_no": 2,
24
+ "address": "1407 MCCOY, Louisville, KY, 40215"
25
+ },
26
+ {
27
+ "lng": -85.774864,
28
+ "lat": 38.178844,
29
+ "is_depot": false,
30
+ "time": 300,
31
+ "sequence_no": 3,
32
+ "address": "4805 BELLEVUE AVE, Louisville, KY, 40215"
33
+ },
34
+ {
35
+ "lng": -85.821121,
36
+ "lat": 38.248684,
37
+ "is_depot": false,
38
+ "time": 300,
39
+ "sequence_no": 4,
40
+ "address": "730 CECIL AVENUE, Louisville, KY, 40211"
41
+ },
42
+ {
43
+ "lng": -85.800034,
44
+ "lat": 38.251923,
45
+ "is_depot": false,
46
+ "time": 300,
47
+ "sequence_no": 5,
48
+ "address": "650 SOUTH 29TH ST UNIT 315, Louisville, KY, 40211"
49
+ },
50
+ {
51
+ "lng": -85.824638,
52
+ "lat": 38.176067,
53
+ "is_depot": false,
54
+ "time": 300,
55
+ "sequence_no": 6,
56
+ "address": "4629 HILLSIDE DRIVE, Louisville, KY, 40216"
57
+ },
58
+ {
59
+ "lng": -85.775558,
60
+ "lat": 38.179806,
61
+ "is_depot": false,
62
+ "time": 300,
63
+ "sequence_no": 7,
64
+ "address": "4738 BELLEVUE AVE, Louisville, KY, 40215"
65
+ },
66
+ {
67
+ "lng": -85.815094,
68
+ "lat": 38.259335,
69
+ "is_depot": false,
70
+ "time": 300,
71
+ "sequence_no": 8,
72
+ "address": "318 SO. 39TH STREET, Louisville, KY, 40212"
73
+ },
74
+ {
75
+ "lng": -85.785118,
76
+ "lat": 38.179253,
77
+ "is_depot": false,
78
+ "time": 300,
79
+ "sequence_no": 9,
80
+ "address": "1324 BLUEGRASS AVE, Louisville, KY, 40215"
81
+ },
82
+ {
83
+ "lng": -85.792854,
84
+ "lat": 38.162472,
85
+ "is_depot": false,
86
+ "time": 300,
87
+ "sequence_no": 10,
88
+ "address": "7305 ROYAL WOODS DR, Louisville, KY, 40214"
89
+ },
90
+ {
91
+ "lng": -85.783966,
92
+ "lat": 38.229584,
93
+ "is_depot": false,
94
+ "time": 300,
95
+ "sequence_no": 11,
96
+ "address": "1661 W HILL ST, Louisville, KY, 40210"
97
+ },
98
+ {
99
+ "lng": -85.822594,
100
+ "lat": 38.210606,
101
+ "is_depot": false,
102
+ "time": 300,
103
+ "sequence_no": 12,
104
+ "address": "3222 KINGSWOOD WAY, Louisville, KY, 40216"
105
+ },
106
+ {
107
+ "lng": -85.796783,
108
+ "lat": 38.153767,
109
+ "is_depot": false,
110
+ "time": 300,
111
+ "sequence_no": 13,
112
+ "address": "1922 PALATKA RD, Louisville, KY, 40214"
113
+ },
114
+ {
115
+ "lng": -85.796852,
116
+ "lat": 38.235847,
117
+ "is_depot": false,
118
+ "time": 300,
119
+ "sequence_no": 14,
120
+ "address": "1314 SOUTH 26TH STREET, Louisville, KY, 40210"
121
+ },
122
+ {
123
+ "lng": -85.789032,
124
+ "lat": 38.218662,
125
+ "is_depot": false,
126
+ "time": 300,
127
+ "sequence_no": 15,
128
+ "address": "2135 MCCLOSKEY AVENUE, Louisville, KY, 40210"
129
+ },
130
+ {
131
+ "lng": -85.781387,
132
+ "lat": 38.206154,
133
+ "is_depot": false,
134
+ "time": 300,
135
+ "sequence_no": 16,
136
+ "address": "1409 PHYLLIS AVE, Louisville, KY, 40215"
137
+ },
138
+ {
139
+ "lng": -85.839149,
140
+ "lat": 38.187511,
141
+ "is_depot": false,
142
+ "time": 300,
143
+ "sequence_no": 17,
144
+ "address": "4504 SUNFLOWER AVE, Louisville, KY, 40216"
145
+ },
146
+ {
147
+ "lng": -85.795059,
148
+ "lat": 38.241405,
149
+ "is_depot": false,
150
+ "time": 300,
151
+ "sequence_no": 18,
152
+ "address": "2512 GREENWOOD AVE, Louisville, KY, 40210"
153
+ },
154
+ {
155
+ "lng": -85.863319,
156
+ "lat": 38.166065,
157
+ "is_depot": false,
158
+ "time": 300,
159
+ "sequence_no": 19,
160
+ "address": "5500 WILKE FARM AVE, Louisville, KY, 40216"
161
+ },
162
+ {
163
+ "lng": -85.786201,
164
+ "lat": 38.193283,
165
+ "is_depot": false,
166
+ "time": 300,
167
+ "sequence_no": 20,
168
+ "address": "3640 LENTZ AVE, Louisville, KY, 40215"
169
+ },
170
+ {
171
+ "lng": -85.780037,
172
+ "lat": 38.17952,
173
+ "is_depot": false,
174
+ "time": 300,
175
+ "sequence_no": 21,
176
+ "address": "1020 BLUEGRASS AVE, Louisville, KY, 40215"
177
+ },
178
+ {
179
+ "lng": -85.814156,
180
+ "lat": 38.26498,
181
+ "is_depot": false,
182
+ "time": 300,
183
+ "sequence_no": 22,
184
+ "address": "123 NORTH 40TH ST, Louisville, KY, 40212"
185
+ },
186
+ {
187
+ "lng": -85.802867,
188
+ "lat": 38.151072,
189
+ "is_depot": false,
190
+ "time": 300,
191
+ "sequence_no": 23,
192
+ "address": "7315 ST ANDREWS WOODS CIRCLE UNIT 104, Louisville, KY, 40214"
193
+ },
194
+ {
195
+ "lng": -85.849937,
196
+ "lat": 38.182594,
197
+ "is_depot": false,
198
+ "time": 300,
199
+ "sequence_no": 24,
200
+ "address": "3210 POPLAR VIEW DR, Louisville, KY, 40216"
201
+ },
202
+ {
203
+ "lng": -85.811447,
204
+ "lat": 38.1754,
205
+ "is_depot": false,
206
+ "time": 300,
207
+ "sequence_no": 25,
208
+ "address": "4519 LOUANE WAY, Louisville, KY, 40216"
209
+ },
210
+ {
211
+ "lng": -85.798279,
212
+ "lat": 38.161839,
213
+ "is_depot": false,
214
+ "time": 300,
215
+ "sequence_no": 26,
216
+ "address": "6812 MANSLICK RD, Louisville, KY, 40214"
217
+ },
218
+ {
219
+ "lng": -85.788353,
220
+ "lat": 38.172031,
221
+ "is_depot": false,
222
+ "time": 300,
223
+ "sequence_no": 27,
224
+ "address": "1524 HUNTOON AVENUE, Louisville, KY, 40215"
225
+ },
226
+ {
227
+ "lng": -85.779816,
228
+ "lat": 38.209663,
229
+ "is_depot": false,
230
+ "time": 300,
231
+ "sequence_no": 28,
232
+ "address": "1307 LARCHMONT AVE, Louisville, KY, 40215"
233
+ },
234
+ {
235
+ "lng": -85.791962,
236
+ "lat": 38.26844,
237
+ "is_depot": false,
238
+ "time": 300,
239
+ "sequence_no": 29,
240
+ "address": "434 N 26TH STREET #2, Louisville, KY, 40212"
241
+ },
242
+ {
243
+ "lng": -85.80629,
244
+ "lat": 38.250397,
245
+ "is_depot": false,
246
+ "time": 300,
247
+ "sequence_no": 30,
248
+ "address": "678 WESTLAWN ST, Louisville, KY, 40211"
249
+ },
250
+ {
251
+ "lng": -85.790421,
252
+ "lat": 38.248882,
253
+ "is_depot": false,
254
+ "time": 300,
255
+ "sequence_no": 31,
256
+ "address": "2308 W BROADWAY, Louisville, KY, 40211"
257
+ },
258
+ {
259
+ "lng": -85.794257,
260
+ "lat": 38.233579,
261
+ "is_depot": false,
262
+ "time": 300,
263
+ "sequence_no": 32,
264
+ "address": "2332 WOODLAND AVE, Louisville, KY, 40210"
265
+ },
266
+ {
267
+ "lng": -85.783928,
268
+ "lat": 38.239697,
269
+ "is_depot": false,
270
+ "time": 300,
271
+ "sequence_no": 33,
272
+ "address": "1706 WEST ST. CATHERINE, Louisville, KY, 40210"
273
+ },
274
+ {
275
+ "lng": -85.792397,
276
+ "lat": 38.216465,
277
+ "is_depot": false,
278
+ "time": 300,
279
+ "sequence_no": 34,
280
+ "address": "1699 WATHEN LN, Louisville, KY, 40216"
281
+ },
282
+ {
283
+ "lng": -85.831787,
284
+ "lat": 38.186245,
285
+ "is_depot": false,
286
+ "time": 300,
287
+ "sequence_no": 35,
288
+ "address": "2416 SUNSHINE WAY, Louisville, KY, 40216"
289
+ },
290
+ {
291
+ "lng": -85.798355,
292
+ "lat": 38.158466,
293
+ "is_depot": false,
294
+ "time": 300,
295
+ "sequence_no": 36,
296
+ "address": "6925 MANSLICK RD, Louisville, KY, 40214"
297
+ },
298
+ {
299
+ "lng": -85.785082,
300
+ "lat": 38.212438,
301
+ "is_depot": false,
302
+ "time": 300,
303
+ "sequence_no": 37,
304
+ "address": "2707 7TH ST, Louisville, KY, 40215"
305
+ },
306
+ {
307
+ "lng": -85.826668,
308
+ "lat": 38.179394,
309
+ "is_depot": false,
310
+ "time": 300,
311
+ "sequence_no": 38,
312
+ "address": "2014 KENDALL LN, Louisville, KY, 40216"
313
+ },
314
+ {
315
+ "lng": -85.812012,
316
+ "lat": 38.273354,
317
+ "is_depot": false,
318
+ "time": 300,
319
+ "sequence_no": 39,
320
+ "address": "612 N 39TH ST, Louisville, KY, 40212"
321
+ },
322
+ {
323
+ "lng": -85.786781,
324
+ "lat": 38.261703,
325
+ "is_depot": false,
326
+ "time": 300,
327
+ "sequence_no": 40,
328
+ "address": "2215 ROWAN ST, Louisville, KY, 40212"
329
+ },
330
+ {
331
+ "lng": -85.78653,
332
+ "lat": 38.241611,
333
+ "is_depot": false,
334
+ "time": 300,
335
+ "sequence_no": 41,
336
+ "address": "1826 W. KENTUCKY ST, Louisville, KY, 40210"
337
+ },
338
+ {
339
+ "lng": -85.796211,
340
+ "lat": 38.224716,
341
+ "is_depot": false,
342
+ "time": 300,
343
+ "sequence_no": 42,
344
+ "address": "1810 GREGG AVE, Louisville, KY, 40210"
345
+ },
346
+ {
347
+ "lng": -85.825836,
348
+ "lat": 38.191753,
349
+ "is_depot": false,
350
+ "time": 300,
351
+ "sequence_no": 43,
352
+ "address": "4103 BURRRELL DRIVE, Louisville, KY, 40216"
353
+ },
354
+ {
355
+ "lng": -85.823463,
356
+ "lat": 38.259903,
357
+ "is_depot": false,
358
+ "time": 300,
359
+ "sequence_no": 44,
360
+ "address": "359 SOUTHWESTERN PKWY, Louisville, KY, 40212"
361
+ },
362
+ {
363
+ "lng": -85.792109,
364
+ "lat": 38.252781,
365
+ "is_depot": false,
366
+ "time": 300,
367
+ "sequence_no": 45,
368
+ "address": "2407 W CHESTNUT ST, Louisville, KY, 40211"
369
+ },
370
+ {
371
+ "lng": -85.786658,
372
+ "lat": 38.257616,
373
+ "is_depot": false,
374
+ "time": 300,
375
+ "sequence_no": 46,
376
+ "address": "225 S 22ND ST, Louisville, KY, 40212"
377
+ },
378
+ {
379
+ "lng": -85.786072,
380
+ "lat": 38.202122,
381
+ "is_depot": false,
382
+ "time": 300,
383
+ "sequence_no": 47,
384
+ "address": "1404 MCCOY AVE, Louisville, KY, 40215"
385
+ },
386
+ {
387
+ "lng": -85.799438,
388
+ "lat": 38.270061,
389
+ "is_depot": false,
390
+ "time": 300,
391
+ "sequence_no": 48,
392
+ "address": "117 FOUNT LANDING CT, Louisville, KY, 40212"
393
+ },
394
+ {
395
+ "lng": -85.7798,
396
+ "lat": 38.145851,
397
+ "is_depot": false,
398
+ "time": 300,
399
+ "sequence_no": 49,
400
+ "address": "5504 SHOREWOOD DRIVE, Louisville, KY, 40214"
401
+ },
402
+ {
403
+ "lng": -85.780251,
404
+ "lat": 38.211025,
405
+ "is_depot": false,
406
+ "time": 300,
407
+ "sequence_no": 50,
408
+ "address": "1406 CENTRAL AVE, Louisville, KY, 40208"
409
+ }
410
+ ]