NOTE: Log file opened at Wed, 2 Nov 2016 17:38:00.430 1 The SAS System 17:38 Wednesday, November 2, 2016 NOTE: Unable to open SASUSER.PROFILE. WORK.PROFILE will be opened instead. NOTE: All profile changes will be lost at the end of the session. NOTE: Copyright (c) 2002-2012 by SAS Institute Inc., Cary, NC, USA. NOTE: SAS (r) Proprietary Software 9.4 (TS1M3) Licensed to FEDEX CORPORATE SERVICES INC CIA SERVER 1, Site 70024850. NOTE: This session is executing on the SunOS 5.10 (SUN 64) platform. NOTE: Updated analytical products: SAS/STAT 14.1 SAS/ETS 14.1 SAS/OR 14.1 SAS/IML 14.1 SAS/QC 14.1 NOTE: Additional host information: SUN SunOS SUN 64 5.10 Generic_150400-20 sun4v You are running SAS 9. Some SAS 8 files will be automatically converted by the V9 engine; others are incompatible. Please see http://support.sas.com/rnd/migration/planning/platform/64bit.html PROC MIGRATE will preserve current SAS file attributes and is recommended for converting all your SAS libraries from any SAS 8 release to SAS 9. For details and examples, please see http://support.sas.com/rnd/migration/index.html This message is contained in the SAS news file, and is presented upon initialization. Edit the file "news" in the "misc/base" directory to display site-specific news and information in the program log. The command line option "-nonews" will prevent this display. NOTE: SAS initialization used: real time 0.35 seconds cpu time 0.17 seconds 1 2 ods html path="/mktg/cppma/data08/test/output/scenario2" file="results.html"; NOTE: Writing HTML Body file: results.html 3 proc options group=memory; run; SAS (r) Proprietary Software Release 9.4 TS1M3 Group=MEMORY SORTSIZE=1073741824 Specifies the amount of memory that is available to the SORT procedure. SUMSIZE=0 Specifies a limit on the amount of memory that is available for data summarization procedures when class variables are active. MAXMEMQUERY=268435456 For certain procedures, specifies the maximum amount of memory that can be allocated per request. 2 The SAS System 17:38 Wednesday, November 2, 2016 LOADMEMSIZE=0 Specifies a suggested amount of memory that is needed for executable programs loaded by SAS. MEMSIZE=17179869184 Specifies the limit on the amount of virtual memory that can be used during a SAS session. REALMEMSIZE=0 Specifies the amount of real memory SAS can expect to allocate. NOTE: PROCEDURE OPTIONS used (Total process time): real time 0.00 seconds cpu time 0.00 seconds 4 option FULLSTIMER NOSYNTAXCHECK; 5 libname test '/mktg/cppma/data08/test/output/scenario2'; NOTE: Libref TEST was successfully assigned as follows: Engine: V9 Physical Name: /mktg/cppma/data08/test/output/scenario2 6 7 *Optimization model parameters; 8 %let distance_var = dist_wgtd; 9 %let location_distance_penalty = 20000; 10 %let max_orders_per_location = 10000; *No limit; 11 %let final_max_locations_on = 500; *Very high limit; 12 %let inf_dist = 1e7; *Constant larger than any valid weighted distance; 13 14 *Solver configuration; 15 %let presolver_options = FORCEPRESOLVE=1 PRESOLVER=3; 16 %let milp_config = 17 RELOBJGAP = 0.05 18 INTTOL = 1e-5 19 EMPHASIS = OPTIMAL /*BALANCE OPTIMAL FEASIBLE*/ 20 /*NODESEL = AUTOMATIC*/ /*AUTOMATIC BESTBOUND BESTESTIMATE DEPTH*/ 21 /*PROBE = AUTOMATIC*/ /*AUTOMATIC NONE MODERATE AGGRESSIVE*/ 22 /*ALLCUTS = AGGRESSIVE*/ /*AUTOMATIC NONE MODERATE AGGRESSIVE*/ 23 /*TIMETYPE = REAL */ 24 /*MAXTIME = 28800*/ 25 /*MAXSOLS = 6*/ 26 ; 27 28 29 *Define different testing scenarios for the model; 30 %let demand_formula1 = 10; *Constant demand over the entire map; 31 %let demand_formula2 = int(latitude/5 + longitude/18) 32 + 1*(mod(location_id,11)=0) 33 + 2*(mod(location_id,37)=0) 34 + 3*(mod(location_id,71)=0) 35 + 9*(mod(location_id,271)=0) 36 ; *Variable demand (increasing in NE direction and leaving some empty spaces); 37 38 ***********************************************************************************; 39 * GENERATE TEST DATA 40 * - A dataset of lat/long points (potential locations) 41 * - A dataset of orders (to be served from the aforementioned locations) 42 ***********************************************************************************; 43 44 *Generate a medium grid of points in the map; 45 data test.points; 46 do latitude = 30 to 39.5 by 0.25; 47 do longitude = -120 to -100.5 by 0.5; 48 location_id + 1; 49 output; 3 The SAS System 17:38 Wednesday, November 2, 2016 50 end; 51 end; 52 run; NOTE: The data set TEST.POINTS has 1560 observations and 3 variables. NOTE: DATA statement used (Total process time): real time 0.08 seconds user cpu time 0.02 seconds system cpu time 0.02 seconds memory 1066.96k OS Memory 12968.00k Timestamp 11/02/2016 05:38:01 PM Step Count 2 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 40 Involuntary Context Switches 2 Block Input Operations 0 Block Output Operations 7 53 54 *Simulate demand on the map; 55 data test.orders; 56 set test.points; 57 order_qty = (&demand_formula2.); 58 rename location_id = order_id; 59 if order_qty > 0 then output; 60 run; NOTE: There were 1560 observations read from the data set TEST.POINTS. NOTE: The data set TEST.ORDERS has 764 observations and 4 variables. NOTE: DATA statement used (Total process time): real time 0.04 seconds user cpu time 0.03 seconds system cpu time 0.02 seconds memory 936.31k OS Memory 13480.00k Timestamp 11/02/2016 05:38:01 PM Step Count 3 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 19 Involuntary Context Switches 1 Block Input Operations 0 Block Output Operations 7 61 62 63 ***********************************************************************************; 64 * CALCULATE DISTANCES BETWEEN ORDERS AND LOCATION POINTS 65 * 66 * Calculate two distances: 67 * - dist = geodesic distance in Km (e.g. distance as the crow flies) 68 * - dist_wgtd = weigted distance = geodesic distance x number of orders 4 The SAS System 17:38 Wednesday, November 2, 2016 69 (e.g. total Km needed to satisfy all orders); 70 * 71 * Limit valid pairs to 200 miles (320 Km); 72 * In practice, geodesic distances would be replaced with driving distances or times; 73 * 74 ***********************************************************************************; 75 76 proc sql; 77 create table test.distances as 78 select 79 a.order_id, 80 a.latitude as order_latitude, 81 a.longitude as order_longitude, 82 b.location_id, 83 b.latitude as location_latitude, 84 b.longitude as location_longitude, 85 geodist(a.latitude, a.longitude, b.latitude, b.longitude) as dist, 86 (calculated dist)*(a.order_qty) as dist_wgtd 87 from test.orders a, test.points b 88 where (calculated dist) < 200*1.6 89 order by a.ORDER_ID, b.LOCATION_ID; NOTE: The execution of this query involves performing one or more Cartesian product joins that can not be optimized. NOTE: Table TEST.DISTANCES created, with 158518 rows and 8 columns. 90 quit; NOTE: PROCEDURE SQL used (Total process time): real time 3.69 seconds user cpu time 3.65 seconds system cpu time 0.13 seconds memory 18597.81k OS Memory 32120.00k Timestamp 11/02/2016 05:38:04 PM Step Count 4 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 691 Involuntary Context Switches 35 Block Input Operations 0 Block Output Operations 22 91 92 93 ***********************************************************************************; 94 * GENERATE AN INITIAL SOLUTION FOR THE OPTIMIZAITON MODEL 95 * - Group orders by proximity 96 * - Map each order to the location closest to the center of its group 97 ***********************************************************************************; 98 99 *Group orders by proximity using a clustering algorithm; 100 *Note: euclidian distances are not great with coordinates, but this is just a seed solution; 101 proc fastclus 102 data = test.orders 103 out = _tmp_initial_seeds (rename=(CLUSTER=seed_nbr)) 104 maxclusters = %sysfunc(int(&final_max_locations_on./2)) 105 noprint; 106 var latitude longitude; 5 The SAS System 17:38 Wednesday, November 2, 2016 107 run; NOTE: The data set WORK._TMP_INITIAL_SEEDS has 764 observations and 6 variables. NOTE: PROCEDURE FASTCLUS used (Total process time): real time 0.02 seconds user cpu time 0.03 seconds system cpu time 0.00 seconds memory 599.31k OS Memory 16296.00k Timestamp 11/02/2016 05:38:04 PM Step Count 5 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 3 Involuntary Context Switches 1 Block Input Operations 0 Block Output Operations 7 108 109 *Calculate the order centroid of each cluster; 110 proc sql; 111 create table _tmp_initial_seed_centroids as 112 select seed_nbr, 113 sum(order_qty * latitude) / sum(order_qty) as SEED_latitude, 114 sum(order_qty * longitude) / sum(order_qty) as SEED_longitude 115 from _tmp_initial_seeds 116 group by 1; NOTE: Table WORK._TMP_INITIAL_SEED_CENTROIDS created, with 250 rows and 3 columns. 117 quit; NOTE: PROCEDURE SQL used (Total process time): real time 0.03 seconds user cpu time 0.01 seconds system cpu time 0.02 seconds memory 6122.95k OS Memory 21424.00k Timestamp 11/02/2016 05:38:04 PM Step Count 6 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 28 Involuntary Context Switches 1 Block Input Operations 0 Block Output Operations 12 118 119 *Pick the closest real location to each order centroid; 120 proc sql; 121 create table _tmp_initial_real_centroids as 122 select a.seed_nbr, 123 m.LOCATION_ID, 124 geodist(a.SEED_latitude, a.SEED_longitude, m.location_latitude, m.location_longitude) as corr_dist 125 from 126 _tmp_initial_seed_centroids a 6 The SAS System 17:38 Wednesday, November 2, 2016 127 inner join _tmp_initial_seeds p on (a.seed_nbr = p.seed_nbr) 128 inner join test.distances m on (p.ORDER_ID = m.ORDER_ID) 129 ; NOTE: Table WORK._TMP_INITIAL_REAL_CENTROIDS created, with 158518 rows and 3 columns. 130 quit; NOTE: PROCEDURE SQL used (Total process time): real time 0.60 seconds user cpu time 0.51 seconds system cpu time 0.08 seconds memory 6867.10k OS Memory 21680.00k Timestamp 11/02/2016 05:38:05 PM Step Count 7 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 33 Involuntary Context Switches 38 Block Input Operations 0 Block Output Operations 15 131 132 proc sort data=_tmp_initial_real_centroids; by seed_nbr corr_dist; run; NOTE: There were 158518 observations read from the data set WORK._TMP_INITIAL_REAL_CENTROIDS. NOTE: The data set WORK._TMP_INITIAL_REAL_CENTROIDS has 158518 observations and 3 variables. NOTE: PROCEDURE SORT used (Total process time): real time 0.12 seconds user cpu time 0.23 seconds system cpu time 0.06 seconds memory 14644.45k OS Memory 29672.00k Timestamp 11/02/2016 05:38:05 PM Step Count 8 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 998 Involuntary Context Switches 9 Block Input Operations 0 Block Output Operations 14 133 134 data _tmp_initial_real_centroids; 135 set _tmp_initial_real_centroids; 136 by seed_nbr; 137 if first.seed_nbr; 138 run; NOTE: There were 158518 observations read from the data set WORK._TMP_INITIAL_REAL_CENTROIDS. NOTE: The data set WORK._TMP_INITIAL_REAL_CENTROIDS has 250 observations and 3 variables. NOTE: DATA statement used (Total process time): real time 0.07 seconds user cpu time 0.05 seconds system cpu time 0.01 seconds 7 The SAS System 17:38 Wednesday, November 2, 2016 memory 917.43k OS Memory 16552.00k Timestamp 11/02/2016 05:38:05 PM Step Count 9 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 13 Involuntary Context Switches 2 Block Input Operations 0 Block Output Operations 6 139 140 *Initial solution: list unique LOCATIONs that should be turned on (as seeds); 141 proc sql; 142 create table initial_locations as 143 select distinct LOCATION_ID 144 from _tmp_initial_real_centroids 145 order by LOCATION_ID; NOTE: Table WORK.INITIAL_LOCATIONS created, with 250 rows and 1 columns. 146 quit; NOTE: PROCEDURE SQL used (Total process time): real time 0.01 seconds user cpu time 0.00 seconds system cpu time 0.02 seconds memory 5317.68k OS Memory 21680.00k Timestamp 11/02/2016 05:38:05 PM Step Count 10 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1 Involuntary Context Switches 0 Block Input Operations 0 Block Output Operations 6 147 148 *Initial solution: List pair-mappings that should be turned on (between orders and their initial seeds); 149 proc sql; 150 create table initial_mappings as 151 select a.ORDER_ID, b.LOCATION_ID 152 from _tmp_initial_seeds a 153 inner join _tmp_initial_real_centroids b 154 on (a.seed_nbr = b.seed_nbr) 155 order by a.ORDER_ID, b.LOCATION_ID; NOTE: Table WORK.INITIAL_MAPPINGS created, with 764 rows and 2 columns. 156 run; NOTE: PROC SQL statements are executed immediately; The RUN statement has no effect. 157 NOTE: PROCEDURE SQL used (Total process time): real time 0.05 seconds user cpu time 0.02 seconds system cpu time 0.03 seconds 8 The SAS System 17:38 Wednesday, November 2, 2016 memory 5496.62k OS Memory 21936.00k Timestamp 11/02/2016 05:38:05 PM Step Count 11 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 27 Involuntary Context Switches 3 Block Input Operations 0 Block Output Operations 12 158 proc delete data=_tmp_initial_real_centroids; run; NOTE: Deleting WORK._TMP_INITIAL_REAL_CENTROIDS (memtype=DATA). NOTE: PROCEDURE DELETE used (Total process time): real time 0.00 seconds user cpu time 0.00 seconds system cpu time 0.00 seconds memory 20.46k OS Memory 16808.00k Timestamp 11/02/2016 05:38:05 PM Step Count 12 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 0 Involuntary Context Switches 0 Block Input Operations 0 Block Output Operations 4 159 proc delete data=_tmp_initial_seeds; run; NOTE: Deleting WORK._TMP_INITIAL_SEEDS (memtype=DATA). NOTE: PROCEDURE DELETE used (Total process time): real time 0.00 seconds user cpu time 0.00 seconds system cpu time 0.00 seconds memory 20.46k OS Memory 16808.00k Timestamp 11/02/2016 05:38:05 PM Step Count 13 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 0 Involuntary Context Switches 0 Block Input Operations 0 Block Output Operations 4 160 proc delete data=_tmp_initial_seed_centroids; run; NOTE: Deleting WORK._TMP_INITIAL_SEED_CENTROIDS (memtype=DATA). NOTE: PROCEDURE DELETE used (Total process time): real time 0.00 seconds 9 The SAS System 17:38 Wednesday, November 2, 2016 user cpu time 0.00 seconds system cpu time 0.00 seconds memory 20.46k OS Memory 16808.00k Timestamp 11/02/2016 05:38:05 PM Step Count 14 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1 Involuntary Context Switches 1 Block Input Operations 0 Block Output Operations 4 161 162 163 *Copy the initial solution into the input datasets; 164 data test.points; 165 merge test.points initial_locations (in=in1); 166 by location_id; 167 if (in1) then on=1; else on=0; 168 run; NOTE: There were 1560 observations read from the data set TEST.POINTS. NOTE: There were 250 observations read from the data set WORK.INITIAL_LOCATIONS. NOTE: The data set TEST.POINTS has 1560 observations and 4 variables. NOTE: DATA statement used (Total process time): real time 0.03 seconds user cpu time 0.02 seconds system cpu time 0.01 seconds memory 1125.75k OS Memory 17064.00k Timestamp 11/02/2016 05:38:05 PM Step Count 15 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 17 Involuntary Context Switches 3 Block Input Operations 0 Block Output Operations 6 169 170 data test.distances; 171 merge test.distances initial_mappings (in=in1); 172 by order_id location_id; 173 if (in1) then map=1; else map=0; 174 run; NOTE: There were 158518 observations read from the data set TEST.DISTANCES. NOTE: There were 764 observations read from the data set WORK.INITIAL_MAPPINGS. NOTE: The data set TEST.DISTANCES has 158518 observations and 9 variables. NOTE: DATA statement used (Total process time): real time 0.22 seconds user cpu time 0.14 seconds system cpu time 0.07 seconds 10 The SAS System 17:38 Wednesday, November 2, 2016 memory 1180.34k OS Memory 17064.00k Timestamp 11/02/2016 05:38:06 PM Step Count 16 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 18 Involuntary Context Switches 21 Block Input Operations 0 Block Output Operations 14 175 176 proc delete data=initial_locations; run; NOTE: Deleting WORK.INITIAL_LOCATIONS (memtype=DATA). NOTE: PROCEDURE DELETE used (Total process time): real time 0.00 seconds user cpu time 0.00 seconds system cpu time 0.00 seconds memory 20.46k OS Memory 16808.00k Timestamp 11/02/2016 05:38:06 PM Step Count 17 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 2 Involuntary Context Switches 0 Block Input Operations 0 Block Output Operations 4 177 proc delete data=initial_mappings; run; NOTE: Deleting WORK.INITIAL_MAPPINGS (memtype=DATA). NOTE: PROCEDURE DELETE used (Total process time): real time 0.00 seconds user cpu time 0.00 seconds system cpu time 0.00 seconds memory 20.46k OS Memory 16808.00k Timestamp 11/02/2016 05:38:06 PM Step Count 18 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1 Involuntary Context Switches 1 Block Input Operations 0 Block Output Operations 4 178 179 180 ***********************************************************************************; 181 * CHECK FINAL INPUT DATASETS 11 The SAS System 17:38 Wednesday, November 2, 2016 182 ***********************************************************************************; 183 184 *Check counts in the three input datasets; 185 proc sql; 186 select 187 count(distinct order_id) as order_locaitons, 188 count(*) as records, 189 sum(order_qty) as order_qty 190 from test.orders; 191 quit; NOTE: The PROCEDURE SQL printed page 1. NOTE: PROCEDURE SQL used (Total process time): real time 0.08 seconds user cpu time 0.06 seconds system cpu time 0.03 seconds memory 5327.28k OS Memory 21936.00k Timestamp 11/02/2016 05:38:06 PM Step Count 19 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 12 Involuntary Context Switches 2 Block Input Operations 0 Block Output Operations 13 192 193 proc sql; 194 select 195 count(distinct location_id) as point_locaitons, 196 sum(on) as locations_on, 197 count(*) as records 198 from test.points; 199 quit; NOTE: The PROCEDURE SQL printed page 2. NOTE: PROCEDURE SQL used (Total process time): real time 0.02 seconds user cpu time 0.01 seconds system cpu time 0.01 seconds memory 5327.21k OS Memory 22448.00k Timestamp 11/02/2016 05:38:06 PM Step Count 20 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1 Involuntary Context Switches 1 Block Input Operations 0 Block Output Operations 10 200 201 proc sql; 202 select 203 count(distinct location_id) as point_locaitons format comma24.0, 12 The SAS System 17:38 Wednesday, November 2, 2016 204 count(distinct order_id) as order_locaitons format comma24.0, 205 sum(map) as mapped_locaitons format comma24.0, 206 sum(dist) as dist format comma24.0, 207 sum(dist_wgtd) as dist_wgtd format comma24.0, 208 count(*) as records format comma24.0 209 from test.distances; 210 quit; NOTE: The PROCEDURE SQL printed page 3. NOTE: PROCEDURE SQL used (Total process time): real time 0.16 seconds user cpu time 0.13 seconds system cpu time 0.03 seconds memory 5368.00k OS Memory 22448.00k Timestamp 11/02/2016 05:38:06 PM Step Count 21 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1 Involuntary Context Switches 3 Block Input Operations 0 Block Output Operations 16 211 212 *Check maps; 213 ods graphics on / width=12 in; 214 proc sgplot data=test.orders; 215 bubble x=longitude y=latitude size=order_qty / colorresponse=order_qty bradiusmin=2 bradiusmax=6; 216 run; NOTE: PROCEDURE SGPLOT used (Total process time): real time 7.13 seconds user cpu time 0.42 seconds system cpu time 0.11 seconds memory 13561.39k OS Memory 29200.00k Timestamp 11/02/2016 05:38:13 PM Step Count 22 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 426 Involuntary Context Switches 14 Block Input Operations 0 Block Output Operations 61 NOTE: Listing image output written to /mktg/cppma/data08/custom_critical_waypoint1/scripts/SGPlot.png. NOTE: There were 764 observations read from the data set TEST.ORDERS. 217 ods graphics off; 218 219 220 ods graphics on / width=12 in; 221 proc sgplot data=test.points; 222 scatter x=longitude y=latitude / group=on; 223 run; 13 The SAS System 17:38 Wednesday, November 2, 2016 NOTE: PROCEDURE SGPLOT used (Total process time): real time 1.94 seconds user cpu time 0.37 seconds system cpu time 0.06 seconds memory 3798.31k OS Memory 29200.00k Timestamp 11/02/2016 05:38:15 PM Step Count 23 Switch Count 0 Page Faults 0 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 208 Involuntary Context Switches 13 Block Input Operations 0 Block Output Operations 63 NOTE: Listing image output written to /mktg/cppma/data08/custom_critical_waypoint1/scripts/SGPlot2.png. NOTE: There were 1560 observations read from the data set TEST.POINTS. 224 ods graphics off; 225 226 227 ***********************************************************************************; 228 * RUN OPTIMIZATION MODEL 229 ***********************************************************************************; 230 231 proc optmodel &presolver_options.; 232 233 *Define data elements; 234 put 'optmodel: Define data elements'; optmodel: Define data elements 235 set ORDERS; 236 set LOCATIONS; 237 num distance {ORDERS, LOCATIONS} init &inf_dist.; 238 239 *Define variable 1; 240 var on {LOCATIONS} binary init 0; 241 242 *Read datasets 1; 243 put 'optmodel: Read datasets 1'; optmodel: Read datasets 1 244 read data test.orders into ORDERS=[ORDER_ID]; NOTE: There were 764 observations read from the data set TEST.ORDERS. 245 read data test.points into LOCATIONS=[LOCATION_ID] on=on; NOTE: There were 1560 observations read from the data set TEST.POINTS. 246 read data test.distances into [ORDER_ID LOCATION_ID] distance=&distance_var.; NOTE: There were 158518 observations read from the data set TEST.DISTANCES. 247 248 *Define variable 2; 249 set VALID_MAPS = {p in ORDERS, w in LOCATIONS: distance[p,w] <= (&inf_dist.-10)}; 250 var map {VALID_MAPS} binary init 0; 251 252 *Read datasets 2; 253 put 'optmodel: Read datasets 2'; optmodel: Read datasets 2 254 read data test.distances into [ORDER_ID LOCATION_ID] map=map; NOTE: There were 158518 observations read from the data set TEST.DISTANCES. 14 The SAS System 17:38 Wednesday, November 2, 2016 255 256 *Calculations; 257 put 'optmodel: Calculations'; optmodel: Calculations 258 impvar total_LOCATIONs_on = sum{w in LOCATIONS} on[w]; 259 impvar total_maps_on = sum{ in VALID_MAPS} map[p,w]; 260 impvar total_distance = sum{ in VALID_MAPS} map[p,w]*distance[p,w]; 261 impvar total_penalty = total_LOCATIONs_on * &LOCATION_distance_penalty.; 262 263 *Mechanical constraints; 264 put 'optmodel: Mechanical constraints'; optmodel: Mechanical constraints 265 con ORDERs_mapped_correctly {p in ORDERS}: (sum{<(p),w> in VALID_MAPS} map[p,w]) = 1; 266 con LOCATIONs_mapped_correctly {w in LOCATIONS}: (sum{ in VALID_MAPS} map[p,w]) <= on[w] * 266 ! &max_ORDERs_per_LOCATION.; 267 268 *Business constraints; 269 put 'optmodel: Business constraints'; optmodel: Business constraints 270 con max_LOCATIONs_on: total_LOCATIONs_on <= &final_max_LOCATIONs_on.; 271 272 *Minimize distance; 273 put 'optmodel: Set Goals'; optmodel: Set Goals 274 min goal = total_distance + total_penalty; 275 save mps test.model_result_mps; NOTE: Problem generation will use 4 threads. NOTE: The problem has 160078 variables (0 free, 0 fixed). NOTE: The problem uses 3 implicit variables. NOTE: The problem has 160078 binary and 0 integer variables. NOTE: The problem has 2325 linear constraints (1561 LE, 764 EQ, 0 GE, 0 range). NOTE: The problem has 320156 linear constraint coefficients. NOTE: The problem has 0 nonlinear constraints (0 LE, 0 EQ, 0 GE, 0 range). NOTE: The data set TEST.MODEL_RESULT_MPS has 482569 observations and 6 variables. 276 277 *Initial solution check (seed); 278 print "VALUES BEFORE SOLVING" total_LOCATIONs_on total_maps_on goal total_distance total_penalty; 279 280 *Solve problem; 281 put 'optmodel: Solve problem'; optmodel: Solve problem 282 /*solve with MILP / &milp_config.;*/ 283 save mps MPSDATA; NOTE: The data set WORK.MPSDATA has 482569 observations and 6 variables. 284 submit; 285 proc optmilp 286 data=MPSDATA 287 primalout=PRIMALOUT 288 &milp_config.; 289 run; 290 endsubmit; 1 The SAS System 17:38 Wednesday, November 2, 2016 NOTE: The problem MPSDATA has 160078 variables (160078 binary, 0 integer, 0 free, 0 fixed). NOTE: The problem has 2325 constraints (1561 LE, 764 EQ, 0 GE, 0 range). NOTE: The problem has 320156 constraint coefficients. NOTE: The MILP presolver value AUTOMATIC is applied. NOTE: The MILP presolver removed 0 variables and 0 constraints. NOTE: The MILP presolver removed 0 constraint coefficients. NOTE: The MILP presolver modified 1560 constraint coefficients. NOTE: The presolved problem has 160078 variables, 2325 constraints, and 320156 constraint coefficients. NOTE: The MILP solver is called. NOTE: The parallel Branch and Cut algorithm is used. NOTE: The Branch and Cut algorithm is using up to 4 threads. Node Active Sols BestInteger BestBound Gap Time 0 1 0 . 136736 . 9 0 1 0 . 144946 . 19 0 1 0 . 149286 . 30 0 1 0 . 151930 . 44 0 1 0 . 153456 . 58 0 1 0 . 155089 . 70 0 1 0 . 156548 . 86 0 1 0 . 157371 . 95 0 1 0 . 158176 . 98 0 1 0 . 158886 . 101 0 1 0 . 159806 . 104 0 1 0 . 160634 . 108 0 1 0 . 161741 . 111 0 1 0 . 162625 . 114 0 1 0 . 163576 . 127 0 1 0 . 164386 . 131 0 1 0 . 165126 . 134 0 1 0 . 165937 . 138 0 1 0 . 166752 . 142 0 1 0 . 167585 . 146 0 1 0 . 168451 . 151 0 1 0 . 169278 . 156 0 1 0 . 169974 . 161 0 1 0 . 170727 . 166 0 1 0 . 171270 . 172 0 1 0 . 171901 . 179 0 1 0 . 172432 . 186 0 1 0 . 172977 . 193 0 1 0 . 173646 . 200 0 1 0 . 174336 . 207 0 1 0 . 174890 . 215 0 1 0 . 175378 . 224 0 1 0 . 175903 . 232 0 1 0 . 176526 . 240 0 1 0 . 177077 . 248 0 1 0 . 177595 . 257 0 1 0 . 178100 . 267 0 1 0 . 178660 . 277 0 1 0 . 179085 . 287 0 1 0 . 179577 . 299 0 1 0 . 180077 . 309 NOTE: The MILP solver added 6718 cuts with 32089 cut coefficients at the root. 100 91 0 . 181337 . 669 200 191 0 . 181337 . 748 300 287 0 . 181359 . 856 2 The SAS System 17:38 Wednesday, November 2, 2016 400 387 0 . 181359 . 914 500 487 0 . 181359 . 918 600 587 0 . 181359 . 920 700 687 0 . 181359 . 923 800 28 0 . 185448 . 1667 900 115 0 . 187333 . 1937 1000 211 0 . 187371 . 2085 1100 311 0 . 187371 . 2143 1200 411 0 . 187371 . 2150 1300 511 0 . 187371 . 2159 1400 611 0 . 187371 . 2161 1500 711 0 . 187371 . 2167 1600 811 0 . 187371 . 2170 1700 911 0 . 187371 . 2174 1800 1011 0 . 187371 . 2177 1900 1111 0 . 187371 . 2180 2000 1211 0 . 187371 . 2183 2100 1311 0 . 187371 . 2185 2200 1411 0 . 187371 . 2186 2300 1511 0 . 187371 . 2189 2400 1611 0 . 187371 . 2191 2500 1707 0 . 187950 . 2264 2600 1807 0 . 187950 . 2269 2700 1907 0 . 187950 . 2323 2800 2007 0 . 187950 . 2345 2900 2107 0 . 187950 . 2356 3000 2207 0 . 187950 . 2361 3100 2307 0 . 187950 . 2364 3200 2407 0 . 187950 . 2366 3300 2507 0 . 187950 . 2368 3400 2607 0 . 187950 . 2370 3500 2707 0 . 187950 . 2372 3600 2803 0 . 187996 . 2422 3700 2903 0 . 187996 . 2426 3800 3003 0 . 187996 . 2432 3900 3103 0 . 187996 . 2440 4000 3203 0 . 187996 . 2449 4100 3303 0 . 187996 . 2529 4200 3403 0 . 187996 . 2542 4300 3503 0 . 187996 . 2548 4400 3603 0 . 187996 . 2551 4500 3703 0 . 187996 . 2554 4600 3803 0 . 187996 . 2556 4700 3903 0 . 187996 . 2559 4800 4003 0 . 187996 . 2561 4900 4103 0 . 187996 . 2564 5000 4203 0 . 187996 . 2567 5100 4303 0 . 187996 . 2569 5200 4403 0 . 187996 . 2571 5300 4503 0 . 187996 . 2573 5400 4603 0 . 187996 . 2574 5500 4703 0 . 187996 . 2576 5600 4803 0 . 187996 . 2578 5627 4829 1 795981 187996 323.40% 2578 5700 4898 1 795981 187996 323.40% 2593 5800 4991 1 795981 187996 323.40% 2620 5900 5091 1 795981 187996 323.40% 2626 6000 5191 1 795981 187996 323.40% 2631 3 The SAS System 17:38 Wednesday, November 2, 2016 6100 5290 1 795981 187996 323.40% 2665 6200 5385 1 795981 188027 323.33% 2670 6300 5485 1 795981 188027 323.33% 2673 6400 5585 1 795981 188027 323.33% 2676 6500 5683 1 795981 188028 323.33% 2727 6600 5306 1 795981 188321 322.67% 2817 6700 5406 1 795981 188321 322.67% 2822 6800 5506 1 795981 188321 322.67% 2829 6900 5606 1 795981 188321 322.67% 2836 7000 5703 1 795981 188331 322.65% 2849 7100 5803 1 795981 188331 322.65% 2854 7200 5903 1 795981 188331 322.65% 2860 7300 6003 1 795981 188331 322.65% 2866 7400 6101 1 795981 188336 322.64% 2897 7500 6201 1 795981 188336 322.64% 2900 7600 6301 1 795981 188336 322.64% 2906 7700 6401 1 795981 188336 322.64% 2911 7800 6498 1 795981 188337 322.64% 2960 7900 6598 1 795981 188337 322.64% 2964 8000 6698 1 795981 188337 322.64% 2969 8100 6798 1 795981 188337 322.64% 2974 8200 6896 1 795981 188338 322.63% 3035 8300 6996 1 795981 188338 322.63% 3041 8400 7096 1 795981 188338 322.63% 3050 8500 7196 1 795981 188338 322.63% 3055 8600 7296 1 795981 188338 322.63% 3068 8700 7392 1 795981 188340 322.63% 3135 8800 7492 1 795981 188340 322.63% 3140 8900 7592 1 795981 188340 322.63% 3144 9000 7692 1 795981 188340 322.63% 3153 9100 7789 1 795981 188344 322.62% 3197 9200 7889 1 795981 188344 322.62% 3202 9300 7989 1 795981 188344 322.62% 3207 9400 8089 1 795981 188344 322.62% 3220 9500 8185 1 795981 188346 322.62% 3257 9600 8285 1 795981 188346 322.62% 3260 9700 8385 1 795981 188346 322.62% 3265 9800 8485 1 795981 188346 322.62% 3272 9900 8581 1 795981 188346 322.62% 3344 10000 8681 1 795981 188346 322.62% 3350 10100 8781 1 795981 188346 322.62% 3355 10200 8881 1 795981 188346 322.62% 3359 10300 8977 1 795981 188371 322.56% 3404 10400 9077 1 795981 188371 322.56% 3411 10500 9177 1 795981 188371 322.56% 3417 10600 9277 1 795981 188371 322.56% 3423 10700 9373 1 795981 188374 322.55% 3468 10800 9473 1 795981 188374 322.55% 3476 10900 9573 1 795981 188374 322.55% 3481 11000 9673 1 795981 188374 322.55% 3488 11100 9769 1 795981 188451 322.38% 3588 11200 9869 1 795981 188451 322.38% 3598 11300 9969 1 795981 188451 322.38% 3608 11400 10069 1 795981 188451 322.38% 3623 11500 10165 1 795981 188516 322.23% 3742 11600 10265 1 795981 188516 322.23% 3757 11700 10365 1 795981 188516 322.23% 3777 11800 10465 1 795981 188516 322.23% 3795 4 The SAS System 17:38 Wednesday, November 2, 2016 11900 10561 1 795981 188517 322.23% 3969 12000 10661 1 795981 188517 322.23% 3977 12100 10761 1 795981 188517 322.23% 3992 12200 10861 1 795981 188517 322.23% 4006 12300 10957 1 795981 188546 322.17% 4111 12400 11057 1 795981 188546 322.17% 4121 12500 11157 1 795981 188546 322.17% 4140 12600 11257 1 795981 188546 322.17% 4148 12700 11353 1 795981 188549 322.16% 4211 12800 11453 1 795981 188549 322.16% 4218 12900 11553 1 795981 188549 322.16% 4225 13000 11653 1 795981 188549 322.16% 4232 13100 11749 1 795981 188602 322.04% 4329 13200 11849 1 795981 188602 322.04% 4329 13300 11949 1 795981 188602 322.04% 4329 13400 12047 1 795981 188602 322.04% 4329 13500 12146 1 795981 188613 322.02% 4329 13600 12246 1 795981 188613 322.02% 4329 13700 12346 1 795981 188613 322.02% 4329 13800 12443 1 795981 188625 321.99% 4329 13900 12543 1 795981 188625 321.99% 4329 14000 12643 1 795981 188625 321.99% 4329 14100 12740 1 795981 188651 321.93% 4329 14200 12840 1 795981 188651 321.93% 4329 14300 12940 1 795981 188651 321.93% 4329 14400 13037 1 795981 188653 321.93% 4329 14500 13137 1 795981 188653 321.93% 4329 14600 13237 1 795981 188653 321.93% 4329 14700 13334 1 795981 188654 321.93% 4329 14800 13434 1 795981 188654 321.93% 4329 14900 13534 1 795981 188654 321.93% 4329 15000 13631 1 795981 188714 321.79% 4329 15100 13731 1 795981 188714 321.79% 4329 15200 13831 1 795981 188714 321.79% 4329 15300 13929 1 795981 188774 321.66% 4329 15400 14029 1 795981 188774 321.66% 4329 15500 14127 1 795981 188783 321.64% 4329 15600 14227 1 795981 188783 321.64% 4329 15700 14325 1 795981 188821 321.55% 4329 15800 14425 1 795981 188821 321.55% 4329 15900 14519 1 795981 188851 321.49% 4356 16000 14619 1 795981 188851 321.49% 4366 16100 14719 1 795981 188851 321.49% 4374 16200 14819 1 795981 188851 321.49% 4379 16300 14915 1 795981 188897 321.38% 4458 16400 15015 1 795981 188897 321.38% 4464 16500 15115 1 795981 188897 321.38% 4470 16600 15215 1 795981 188897 321.38% 4505 16700 15311 1 795981 188912 321.35% 4524 16800 15411 1 795981 188912 321.35% 4532 16900 15511 1 795981 188912 321.35% 4538 17000 15611 1 795981 188912 321.35% 4543 17100 15707 1 795981 188965 321.23% 4580 17200 15807 1 795981 188965 321.23% 4585 17300 15907 1 795981 188965 321.23% 4594 17400 16007 1 795981 188965 321.23% 4623 17500 16107 1 795981 188965 321.23% 4656 17600 16203 1 795981 189028 321.09% 4695 5 The SAS System 17:38 Wednesday, November 2, 2016 17700 16303 1 795981 189028 321.09% 4701 17800 16403 1 795981 189028 321.09% 4712 17900 16503 1 795981 189028 321.09% 4762 18000 16599 1 795981 189071 321.00% 4776 18100 16699 1 795981 189071 321.00% 4785 18200 16799 1 795981 189071 321.00% 4789 18300 16899 1 795981 189071 321.00% 4859 18400 16995 1 795981 189120 320.89% 4891 18500 17095 1 795981 189120 320.89% 4897 18600 17195 1 795981 189120 320.89% 4907 18700 17292 1 795981 189155 320.81% 4907 18800 17392 1 795981 189155 320.81% 4907 18900 17492 1 795981 189155 320.81% 4907 19000 17589 1 795981 189183 320.75% 4907 19100 17689 1 795981 189183 320.75% 4907 19200 17789 1 795981 189183 320.75% 4907 19300 17889 1 795981 189183 320.75% 4907 19400 17986 1 795981 189213 320.68% 4934 19500 18085 1 795981 189213 320.68% 4934 19600 18184 1 795981 189213 320.68% 4943 19700 18284 1 795981 189213 320.68% 4949 19800 18382 1 795981 189213 320.68% 4986 19900 18481 1 795981 189258 320.58% 5004 20000 18580 1 795981 189258 320.58% 5033 20100 18680 1 795981 189258 320.58% 5037 20200 18780 1 795981 189258 320.58% 5056 20300 18879 1 795981 189258 320.58% 5062 20400 18977 1 795981 189481 320.09% 5101 20500 19077 1 795981 189481 320.09% 5108 20600 19176 1 795981 189481 320.09% 5112 20700 19275 1 795981 189481 320.09% 5148 20800 19373 1 795981 189492 320.06% 5153 20900 19473 1 795981 189492 320.06% 5160 21000 19572 1 795981 189492 320.06% 5168 21100 19671 1 795981 189492 320.06% 5180 21200 19770 1 795981 189601 319.82% 5186 21300 19869 1 795981 189601 319.82% 5195 21400 19968 1 795981 189601 319.82% 5201 21500 20067 1 795981 189601 319.82% 5242 21600 20166 1 795981 189652 319.71% 5249 21700 20265 1 795981 189652 319.71% 5252 21800 20364 1 795981 189652 319.71% 5276 21900 20463 1 795981 189652 319.71% 5325 22000 20562 1 795981 189663 319.68% 5331 22100 20661 1 795981 189663 319.68% 5351 22200 20760 1 795981 189663 319.68% 5354 22300 20859 1 795981 189663 319.68% 5383 22400 20958 1 795981 189789 319.40% 5388 22500 21057 1 795981 189796 319.39% 5389 22600 21156 1 795981 189796 319.39% 5389 22700 21255 1 795981 189796 319.39% 5389 22800 21354 1 795981 189796 319.39% 5389 22900 21453 1 795981 189796 319.39% 5389 23000 21552 1 795981 189796 319.39% 5412 23100 21651 1 795981 189812 319.35% 5424 23200 21750 1 795981 189812 319.35% 5477 23300 21850 1 795981 189812 319.35% 5505 23400 21948 1 795981 189812 319.35% 5512 6 The SAS System 17:38 Wednesday, November 2, 2016 23500 22047 1 795981 189826 319.32% 5539 23600 22147 1 795981 189826 319.32% 5552 23700 22247 1 795981 189826 319.32% 5577 23800 22345 1 795981 189826 319.32% 5583 23900 22444 1 795981 189826 319.32% 5601 24000 22543 1 795981 189826 319.32% 5647 24100 22643 1 795981 189826 319.32% 5671 24200 22741 1 795981 189826 319.32% 5678 24300 22840 1 795981 189827 319.32% 5683 24400 22939 1 795981 189827 319.32% 5722 24500 23039 1 795981 189827 319.32% 5744 24600 23137 1 795981 189827 319.32% 5751 24700 23236 1 795981 189849 319.27% 5756 24800 23335 1 795981 189849 319.27% 5822 24900 23435 1 795981 189849 319.27% 5853 25000 23533 1 795981 189849 319.27% 5857 25100 23633 1 795981 189849 319.27% 5863 25200 23731 1 795981 190778 317.23% 5868 25300 23831 1 795981 190778 317.23% 5877 25400 23929 1 795981 190778 317.23% 5882 25500 24029 1 795981 190778 317.23% 5892 25600 24127 1 795981 190779 317.23% 5905 25700 24227 1 795981 190779 317.23% 5915 25800 24325 1 795981 190779 317.23% 5918 25900 24425 1 795981 190779 317.23% 5923 26000 24524 1 795981 190779 317.23% 5929 26100 24623 1 795981 190783 317.22% 5936 26200 24721 1 795981 190783 317.22% 5940 26300 24821 1 795981 190783 317.22% 5946 26400 24920 1 795981 190783 317.22% 5986 26500 25019 1 795981 190791 317.20% 5993 26600 25117 1 795981 190791 317.20% 5997 26700 25217 1 795981 190791 317.20% 6039 26800 25316 1 795981 190791 317.20% 6039 26900 25415 1 795981 190791 317.20% 6039 27000 25514 1 795981 190791 317.20% 6045 27100 25613 1 795981 190796 317.19% 6057 27200 25712 1 795981 190796 317.19% 6061 27300 25812 1 795981 190796 317.19% 6070 27400 25910 1 795981 190796 317.19% 6119 27500 26009 1 795981 190800 317.18% 6150 27600 26108 1 795981 190800 317.18% 6154 27700 26208 1 795981 190800 317.18% 6185 27800 26306 1 795981 190800 317.18% 6212 27900 26405 1 795981 190803 317.17% 6225 28000 26504 1 795981 190803 317.17% 6266 28100 26604 1 795981 190803 317.17% 6307 28200 26702 1 795981 190803 317.17% 6315 28300 26801 1 795981 190803 317.17% 6352 28400 26900 1 795981 190803 317.17% 6357 28500 27000 1 795981 190803 317.17% 6388 28600 27098 1 795981 190803 317.17% 6429 28700 27197 1 795981 190804 317.17% 6457 28800 27296 1 795981 190804 317.17% 6461 28900 27396 1 795981 190804 317.17% 6466 29000 27494 1 795981 190804 317.17% 6474 29100 27593 1 795981 190808 317.16% 6481 29200 27692 1 795981 190808 317.16% 6486 7 The SAS System 17:38 Wednesday, November 2, 2016 29300 27792 1 795981 190808 317.16% 6538 29400 27890 1 795981 190808 317.16% 6541 29500 27989 1 795981 190811 317.16% 6573 29600 28088 1 795981 190811 317.16% 6577 29700 28188 1 795981 190811 317.16% 6620 29800 28286 1 795981 190811 317.16% 6624 29900 28385 1 795981 190819 317.14% 6654 30000 28484 1 795981 190819 317.14% 6658 30100 28584 1 795981 190819 317.14% 6659 30200 28682 1 795981 190819 317.14% 6659 30300 28781 1 795981 190819 317.14% 6659 30400 28881 1 795981 190819 317.14% 6659 30500 28979 1 795981 190819 317.14% 6659 30600 29078 1 795981 190819 317.14% 6659 30700 29178 1 795981 190819 317.14% 6659 30800 29276 1 795981 190819 317.14% 6659 30900 29376 1 795981 190819 317.14% 6659 31000 29475 1 795981 190819 317.14% 6659 31100 29573 1 795981 190819 317.14% 6659 31200 29673 1 795981 190819 317.14% 6659 31300 29772 1 795981 190819 317.14% 6669 31400 29870 1 795981 190819 317.14% 6669 31500 29970 1 795981 190819 317.14% 6669 31600 30068 1 795981 190819 317.14% 6669 31700 30168 1 795981 190819 317.14% 6669 31800 30266 1 795981 190819 317.14% 6669 31900 30365 1 795981 190819 317.14% 6673 32000 30465 1 795981 190819 317.14% 6726 32100 30564 1 795981 190819 317.14% 6752 32200 30663 1 795981 190821 317.14% 6768 32300 30761 1 795981 190821 317.14% 6773 32400 30861 1 795981 190821 317.14% 6820 32500 30960 1 795981 190821 317.14% 6845 32600 31059 1 795981 190823 317.13% 6851 32700 31157 1 795981 190823 317.13% 6856 32800 31257 1 795981 190823 317.13% 6902 32900 31356 1 795981 190823 317.13% 6907 33000 31455 1 795981 190826 317.12% 6917 33100 31553 1 795981 190826 317.12% 6921 33200 31653 1 795981 190826 317.12% 6971 33300 31753 1 795981 190826 317.12% 6975 33400 31851 1 795981 190828 317.12% 6986 33500 31951 1 795981 190828 317.12% 6991 33600 32049 1 795981 190828 317.12% 7041 33700 32149 1 795981 190828 317.12% 7045 33800 32247 1 795981 190831 317.11% 7056 33900 32347 1 795981 190831 317.11% 7061 34000 32446 1 795981 190831 317.11% 7111 34100 32546 1 795981 190831 317.11% 7117 34200 32644 1 795981 190832 317.11% 7127 34300 32744 1 795981 190832 317.11% 7131 34400 32842 1 795981 190832 317.11% 7179 34500 32942 1 795981 190832 317.11% 7184 34600 33040 1 795981 190832 317.11% 7195 34700 33140 1 795981 190832 317.11% 7199 34800 33238 1 795981 190832 317.11% 7242 34900 33338 1 795981 190832 317.11% 7246 35000 33436 1 795981 190838 317.10% 7274 8 The SAS System 17:38 Wednesday, November 2, 2016 35100 33536 1 795981 190838 317.10% 7279 35200 33634 1 795981 190838 317.10% 7325 35300 33733 1 795981 190838 317.10% 7325 35400 33833 1 795981 190838 317.10% 7325 35500 33931 1 795981 190838 317.10% 7325 35600 34031 1 795981 190838 317.10% 7325 35700 34130 1 795981 190838 317.10% 7325 35800 34228 1 795981 190838 317.10% 7325 35900 34328 1 795981 190838 317.10% 7325 36000 34427 1 795981 190838 317.10% 7325 36100 34525 1 795981 190838 317.10% 7332 36200 34625 1 795981 190838 317.10% 7336 36300 34723 1 795981 190843 317.09% 7371 36400 34823 1 795981 190843 317.09% 7392 36500 34921 1 795981 190843 317.09% 7417 36600 35021 1 795981 190843 317.09% 7424 36700 35120 1 795981 190843 317.09% 7433 36800 35219 1 795981 190845 317.08% 7442 36900 35318 1 795981 190845 317.08% 7494 37000 35417 1 795981 190845 317.08% 7498 37100 35516 1 795981 190845 317.08% 7506 37200 35615 1 795981 190863 317.04% 7545 37300 35714 1 795981 190863 317.04% 7584 37400 35813 1 795981 190863 317.04% 7589 37500 35912 1 795981 190863 317.04% 7596 37600 36011 1 795981 190865 317.04% 7620 37700 36111 1 795981 190865 317.04% 7657 37800 36209 1 795981 190865 317.04% 7663 37900 36308 1 795981 190865 317.04% 7695 38000 36407 1 795981 190963 316.82% 7720 38100 36507 1 795981 190963 316.82% 7752 38200 36605 1 795981 190963 316.82% 7755 38300 36704 1 795981 190963 316.82% 7759 38400 36803 1 795981 190965 316.82% 7791 38500 36903 1 795981 190965 316.82% 7835 38600 37001 1 795981 190965 316.82% 7840 38700 37100 1 795981 190965 316.82% 7849 38800 37199 1 795981 190965 316.82% 7857 38900 37299 1 795981 190965 316.82% 7898 39000 37397 1 795981 190965 316.82% 7902 39100 37496 1 795981 190965 316.82% 7902 39200 37596 1 795981 190965 316.82% 7902 39300 37694 1 795981 190965 316.82% 7902 39400 37793 1 795981 190965 316.82% 7918 39500 37893 1 795981 190965 316.82% 7920 39600 37991 1 795981 190965 316.82% 7920 39700 38091 1 795981 190965 316.82% 7920 39800 38190 1 795981 190965 316.82% 7920 39900 38289 1 795981 190965 316.82% 7920 40000 38388 1 795981 190965 316.82% 7926 40100 38487 1 795981 190972 316.81% 7962 40200 38587 1 795981 190972 316.81% 7966 40300 38686 1 795981 190972 316.81% 7992 40400 38784 1 795981 190972 316.81% 7997 40500 38884 1 795981 190972 316.81% 8030 40600 38983 1 795981 190972 316.81% 8033 40700 39082 1 795981 190972 316.81% 8070 40800 39180 1 795981 190972 316.81% 8094 9 The SAS System 17:38 Wednesday, November 2, 2016 40900 39280 1 795981 190972 316.81% 8100 41000 39379 1 795981 190985 316.78% 8159 41100 39478 1 795981 190985 316.78% 8164 41200 39576 1 795981 190985 316.78% 8168 41300 39676 1 795981 190985 316.78% 8171 41400 39775 1 795981 190986 316.77% 8190 41500 39874 1 795981 190986 316.77% 8196 41600 39972 1 795981 190986 316.77% 8201 41700 40072 1 795981 190986 316.77% 8228 41800 40171 1 795981 190992 316.76% 8237 41900 40270 1 795981 190992 316.76% 8242 42000 40368 1 795981 190992 316.76% 8270 42100 40468 1 795981 190992 316.76% 8274 42200 40567 1 795981 190995 316.76% 8282 42300 40666 1 795981 190995 316.76% 8287 42400 40764 1 795981 190995 316.76% 8314 42500 40864 1 795981 190995 316.76% 8319 42600 40963 1 795981 190995 316.76% 8325 42700 41062 1 795981 190995 316.76% 8332 42800 41160 1 795981 190995 316.76% 8336 42900 41260 1 795981 190995 316.76% 8340 43000 41359 1 795981 190996 316.75% 8406 43100 41458 1 795981 190996 316.75% 8414 43200 41556 1 795981 190996 316.75% 8438 43300 41656 1 795981 190996 316.75% 8447 43400 41755 1 795981 190998 316.75% 8481 43500 41854 1 795981 190998 316.75% 8494 43600 41952 1 795981 190998 316.75% 8496 43700 42052 1 795981 190998 316.75% 8496 43800 42152 1 795981 190998 316.75% 8496 43900 42249 1 795981 190998 316.75% 8496 44000 42349 1 795981 190998 316.75% 8496 44100 42449 1 795981 190998 316.75% 8496 44200 42548 1 795981 190998 316.75% 8496 44300 42647 1 795981 190998 316.75% 8496 44400 42747 1 795981 190998 316.75% 8496 44500 42845 1 795981 190998 316.75% 8496 44600 42944 1 795981 190998 316.75% 8496 44700 43043 1 795981 190998 316.75% 8525 44800 43142 1 795981 190998 316.75% 8544 44900 43241 1 795981 191026 316.69% 8564 45000 43341 1 795981 191026 316.69% 8581 45100 43439 1 795981 191026 316.69% 8605 45200 43538 1 795981 191026 316.69% 8609 45300 43637 1 795981 191034 316.67% 8652 45400 43737 1 795981 191034 316.67% 8661 45500 43835 1 795981 191034 316.67% 8712 45600 43934 1 795981 191034 316.67% 8718 45700 44033 1 795981 191041 316.65% 8749 45800 44133 1 795981 191041 316.65% 8758 45900 44231 1 795981 191041 316.65% 8800 46000 44330 1 795981 191041 316.65% 8804 46100 44429 1 795981 191047 316.64% 8827 46200 44529 1 795981 191047 316.64% 8835 46300 44627 1 795981 191047 316.64% 8860 46400 44726 1 795981 191047 316.64% 8887 46500 44825 1 795981 191052 316.63% 8906 46600 44925 1 795981 191052 316.63% 8940 10 The SAS System 17:38 Wednesday, November 2, 2016 46700 45024 1 795981 191052 316.63% 8944 46800 45123 1 795981 191052 316.63% 8952 46900 45222 1 795981 191052 316.63% 8972 47000 45321 1 795981 191053 316.63% 9006 47100 45421 1 795981 191053 316.63% 9008 47200 45519 1 795981 191053 316.63% 9016 47300 45618 1 795981 191053 316.63% 9050 47400 45717 1 795981 191064 316.61% 9092 47500 45817 1 795981 191064 316.61% 9097 47600 45914 1 795981 191064 316.61% 9098 47700 46014 1 795981 191064 316.61% 9098 47800 46114 1 795981 191064 316.61% 9098 47900 46211 1 795981 191064 316.61% 9098 48000 46311 1 795981 191064 316.61% 9098 48100 46411 1 795981 191064 316.61% 9098 48200 46509 1 795981 191064 316.61% 9098 48300 46608 1 795981 191064 316.61% 9098 48400 46708 1 795981 191064 316.61% 9098 48500 46806 1 795981 191064 316.61% 9098 48600 46905 1 795981 191064 316.61% 9098 48700 47005 1 795981 191064 316.61% 9098 48800 47103 1 795981 191064 316.61% 9098 48900 47202 1 795981 191064 316.61% 9098 49000 47300 1 795981 191064 316.61% 9130 49100 47400 1 795981 191064 316.61% 9134 49200 47499 1 795981 191072 316.59% 9160 49300 47599 1 795981 191072 316.59% 9166 49400 47696 1 795981 191072 316.59% 9172 49500 47796 1 795981 191072 316.59% 9175 49600 47895 1 795981 191094 316.54% 9208 49700 47995 1 795981 191094 316.54% 9213 49800 48092 1 795981 191094 316.54% 9219 49900 48192 1 795981 191094 316.54% 9225 50000 48291 1 795981 191096 316.53% 9262 50100 48391 1 795981 191096 316.53% 9269 50200 48490 1 795981 191096 316.53% 9276 50300 48588 1 795981 191096 316.53% 9279 50400 48687 1 795981 191100 316.53% 9324 50500 48787 1 795981 191100 316.53% 9333 50600 48886 1 795981 191100 316.53% 9360 50700 48984 1 795981 191100 316.53% 9368 50800 49083 1 795981 191108 316.51% 9383 50900 49183 1 795981 191108 316.51% 9392 51000 49283 1 795981 191108 316.51% 9422 51100 49380 1 795981 191108 316.51% 9429 51200 49480 1 795981 191108 316.51% 9434 51300 49579 1 795981 191113 316.50% 9475 51400 49679 1 795981 191113 316.50% 9497 51500 49776 1 795981 191113 316.50% 9510 51600 49876 1 795981 191113 316.50% 9531 51700 49975 1 795981 191118 316.49% 9538 51800 50075 1 795981 191118 316.49% 9562 51900 50172 1 795981 191118 316.49% 9568 52000 50272 1 795981 191118 316.49% 9571 52100 50371 1 795981 191121 316.48% 9600 52200 50471 1 795981 191121 316.48% 9606 52300 50568 1 795981 191121 316.48% 9611 52400 50668 1 795981 191121 316.48% 9614 11 The SAS System 17:38 Wednesday, November 2, 2016 52500 50767 1 795981 191131 316.46% 9650 52600 50867 1 795981 191131 316.46% 9652 52700 50964 1 795981 191131 316.46% 9652 52800 51064 1 795981 191131 316.46% 9652 52900 51164 1 795981 191131 316.46% 9652 53000 51262 1 795981 191131 316.46% 9652 53100 51362 1 795981 191131 316.46% 9652 53200 51460 1 795981 191131 316.46% 9652 53300 51560 1 795981 191131 316.46% 9652 53400 51658 1 795981 191131 316.46% 9652 53500 51757 1 795981 191131 316.46% 9652 53600 51856 1 795981 191131 316.46% 9670 53700 51955 1 795981 191131 316.46% 9739 53800 52054 1 795981 191131 316.46% 9743 53900 52154 1 795981 191131 316.46% 9748 54000 52252 1 795981 191137 316.44% 9774 54100 52351 1 795981 191137 316.44% 9782 54200 52450 1 795981 191137 316.44% 9786 54300 52550 1 795981 191137 316.44% 9798 54400 52648 1 795981 191144 316.43% 9829 54500 52747 1 795981 191144 316.43% 9832 54600 52846 1 795981 191144 316.43% 9856 54700 52946 1 795981 191144 316.43% 9877 54800 53044 1 795981 191146 316.43% 9887 54900 53143 1 795981 191146 316.43% 9892 55000 53243 1 795981 191146 316.43% 9898 55100 53342 1 795981 191146 316.43% 9917 55200 53440 1 795981 191151 316.41% 9931 55300 53539 1 795981 191151 316.41% 9948 55400 53639 1 795981 191151 316.41% 9964 55500 53738 1 795981 191151 316.41% 9984 55600 53836 1 795981 191156 316.40% 9995 55700 53936 1 795981 191156 316.40% 10015 55800 54035 1 795981 191156 316.40% 10033 55900 54134 1 795981 191156 316.40% 10055 56000 54232 1 795981 191162 316.39% 10064 56100 54332 1 795981 191162 316.39% 10078 56200 54431 1 795981 191162 316.39% 10100 56300 54530 1 795981 191162 316.39% 10123 56400 54628 1 795981 191165 316.38% 10131 56500 54728 1 795981 191165 316.38% 10143 56600 54827 1 795981 191165 316.38% 10164 56700 54926 1 795981 191165 316.38% 10188 56800 55024 1 795981 191168 316.38% 10209 56900 55124 1 795981 191168 316.38% 10214 57000 55223 1 795981 191168 316.38% 10244 57100 55322 1 795981 191168 316.38% 10249 57200 55420 1 795981 191170 316.37% 10256 57300 55520 1 795981 191170 316.37% 10259 57400 55619 1 795981 191170 316.37% 10290 57500 55718 1 795981 191170 316.37% 10313 57600 55817 1 795981 191170 316.37% 10317 57700 55916 1 795981 191170 316.37% 10337 57800 56015 1 795981 191170 316.37% 10337 57900 56114 1 795981 191170 316.37% 10337 58000 56213 1 795981 191170 316.37% 10344 58100 56312 1 795981 191170 316.37% 10349 58200 56410 1 795981 191170 316.37% 10387 12 The SAS System 17:38 Wednesday, November 2, 2016 58300 56509 1 795981 191170 316.37% 10392 58400 56608 1 795981 191170 316.37% 10414 58500 56707 1 795981 191174 316.37% 10421 58600 56805 1 795981 191174 316.37% 10433 58700 56905 1 795981 191174 316.37% 10452 58800 57004 1 795981 191174 316.37% 10459 58900 57103 1 795981 191174 316.37% 10462 59000 57202 1 795981 191174 316.37% 10490 59100 57301 1 795981 191174 316.37% 10495 59200 57400 1 795981 191174 316.37% 10523 59300 57500 1 795981 191174 316.37% 10528 59400 57598 1 795981 191177 316.36% 10545 59500 57697 1 795981 191177 316.36% 10558 59600 57796 1 795981 191177 316.36% 10565 59700 57896 1 795981 191177 316.36% 10569 59800 57995 1 795981 191178 316.36% 10596 59900 58093 1 795981 191178 316.36% 10611 60000 58192 1 795981 191178 316.36% 10627 60100 58292 1 795981 191178 316.36% 10632 60200 58391 1 795981 191180 316.35% 10660 60300 58489 1 795981 191180 316.35% 10687 60400 58589 1 795981 191180 316.35% 10695 60500 58688 1 795981 191180 316.35% 10701 60600 58787 1 795981 191202 316.30% 10757 60700 58885 1 795981 191202 316.30% 10766 60800 58985 1 795981 191202 316.30% 10784 60900 59084 1 795981 191202 316.30% 10788 61000 59183 1 795981 191205 316.30% 10826 61100 59281 1 795981 191205 316.30% 10842 61200 59381 1 795981 191205 316.30% 10848 61300 59480 1 795981 191205 316.30% 10851 61400 59579 1 795981 191206 316.29% 10905 61500 59677 1 795981 191206 316.29% 10910 61600 59777 1 795981 191206 316.29% 10928 61700 59876 1 795981 191206 316.29% 10952 61800 59975 1 795981 191208 316.29% 10957 61900 60073 1 795981 191208 316.29% 10980 62000 60172 1 795981 191208 316.29% 10980 62100 60272 1 795981 191208 316.29% 10980 62200 60370 1 795981 191208 316.29% 10980 62300 60469 1 795981 191208 316.29% 10980 62400 60568 1 795981 191208 316.29% 10980 62500 60667 1 795981 191208 316.29% 10987 62600 60766 1 795981 191208 316.29% 11015 62700 60866 1 795981 191208 316.29% 11020 62800 60966 1 795981 191208 316.29% 11053 62900 61064 1 795981 191208 316.29% 11090 63000 61163 1 795981 191208 316.29% 11111 63100 61263 1 795981 191208 316.29% 11115 63200 61363 1 795981 191208 316.29% 11138 63300 61461 1 795981 191210 316.29% 11165 63400 61560 1 795981 191210 316.29% 11193 63500 61659 1 795981 191210 316.29% 11198 63600 61759 1 795981 191210 316.29% 11221 63700 61857 1 795981 191210 316.29% 11240 63800 61956 1 795981 191210 316.29% 11264 63900 62055 1 795981 191210 316.29% 11269 64000 62155 1 795981 191210 316.29% 11295 13 The SAS System 17:38 Wednesday, November 2, 2016 64100 62253 1 795981 191212 316.28% 11314 64200 62352 1 795981 191212 316.28% 11340 64300 62451 1 795981 191212 316.28% 11345 64400 62551 1 795981 191212 316.28% 11373 64500 62649 1 795981 191213 316.28% 11380 64600 62748 1 795981 191213 316.28% 11406 64700 62847 1 795981 191213 316.28% 11411 64800 62947 1 795981 191213 316.28% 11439 64900 63046 1 795981 191213 316.28% 11467 65000 63144 1 795981 191218 316.27% 11471 65100 63243 1 795981 191218 316.27% 11492 65200 63343 1 795981 191218 316.27% 11518 65300 63442 1 795981 191218 316.27% 11558 65400 63540 1 795981 191224 316.26% 11562 65500 63639 1 795981 191224 316.26% 11586 65600 63739 1 795981 191224 316.26% 11590 65700 63837 1 795981 191224 316.26% 11619 65800 63936 1 795981 191224 316.26% 11619 65900 64036 1 795981 191224 316.26% 11643 66000 64135 1 795981 191224 316.26% 11652 66100 64233 1 795981 191226 316.25% 11685 66200 64333 1 795981 191226 316.25% 11710 66300 64432 1 795981 191226 316.25% 11731 66400 64531 1 795981 191226 316.25% 11736 66500 64629 1 795981 191231 316.24% 11750 66600 64729 1 795981 191231 316.24% 11806 66700 64828 1 795981 191231 316.24% 11813 66800 64927 1 795981 191231 316.24% 11817 66900 65025 1 795981 191237 316.23% 11846 67000 65125 1 795981 191237 316.23% 11873 67100 65224 1 795981 191237 316.23% 11890 67200 65323 1 795981 191237 316.23% 11894 67300 65422 1 795981 191237 316.23% 11897 67400 65521 1 795981 191238 316.23% 11946 67500 65620 1 795981 191238 316.23% 11953 67600 65719 1 795981 191238 316.23% 11957 67700 65818 1 795981 191238 316.23% 11961 67800 65917 1 795981 191239 316.22% 12014 67900 66017 1 795981 191239 316.22% 12021 68000 66116 1 795981 191239 316.22% 12024 68100 66215 1 795981 191239 316.22% 12029 68200 66314 1 795981 191239 316.22% 12073 68300 66413 1 795981 191239 316.22% 12108 68400 66512 1 795981 191239 316.22% 12111 68500 66611 1 795981 191239 316.22% 12117 68600 66710 1 795981 191245 316.21% 12160 68700 66809 1 795981 191245 316.21% 12185 68800 66908 1 795981 191245 316.21% 12188 68900 67007 1 795981 191245 316.21% 12192 69000 67107 1 795981 191245 316.21% 12192 69100 67205 1 795981 191245 316.21% 12192 69200 67305 1 795981 191245 316.21% 12201 69300 67402 1 795981 191251 316.20% 12228 69400 67502 1 795981 191251 316.20% 12233 69500 67602 1 795981 191251 316.20% 12257 69600 67702 1 795981 191251 316.20% 12282 69700 67798 1 795981 191257 316.19% 12310 69800 67898 1 795981 191257 316.19% 12314 14 The SAS System 17:38 Wednesday, November 2, 2016 69900 67998 1 795981 191257 316.19% 12345 70000 68098 1 795981 191257 316.19% 12348 70100 68194 1 795981 191263 316.17% 12360 70200 68294 1 795981 191263 316.17% 12380 70300 68394 1 795981 191263 316.17% 12409 70400 68494 1 795981 191263 316.17% 12442 70500 68590 1 795981 191265 316.17% 12484 70600 68690 1 795981 191265 316.17% 12488 70700 68790 1 795981 191265 316.17% 12503 70800 68890 1 795981 191265 316.17% 12506 70900 68986 1 795981 191268 316.16% 12512 71000 69086 1 795981 191268 316.16% 12530 71100 69186 1 795981 191268 316.16% 12558 71200 69286 1 795981 191268 316.16% 12588 71300 69382 1 795981 191270 316.16% 12617 71400 69482 1 795981 191270 316.16% 12639 71500 69582 1 795981 191270 316.16% 12657 71600 69682 1 795981 191270 316.16% 12670 71700 69778 1 795981 191270 316.16% 12688 71800 69878 1 795981 191270 316.16% 12712 71900 69978 1 795981 191270 316.16% 12736 72000 70078 1 795981 191270 316.16% 12740 72100 70175 1 795981 191282 316.13% 12755 72200 70274 1 795981 191282 316.13% 12776 72300 70374 1 795981 191282 316.13% 12797 72400 70474 1 795981 191282 316.13% 12802 72500 70572 1 795981 191282 316.13% 12809 72600 70671 1 795981 191282 316.13% 12809 72700 70770 1 795981 191301 316.09% 12835 72800 70869 1 795981 191301 316.09% 12863 72900 70968 1 795981 191301 316.09% 12881 73000 71068 1 795981 191301 316.09% 12891 73100 71166 1 795981 191302 316.09% 12910 73200 71265 1 795981 191302 316.09% 12936 73300 71364 1 795981 191302 316.09% 12941 73400 71464 1 795981 191302 316.09% 12982 73500 71562 1 795981 191303 316.08% 12997 73600 71661 1 795981 191303 316.08% 13033 73700 71760 1 795981 191303 316.08% 13037 73800 71860 1 795981 191303 316.08% 13049 73900 71958 1 795981 191306 316.08% 13067 74000 72057 1 795981 191306 316.08% 13114 74100 72156 1 795981 191306 316.08% 13119 74200 72256 1 795981 191306 316.08% 13130 74300 72354 1 795981 191309 316.07% 13149 74400 72453 1 795981 191309 316.07% 13156 74500 72552 1 795981 191309 316.07% 13161 74600 72652 1 795981 191309 316.07% 13186 74700 72750 1 795981 191311 316.07% 13224 74800 72849 1 795981 191311 316.07% 13262 74900 72948 1 795981 191311 316.07% 13267 75000 73048 1 795981 191311 316.07% 13278 75100 73146 1 795981 191311 316.07% 13296 75200 73245 1 795981 191311 316.07% 13303 75300 73344 1 795981 191311 316.07% 13308 75400 73444 1 795981 191311 316.07% 13329 75500 73542 1 795981 191323 316.04% 13355 75600 73641 1 795981 191323 316.04% 13382 15 The SAS System 17:38 Wednesday, November 2, 2016 75700 73740 1 795981 191323 316.04% 13382 75800 73839 1 795981 191323 316.04% 13419 75900 73938 1 795981 191323 316.04% 13423 76000 74037 1 795981 191323 316.04% 13443 76100 74137 1 795981 191323 316.04% 13467 76200 74235 1 795981 191326 316.04% 13503 76300 74335 1 795981 191326 316.04% 13523 76400 74433 1 795981 191326 316.04% 13545 76500 74533 1 795981 191326 316.04% 13565 76600 74631 1 795981 191326 316.03% 13571 76700 74731 1 795981 191326 316.03% 13592 76800 74829 1 795981 191326 316.03% 13597 76900 74929 1 795981 191326 316.03% 13645 77000 75027 1 795981 191329 316.03% 13652 77100 75127 1 795981 191329 316.03% 13674 77200 75225 1 795981 191329 316.03% 13679 77300 75325 1 795981 191329 316.03% 13723 77400 75424 1 795981 191329 316.03% 13734 77500 75523 1 795981 191330 316.03% 13741 77600 75623 1 795981 191330 316.03% 13750 77700 75722 1 795981 191330 316.03% 13755 77800 75821 1 795981 191330 316.03% 13761 77900 75920 1 795981 191356 315.97% 13785 78000 76019 1 795981 191356 315.97% 13790 78100 76118 1 795981 191356 315.97% 13818 78200 76217 1 795981 191356 315.97% 13822 78300 76316 1 795981 191369 315.94% 13844 78400 76415 1 795981 191369 315.94% 13850 78500 76514 1 795981 191369 315.94% 13878 78600 76614 1 795981 191369 315.94% 13881 78700 76712 1 795981 191375 315.93% 13909 78800 76811 1 795981 191375 315.93% 13933 78900 76910 1 795981 191375 315.93% 13937 79000 77010 1 795981 191375 315.93% 13940 79100 77108 1 795981 191512 315.63% 13959 79200 77207 1 795981 191512 315.63% 13963 79300 77306 1 795981 191512 315.63% 13969 79400 77406 1 795981 191512 315.63% 13987 79500 77504 1 795981 191543 315.56% 14011 79600 77603 1 795981 191543 315.56% 14011 79700 77703 1 795981 191543 315.56% 14011 79800 77801 1 795981 191548 315.55% 14011 79900 77900 1 795981 191548 315.55% 14011 80000 77999 1 795981 191550 315.55% 14014 80100 78099 1 795981 191550 315.55% 14019 80200 78198 1 795981 191550 315.55% 14024 80300 78296 1 795981 191584 315.47% 14055 80400 78395 1 795981 191584 315.47% 14061 80500 78495 1 795981 191584 315.47% 14065 80600 78594 1 795981 191584 315.47% 14069 80700 78692 1 795981 191585 315.47% 14097 80800 78791 1 795981 191585 315.47% 14102 80900 78891 1 795981 191585 315.47% 14111 81000 78990 1 795981 191585 315.47% 14128 81100 79088 1 795981 191587 315.47% 14150 81200 79187 1 795981 191587 315.47% 14155 81300 79287 1 795981 191587 315.47% 14174 81400 79386 1 795981 191587 315.47% 14181 16 The SAS System 17:38 Wednesday, November 2, 2016 81500 79484 1 795981 191624 315.39% 14223 81600 79583 1 795981 191624 315.39% 14229 81700 79683 1 795981 191624 315.39% 14236 81800 79782 1 795981 191624 315.39% 14263 81900 79880 1 795981 191640 315.35% 14275 82000 79980 1 795981 191640 315.35% 14292 82100 80079 1 795981 191640 315.35% 14296 82200 80178 1 795981 191640 315.35% 14334 82300 80276 1 795981 191644 315.34% 14338 82400 80376 1 795981 191644 315.34% 14356 82500 80475 1 795981 191644 315.34% 14359 82600 80574 1 795981 191644 315.34% 14403 82700 80672 1 795981 191654 315.32% 14408 82800 80772 1 795981 191654 315.32% 14412 82900 80871 1 795981 191654 315.32% 14430 83000 80970 1 795981 191654 315.32% 14472 83100 81068 1 795981 191663 315.30% 14476 83200 81168 1 795981 191663 315.30% 14489 83300 81267 1 795981 191663 315.30% 14493 83400 81366 1 795981 191663 315.30% 14526 83500 81464 1 795981 191665 315.30% 14530 83600 81564 1 795981 191665 315.30% 14542 83700 81663 1 795981 191665 315.30% 14547 83800 81762 1 795981 191665 315.30% 14577 83900 81861 1 795981 191668 315.29% 14581 84000 81960 1 795981 191668 315.29% 14584 84100 82059 1 795981 191668 315.29% 14604 84200 82159 1 795981 191668 315.29% 14607 84300 82256 1 795981 191672 315.28% 14630 84400 82356 1 795981 191672 315.28% 14630 84500 82455 1 795981 191678 315.27% 14636 84600 82554 1 795981 191678 315.27% 14647 84700 82653 1 795981 191678 315.27% 14654 84800 82753 1 795981 191678 315.27% 14676 84900 82851 1 795981 191683 315.26% 14705 85000 82950 1 795981 191683 315.26% 14709 85100 83049 1 795981 191683 315.26% 14714 85200 83149 1 795981 191683 315.26% 14718 85300 83247 1 795981 191685 315.26% 14749 85400 83345 1 795981 191685 315.26% 14756 85500 83444 1 795981 191685 315.26% 14764 85600 83544 1 795981 191685 315.26% 14768 85700 83642 1 795981 191686 315.25% 14805 85800 83741 1 795981 191686 315.25% 14809 85900 83840 1 795981 191686 315.25% 14814 86000 83940 1 795981 191686 315.25% 14817 86100 84038 1 795981 191694 315.23% 14850 86200 84137 1 795981 191694 315.23% 14854 86300 84236 1 795981 191694 315.23% 14866 86400 84336 1 795981 191694 315.23% 14870 86500 84434 1 795981 191703 315.22% 14899 86600 84533 1 795981 191703 315.22% 14903 86700 84633 1 795981 191703 315.22% 14912 86800 84732 1 795981 191703 315.22% 14917 86900 84830 1 795981 191710 315.20% 14937 87000 84929 1 795981 191710 315.20% 14958 87100 85029 1 795981 191710 315.20% 14962 87200 85128 1 795981 191710 315.20% 14978 17 The SAS System 17:38 Wednesday, November 2, 2016 87300 85226 1 795981 191718 315.18% 15012 87400 85326 1 795981 191718 315.18% 15017 87500 85425 1 795981 191718 315.18% 15021 87600 85524 1 795981 191718 315.18% 15025 87700 85622 1 795981 191723 315.17% 15066 87800 85722 1 795981 191723 315.17% 15087 87900 85821 1 795981 191723 315.17% 15091 88000 85920 1 795981 191723 315.17% 15099 88100 86019 1 795981 191723 315.17% 15104 88200 86118 1 795981 191723 315.17% 15156 88300 86217 1 795981 191723 315.17% 15160 88400 86316 1 795981 191723 315.17% 15165 88500 86416 1 795981 191723 315.17% 15170 88600 86514 1 795981 191726 315.17% 15175 88700 86613 1 795981 191726 315.17% 15200 88800 86712 1 795981 191726 315.17% 15204 88900 86812 1 795981 191726 315.17% 15208 89000 86910 1 795981 191729 315.16% 15232 89100 87008 1 795981 191729 315.16% 15247 89200 87107 1 795981 191729 315.16% 15248 89300 87207 1 795981 191729 315.16% 15253 89400 87307 1 795981 191729 315.16% 15260 89500 87406 1 795981 191730 315.16% 15300 89600 87503 1 795981 191730 315.16% 15305 89700 87603 1 795981 191730 315.16% 15311 89800 87703 1 795981 191730 315.16% 15315 89900 87802 1 795981 191730 315.16% 15319 90000 87899 1 795981 191730 315.16% 15352 90100 87999 1 795981 191730 315.16% 15356 90200 88099 1 795981 191730 315.16% 15360 90300 88199 1 795981 191730 315.16% 15364 90400 88295 1 795981 191738 315.14% 15407 90500 88395 1 795981 191738 315.14% 15410 90600 88495 1 795981 191738 315.14% 15416 90700 88595 1 795981 191738 315.14% 15419 90800 88692 1 795981 191740 315.14% 15456 90900 88792 1 795981 191740 315.14% 15461 91000 88892 1 795981 191740 315.14% 15466 91100 88992 1 795981 191740 315.14% 15469 91200 89089 1 795981 191756 315.10% 15502 91300 89188 1 795981 191756 315.10% 15507 91400 89288 1 795981 191756 315.10% 15511 91500 89388 1 795981 191756 315.10% 15515 91600 89485 1 795981 191762 315.09% 15549 91700 89584 1 795981 191762 315.09% 15559 91800 89684 1 795981 191762 315.09% 15563 91900 89784 1 795981 191762 315.09% 15567 92000 89881 1 795981 191763 315.09% 15597 92100 89980 1 795981 191763 315.09% 15610 92200 90080 1 795981 191763 315.09% 15616 92300 90180 1 795981 191763 315.09% 15619 92400 90277 1 795981 191764 315.08% 15637 92500 90376 1 795981 191764 315.08% 15666 92600 90476 1 795981 191764 315.08% 15672 92700 90576 1 795981 191764 315.08% 15675 92800 90673 1 795981 191778 315.05% 15710 92900 90772 1 795981 191778 315.05% 15722 93000 90872 1 795981 191778 315.05% 15749 18 The SAS System 17:38 Wednesday, November 2, 2016 93100 90972 1 795981 191778 315.05% 15752 93200 91069 1 795981 191778 315.05% 15776 93300 91168 1 795981 191778 315.05% 15780 93400 91268 1 795981 191778 315.05% 15810 93500 91366 1 795981 191791 315.03% 15842 93600 91465 1 795981 191791 315.03% 15844 93700 91564 1 795981 191791 315.03% 15846 93800 91664 1 795981 191791 315.03% 15858 93900 91763 1 795981 191791 315.03% 15877 94000 91863 1 795981 191791 315.03% 15906 94100 91960 1 795981 191791 315.02% 15913 94200 92060 1 795981 191791 315.02% 15916 94300 92159 1 795981 191791 315.02% 15945 94400 92259 1 795981 191791 315.02% 15950 94500 92356 1 795981 191796 315.01% 15964 94600 92456 1 795981 191796 315.01% 15966 94700 92555 1 795981 191796 315.01% 15989 94800 92655 1 795981 191796 315.01% 15996 94900 92753 1 795981 191799 315.01% 16020 95000 92852 1 795981 191799 315.01% 16023 95100 92951 1 795981 191799 315.01% 16036 95200 93051 1 795981 191799 315.01% 16040 95300 93149 1 795981 191807 314.99% 16077 95400 93248 1 795981 191807 314.99% 16080 95500 93347 1 795981 191807 314.99% 16086 95600 93447 1 795981 191807 314.99% 16090 95700 93545 1 795981 191812 314.98% 16121 95800 93644 1 795981 191812 314.98% 16128 95900 93743 1 795981 191812 314.98% 16132 96000 93843 1 795981 191812 314.98% 16137 96100 93941 1 795981 191830 314.94% 16142 96200 94040 1 795981 191830 314.94% 16162 96300 94139 1 795981 191830 314.94% 16168 96400 94239 1 795981 191830 314.94% 16200 96500 94338 1 795981 191830 314.94% 16203 96600 94436 1 795981 191830 314.94% 16227 96700 94535 1 795981 191830 314.94% 16252 96800 94635 1 795981 191830 314.94% 16258 96900 94734 1 795981 191830 314.94% 16260 97000 94832 1 795981 191844 314.91% 16280 97100 94932 1 795981 191844 314.91% 16284 97200 95031 1 795981 191844 314.91% 16315 97300 95131 1 795981 191844 314.91% 16320 97400 95228 1 795981 191848 314.90% 16348 97500 95328 1 795981 191848 314.90% 16352 97600 95427 1 795981 191848 314.90% 16384 97700 95527 1 795981 191848 314.90% 16388 97800 95624 1 795981 191902 314.79% 16405 97900 95723 1 795981 191902 314.79% 16411 98000 95823 1 795981 191902 314.79% 16443 98100 95920 1 795981 191916 314.76% 16455 98200 96019 1 795981 191916 314.76% 16455 98300 96119 1 795981 191916 314.76% 16460 98400 96219 1 795981 191916 314.76% 16484 98500 96318 1 795981 191916 314.76% 16511 98600 96418 1 795981 191916 314.76% 16521 98700 96515 1 795981 191936 314.71% 16545 98800 96615 1 795981 191936 314.71% 16550 19 The SAS System 17:38 Wednesday, November 2, 2016 98900 96714 1 795981 191936 314.71% 16575 99000 96814 1 795981 191936 314.71% 16607 99100 96911 1 795981 191973 314.63% 16613 99200 97011 1 795981 191973 314.63% 16617 99300 97110 1 795981 191973 314.63% 16667 99400 97210 1 795981 191973 314.63% 16686 99500 97307 1 795981 191993 314.59% 16691 99600 97407 1 795981 191993 314.59% 16703 99700 97506 1 795981 191993 314.59% 16740 99800 97606 1 795981 191993 314.59% 16754 99900 97703 1 795981 192011 314.55% 16757 100000 97803 1 795981 192011 314.55% 16760 100100 97902 1 795981 192011 314.55% 16806 100200 98002 1 795981 192011 314.55% 16820 100300 98099 1 795981 192086 314.39% 16825 100400 98199 1 795981 192086 314.39% 16828 100500 98298 1 795981 192086 314.39% 16857 100600 98398 1 795981 192086 314.39% 16884 100700 98495 1 795981 197902 302.21% 16890 100800 98595 1 795981 197902 302.21% 16921 100900 98694 1 795981 197902 302.21% 16942 101000 98794 1 795981 197902 302.21% 16963 101100 98894 1 795981 197902 302.21% 16971 101200 98991 1 795981 197982 302.05% 16974 101300 99090 1 795981 197982 302.05% 16991 101400 99190 1 795981 197982 302.05% 16995 101500 99290 1 795981 197982 302.05% 17027 101600 99387 1 795981 198043 301.92% 17031 101700 99486 1 795981 198043 301.92% 17060 101800 99586 1 795981 198043 301.92% 17091 101900 99683 1 795981 198056 301.90% 17091 102000 99783 1 795981 198056 301.90% 17091 102100 99883 1 795981 198056 301.90% 17091 102200 99980 1 795981 198092 301.82% 17091 102300 100080 1 795981 198092 301.82% 17091 102400 100180 1 795981 198092 301.82% 17091 102500 100279 1 795981 198168 301.67% 17121 102600 100378 1 795981 198168 301.67% 17146 102700 100477 1 795981 198168 301.67% 17203 102800 100576 1 795981 198168 301.67% 17208 102900 100675 1 795981 198263 301.48% 17212 103000 100774 1 795981 198263 301.48% 17226 103100 100873 1 795981 198263 301.48% 17267 103200 100972 1 795981 198263 301.48% 17271 103300 101071 1 795981 198273 301.46% 17277 103400 101170 1 795981 198273 301.46% 17280 103500 101269 1 795981 198273 301.46% 17285 103600 101368 1 795981 198273 301.46% 17291 103700 101467 1 795981 198336 301.33% 17322 103800 101566 1 795981 198336 301.33% 17344 103900 101665 1 795981 198336 301.33% 17353 104000 101764 1 795981 198336 301.33% 17358 104100 101863 1 795981 198338 301.32% 17362 104200 101962 1 795981 198338 301.32% 17393 104300 102061 1 795981 198338 301.32% 17402 104400 102160 1 795981 198338 301.32% 17406 104500 102259 1 795981 198442 301.12% 17411 104600 102358 1 795981 198442 301.12% 17436 20 The SAS System 17:38 Wednesday, November 2, 2016 104700 102457 1 795981 198442 301.12% 17445 104800 102556 1 795981 198442 301.12% 17450 104900 102655 1 795981 198446 301.11% 17454 105000 102754 1 795981 198446 301.11% 17463 105100 102853 1 795981 198446 301.11% 17501 105200 102952 1 795981 198446 301.11% 17507 105300 103051 1 795981 198511 300.98% 17513 105400 103150 1 795981 198511 300.98% 17543 105500 103249 1 795981 198511 300.98% 17559 105600 103348 1 795981 198511 300.98% 17563 105700 103447 1 795981 198557 300.88% 17570 105800 103546 1 795981 198557 300.88% 17603 105900 103645 1 795981 198557 300.88% 17608 106000 103744 1 795981 198557 300.88% 17611 106100 103843 1 795981 198610 300.78% 17632 106200 103943 1 795981 198610 300.78% 17635 106300 104041 1 795981 198610 300.78% 17652 106400 104140 1 795981 198610 300.78% 17655 106500 104239 1 795981 198617 300.76% 17655 106600 104339 1 795981 198617 300.76% 17668 106700 104438 1 795981 198617 300.76% 17668 106800 104537 1 795981 198626 300.74% 17668 106900 104636 1 795981 198626 300.74% 17668 107000 104735 1 795981 198641 300.71% 17668 107100 104834 1 795981 198641 300.71% 17668 107200 104932 1 795981 198643 300.71% 17704 107300 105031 1 795981 198643 300.71% 17720 107400 105131 1 795981 198643 300.71% 17725 107500 105230 1 795981 198643 300.71% 17729 107600 105328 1 795981 198647 300.70% 17745 107700 105427 1 795981 198647 300.70% 17774 107800 105527 1 795981 198647 300.70% 17788 107900 105626 1 795981 198647 300.70% 17792 108000 105726 1 795981 198647 300.70% 17802 108100 105823 1 795981 198656 300.68% 17829 108200 105923 1 795981 198656 300.68% 17836 108300 106022 1 795981 198656 300.68% 17841 108400 106122 1 795981 198656 300.68% 17844 108500 106219 1 795981 198663 300.67% 17889 108600 106319 1 795981 198663 300.67% 17895 108700 106418 1 795981 198663 300.67% 17899 108800 106518 1 795981 198663 300.67% 17903 108900 106615 1 795981 198685 300.62% 17930 109000 106715 1 795981 198685 300.62% 17936 109100 106814 1 795981 198685 300.62% 17940 109200 106914 1 795981 198685 300.62% 17944 109300 107011 1 795981 198704 300.59% 17972 109400 107111 1 795981 198704 300.59% 17976 109500 107210 1 795981 198704 300.59% 18004 109600 107310 1 795981 198704 300.59% 18007 109700 107408 1 795981 198705 300.58% 18037 109800 107508 1 795981 198705 300.58% 18043 109900 107607 1 795981 198705 300.58% 18048 110000 107707 1 795981 198705 300.58% 18052 110100 107804 1 795981 198708 300.58% 18082 110200 107904 1 795981 198708 300.58% 18088 110300 108004 1 795981 198708 300.58% 18094 110400 108103 1 795981 198708 300.58% 18099 21 The SAS System 17:38 Wednesday, November 2, 2016 110500 108200 1 795981 198715 300.56% 18124 110600 108300 1 795981 198715 300.56% 18130 110700 108400 1 795981 198715 300.56% 18162 110800 108499 1 795981 198715 300.56% 18166 110900 108597 1 795981 198719 300.56% 18192 111000 108696 1 795981 198719 300.56% 18199 111100 108796 1 795981 198719 300.56% 18203 111200 108895 1 795981 198719 300.56% 18210 111300 108993 1 795981 198721 300.55% 18243 111400 109092 1 795981 198721 300.55% 18246 111500 109192 1 795981 198721 300.55% 18251 111600 109291 1 795981 198721 300.55% 18256 111700 109389 1 795981 198723 300.55% 18281 111800 109489 1 795981 198723 300.55% 18289 111900 109588 1 795981 198723 300.55% 18298 112000 109686 1 795981 198723 300.55% 18319 112100 109786 1 795981 198723 300.55% 18327 112200 109885 1 795981 198723 300.55% 18334 112300 109984 1 795981 198723 300.55% 18354 112400 110082 1 795981 198723 300.55% 18421 112500 110181 1 795981 198723 300.55% 18424 112600 110281 1 795981 198723 300.55% 18447 112700 110380 1 795981 198728 300.54% 18450 112800 110478 1 795981 198728 300.54% 18461 112900 110577 1 795981 198728 300.54% 18483 113000 110677 1 795981 198728 300.54% 18498 113100 110776 1 795981 198730 300.53% 18501 113200 110874 1 795981 198730 300.53% 18518 113300 110973 1 795981 198730 300.53% 18523 113400 111073 1 795981 198730 300.53% 18550 113500 111172 1 795981 198742 300.51% 18554 113600 111270 1 795981 198742 300.51% 18558 113700 111369 1 795981 198742 300.51% 18563 113800 111469 1 795981 198742 300.51% 18567 113900 111568 1 795981 198799 300.39% 18597 114000 111667 1 795981 198799 300.39% 18602 114100 111766 1 795981 198799 300.39% 18604 114200 111865 1 795981 198799 300.39% 18659 114300 111964 1 795981 198799 300.39% 18662 114400 112064 1 795981 198799 300.39% 18667 114500 112162 1 795981 198799 300.39% 18671 114600 112261 1 795981 198799 300.39% 18683 114700 112361 1 795981 198799 300.39% 18691 114800 112460 1 795981 198817 300.36% 18699 114900 112558 1 795981 198817 300.36% 18724 115000 112657 1 795981 198817 300.36% 18750 115100 112757 1 795981 198817 300.36% 18773 115200 112856 1 795981 198819 300.35% 18777 115300 112954 1 795981 198819 300.35% 18780 115400 113053 1 795981 198819 300.35% 18802 115500 113153 1 795981 198819 300.35% 18808 115600 113252 1 795981 198834 300.32% 18812 115700 113350 1 795981 198834 300.32% 18832 115703 113353 1 795981 198834 300.32% 18836 ERROR: Out of memory. NOTE: Objective of the best integer solution found = 795981.1483. WARNING: The best solution found does not satisfy all of the feasibility tolerances. NOTE: The data set WORK.PRIMALOUT has 160078 observations and 8 variables. 22 The SAS System 17:38 Wednesday, November 2, 2016 291 read data PRIMALOUT into [_N_] _VAR_[_N_]=_VALUE_; NOTE: There were 160078 observations read from the data set WORK.PRIMALOUT. 292 293 *Print results; 294 print "VALUES AFTER SOLVING" total_LOCATIONs_on total_maps_on goal total_distance total_penalty; 295 296 *Save results; 15 The SAS System 17:38 Wednesday, November 2, 2016 297 put 'optmodel: Save results'; optmodel: Save results 298 create data test.model_result_legs (where=(map>0.01)) from [ORDER_ID LOCATION_ID] = {ORDERS, LOCATIONS} map ; NOTE: The data set TEST.MODEL_RESULT_LEGS has 764 observations and 3 variables. 299 create data test.model_result_LOCATIONs (where=(on>0.01)) from [LOCATION_ID] = {LOCATIONS} on; NOTE: The data set TEST.MODEL_RESULT_LOCATIONS has 35 observations and 2 variables. 300 create data test.model_result_ORDERs from [ORDER_ID] = {ORDERS}; NOTE: The data set TEST.MODEL_RESULT_ORDERS has 764 observations and 1 variables. 301 run; NOTE: The RUN statement is ignored by OPTMODEL. 302 303 304 ODS HTML CLOSE; NOTE: The SAS System stopped processing this step because of errors. NOTE: The PROCEDURE OPTMODEL printed pages 4-8. NOTE: PROCEDURE OPTMODEL used (Total process time): real time 5:14:14.90 user cpu time 18:12:17.01 system cpu time 8:48.87 memory 16751077.78k OS Memory 16776904.00k Timestamp 11/02/2016 10:52:30 PM Step Count 24 Switch Count 3 Page Faults 23 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1880046 Involuntary Context Switches 1441212 Block Input Operations 3 Block Output Operations 162 NOTE: SAS Institute Inc., SAS Campus Drive, Cary, NC USA 27513-2414 NOTE: The SAS System used: real time 5:14:30.23 user cpu time 18:12:23.16 system cpu time 8:49.77 memory 16774343.95k OS Memory 16776904.00k Timestamp 11/02/2016 10:52:30 PM Step Count 24 Switch Count 3339 Page Faults 23 Page Reclaims 0 Page Swaps 0 Voluntary Context Switches 1883141 Involuntary Context Switches 1441432 Block Input Operations 3 Block Output Operations 531