mck- / Open-VRP

Open-source framework for modeling Vehicle Routing Problems.
310 stars 86 forks source link

Increase performance of Tabu Search #19

Open mck- opened 12 years ago

mck- commented 12 years ago

Profile results of Tabu Search on solomon100 with 300 iterations (Tue 13 Mar, 2012) (Open-VRP v 0.5 -- Intel(R) Core(TM) i5 CPU M 520 @ 2.40GHz -- 4GB)

seconds  |     gc     |     consed    |    calls    |  sec/call  |  name  

26.118 |      0.936 | 1,311,487,712 |  25,107,886 |   0.000001 | ROUTE-INDICES
17.093 |      0.000 |       106,344 |  21,381,787 |   0.000001 | NODE-DISTANCE
 9.436 |      0.000 |        80,008 |   9,638,717 |   0.000001 | NODE
 9.335 |      0.156 |   170,091,848 |  21,381,787 |   0.000000 | OPEN-VRP.UTIL::DISTANCE-COORDS
 8.428 |      0.000 |        74,248 |   8,049,010 |   0.000001 | VEHICLE
 5.399 |      0.024 |    63,482,488 |   9,869,463 |   0.000001 | TIME-AFTER-SERVING-NODE
 5.348 |      0.000 |         4,248 |  13,122,868 |   0.000000 | NODE-ID
 5.091 |      0.000 |    12,483,496 |     366,157 |   0.000014 | SORT-IGNORE-NIL
 4.544 |      0.000 |         4,568 |  11,639,224 |   0.000000 | NODE-END
 4.447 |      0.116 |   130,699,528 |     365,677 |   0.000012 | OPEN-VRP.ALGO::GENERATE-INSERTION-MOVES
 4.168 |      0.000 |             0 |  10,220,055 |   0.000000 | MOVE-FITNESS
 3.508 |      0.000 |           256 |   9,638,959 |   0.000000 | PROBLEM-NETWORK
 3.468 |      0.000 |         4,504 |   8,538,766 |   0.000000 | PROBLEM-FLEET
 2.780 |      0.000 |           728 |   6,581,171 |   0.000000 | VEHICLE-ROUTE
 2.694 |      0.000 |        19,616 |   2,724,639 |   0.000001 | NODE-ON-ROUTEP
 2.571 |      0.000 |       105,504 |   1,617,893 |   0.000002 | EMPTY-ROUTEP
 2.559 |      0.012 |    28,142,048 |     436,600 |   0.000006 | ONE-DESTINATIONP
 1.839 |      0.000 |         4,440 |   2,575,481 |   0.000001 | IN-CAPACITYP
 1.621 |      0.004 |    30,858,912 |   1,308,832 |   0.000001 | DISTANCE
 1.604 |      0.000 |             8 |   3,138,302 |   0.000001 | PROBLEM-TO-DEPOT
 1.188 |      0.000 |            48 |   2,724,639 |   0.000000 | (SETF MOVE-FITNESS)
 1.129 |      0.000 |             0 |   2,532,335 |   0.000000 | NODE-DEMAND
 0.625 |      0.000 |     9,587,304 |     122,321 |   0.000005 | OPEN-VRP.UTIL::GET-FROM-LIST
mck- commented 12 years ago

Latest profile report -- a total of 67% performance increase since first profile!

seconds | gc | consed | calls | sec/call | name

 3.437 |      0.556 | 1,579,606,944 |      24,401 |   0.000141 | MAP0-N
 1.099 |      0.000 |     8,100,648 |     506,863 |   0.000002 | OPEN-VRP.ALGO::ROUTE-FROM
 0.846 |      0.024 |    64,999,872 |   9,869,875 |   0.000000 | TIME-AFTER-SERVING-NODE
 0.613 |      0.000 |         4,416 |   2,633,583 |   0.000000 | IN-CAPACITYP
 0.489 |      0.000 |           592 |  10,339,677 |   0.000000 | MOVE-FITNESS
 0.440 |      0.016 |    40,009,152 |   1,473,863 |   0.000000 | DISTANCE
 0.434 |      0.016 |    39,365,000 |           1 |   0.434189 | PLOT-SOLUTION
 0.432 |      0.008 |    22,722,632 |     395,640 |   0.000001 | OPEN-VRP.ALGO::GENERATE-INSERTION-MOVES
 0.344 |      0.016 |    31,572,048 |     505,400 |   0.000001 | ONE-DESTINATIONP
 0.315 |      0.000 |         5,912 |   1,668,087 |   0.000000 | EMPTY-ROUTEP
 0.312 |      0.048 |   169,998,760 |  21,309,182 |   0.000000 | OPEN-VRP.UTIL::DISTANCE-COORDS
 0.200 |      0.024 |    80,683,144 |          10 |   0.019998 | OPEN-VRP.UTIL::DRAW-LEGEND-ITEM
 0.176 |      0.052 |    66,820,824 |   2,793,941 |   0.000000 | MAKE-INSERTION-MOVE
 0.100 |      0.000 |           440 |     539,485 |   0.000000 | OPEN-VRP.ALGO::ROUTE-TO
 0.098 |      0.008 |     9,928,688 |     149,080 |   0.000001 | OPEN-VRP.UTIL::GET-FROM-LIST
 0.021 |      0.000 |        20,472 |     198,116 |   0.000000 | OPEN-VRP.UTIL::VRP-OBJECT
 0.007 |      0.000 |             0 |       2,668 |   0.000003 | IS-TABUP
 0.004 |      0.000 |             0 |         301 |   0.000013 | LOG-MODE
 0.004 |      0.000 |             0 |         544 |   0.000007 | (SETF TS-CANDIDATE-LIST)
 0.003 |      0.000 |        24,576 |         850 |   0.000004 | SUM
 0.003 |      0.000 |        57,336 |         600 |   0.000005 | REMOVE-NODE-ID
 0.002 |      0.000 |             0 |       2,793 |   0.000001 | TS-PARAMETER-F
 0.002 |      0.000 |             0 |       3,028 |   0.000001 | TS-TABU-LIST
 0.001 |      0.000 |             0 |         300 |   0.000004 | OPEN-VRP.ALGO::REMOVE-AFFECTED-MOVES
 0.000 |      0.040 |    45,546,376 |     395,640 |   0.000000 | GET-BEST-INSERTION-MOVE-IN-VEHICLE