The Primal & Dual Linear Programming Problems: Standard Form

*James D. Gaboardi*


*Florida State University*     |     *Department of Geography*



Adapted from:

Daskin, M. S. 1995. Network and Discrete Location: Models, Algorithms, and Applications. Hoboken, NJ, USA: John Wiley & Sons, Inc.


0. Imports and Data Creation


In [4]:
# Imports
import numpy as np
import gurobipy as gbp
import datetime as dt

#  Constants
Aij = np.random.randint(5, 50, 250000)
Aij = Aij.reshape(500,500)
AijSum = np.sum(Aij)
Cj = np.random.randint(10, 20, 500)
CjSum = np.sum(Cj)
Bi = np.random.randint(10, 20, 500)
BiSum = np.sum(Bi)

# Matrix Shape
rows = range(len(Aij))
cols = range(len(Aij[0]))

1. Primal


In [5]:
# Instantiate Model
mPrimal_Standard_GUROBI = gbp.Model(' -- Standard Primal Linear Programming Problem -- ')

# Set Focus to Optimality
gbp.setParam('MIPFocus', 2)

# Decision Variables
desc_var = []
for dest in cols:
    desc_var.append([])
    desc_var[dest].append(mPrimal_Standard_GUROBI.addVar(vtype=gbp.GRB.CONTINUOUS, 
                                    name='y'+str(dest+1)))

# Surplus Variables
surp_var = []
for orig in rows:
    surp_var.append([])
    surp_var[orig].append(mPrimal_Standard_GUROBI.addVar(vtype=gbp.GRB.CONTINUOUS, 
                                   name='s'+str(orig+1)))

# Update Model
mPrimal_Standard_GUROBI.update()

#Objective Function
mPrimal_Standard_GUROBI.setObjective(gbp.quicksum(Cj[dest]*desc_var[dest][0] 
                        for dest in cols), 
                        gbp.GRB.MINIMIZE)

# Constraints
for orig in rows:
    mPrimal_Standard_GUROBI.addConstr(gbp.quicksum(Aij[orig][dest]*desc_var[dest][0] 
                                        for dest in cols) 
                                        - surp_var[orig][0] 
                                        - Bi[orig] == 0)

# Optimize
mPrimal_Standard_GUROBI.optimize()
# Write LP file
mPrimal_Standard_GUROBI.write('LP.lp')
print '\n*************************************************************************'
print '    |   Decision Variables'
for v in mPrimal_Standard_GUROBI.getVars():
    print '    |  ', v.VarName, '=', v.x
print '*************************************************************************'
val = mPrimal_Standard_GUROBI.objVal
print '    |   Objective Value ------------------ ', val
print '    |   Aij Sum -------------------------- ', AijSum
print '    |   Cj Sum --------------------------- ', CjSum
print '    |   Bi Sum --------------------------- ', BiSum
print '    |   Matrix Dimensions ---------------- ', Aij.shape
print '    |   Date/Time ------------------------ ', dt.datetime.now()
print '*************************************************************************'
print '-- Gurobi Standard Primal Linear Programming Problem --'
print '\nJames Gaboardi, 2015'


Parameter MIPFocus unchanged
   Value: 2   Min: 0   Max: 3   Default: 0
Optimize a model with 500 rows, 1000 columns and 250500 nonzeros
Coefficient statistics:
  Matrix range    [1e+00, 5e+01]
  Objective range [1e+01, 2e+01]
  Bounds range    [0e+00, 0e+00]
  RHS range       [1e+01, 2e+01]

Concurrent LP optimizer: dual simplex and barrier
Showing barrier log only...

Presolve removed 0 rows and 500 columns
Presolve time: 0.15s
Presolved: 500 rows, 500 columns, 250000 nonzeros

Ordering time: 0.00s

Barrier statistics:
 AA' NZ     : 1.248e+05
 Factor NZ  : 1.252e+05 (roughly 1 MByte of memory)
 Factor Ops : 4.179e+07 (less than 1 second per iteration)
 Threads    : 1

Barrier performed 0 iterations in 0.23 seconds
Barrier solve interrupted - model solved by another algorithm


Solved with dual simplex
Solved in 137 iterations and 0.25 seconds
Optimal objective  7.066624192e+00

*************************************************************************
    |   Decision Variables
    |   y1 = 0.0
    |   y2 = 0.0
    |   y3 = 0.0
    |   y4 = 0.0
    |   y5 = 0.0
    |   y6 = 0.0
    |   y7 = 0.0
    |   y8 = 0.0297450043044
    |   y9 = 0.0
    |   y10 = 0.0
    |   y11 = 0.0
    |   y12 = 0.0
    |   y13 = 0.0
    |   y14 = 0.0
    |   y15 = 0.0
    |   y16 = 0.0
    |   y17 = 0.0
    |   y18 = 0.0
    |   y19 = 0.0
    |   y20 = 0.0
    |   y21 = 0.0
    |   y22 = 0.0
    |   y23 = 0.0
    |   y24 = 0.0
    |   y25 = 0.0
    |   y26 = 0.0
    |   y27 = 0.0
    |   y28 = 0.0
    |   y29 = 0.0
    |   y30 = 0.0
    |   y31 = 0.0
    |   y32 = 0.0
    |   y33 = 0.0
    |   y34 = 0.0
    |   y35 = 0.0
    |   y36 = 0.00309800638742
    |   y37 = 0.0
    |   y38 = 0.0
    |   y39 = 0.0
    |   y40 = 0.0
    |   y41 = 0.0
    |   y42 = 0.0323769910168
    |   y43 = 0.0
    |   y44 = 0.0
    |   y45 = 0.0
    |   y46 = 0.0
    |   y47 = 0.00363618800667
    |   y48 = 0.0
    |   y49 = 0.0
    |   y50 = 0.0
    |   y51 = 0.00733088026363
    |   y52 = 0.0
    |   y53 = 0.0
    |   y54 = 0.0
    |   y55 = 0.0
    |   y56 = 0.0
    |   y57 = 0.0
    |   y58 = 0.0413457660598
    |   y59 = 0.0
    |   y60 = 0.0
    |   y61 = 0.0
    |   y62 = 0.0
    |   y63 = 0.0
    |   y64 = 0.0
    |   y65 = 0.0
    |   y66 = 0.0
    |   y67 = 0.0
    |   y68 = 0.0
    |   y69 = 0.0
    |   y70 = 0.0
    |   y71 = 0.0
    |   y72 = 0.0
    |   y73 = 0.0
    |   y74 = 0.0
    |   y75 = 0.0
    |   y76 = 0.0012775913953
    |   y77 = 0.0
    |   y78 = 0.0193342731175
    |   y79 = 0.0
    |   y80 = 0.0
    |   y81 = 0.0
    |   y82 = 0.0
    |   y83 = 0.0312992343975
    |   y84 = 0.0
    |   y85 = 0.0
    |   y86 = 0.0
    |   y87 = 0.0
    |   y88 = 0.0
    |   y89 = 0.0
    |   y90 = 0.0
    |   y91 = 0.0
    |   y92 = 0.0
    |   y93 = 0.0
    |   y94 = 0.0
    |   y95 = 0.0
    |   y96 = 0.0
    |   y97 = 0.0
    |   y98 = 0.0
    |   y99 = 0.0
    |   y100 = 0.0
    |   y101 = 0.0
    |   y102 = 0.0
    |   y103 = 0.0
    |   y104 = 0.0
    |   y105 = 0.0
    |   y106 = 0.0
    |   y107 = 0.0
    |   y108 = 0.0
    |   y109 = 0.0
    |   y110 = 0.0
    |   y111 = 0.0
    |   y112 = 0.0
    |   y113 = 0.0
    |   y114 = 0.0
    |   y115 = 0.0
    |   y116 = 0.0081321789105
    |   y117 = 0.0
    |   y118 = 0.0
    |   y119 = 0.0
    |   y120 = 0.0
    |   y121 = 0.0
    |   y122 = 0.0
    |   y123 = 0.0
    |   y124 = 0.0
    |   y125 = 0.0
    |   y126 = 0.0
    |   y127 = 0.0
    |   y128 = 0.0
    |   y129 = 0.0
    |   y130 = 0.0
    |   y131 = 0.0
    |   y132 = 0.0
    |   y133 = 0.0
    |   y134 = 0.0
    |   y135 = 0.0
    |   y136 = 0.0
    |   y137 = 0.0
    |   y138 = 0.0
    |   y139 = 0.0
    |   y140 = 0.0
    |   y141 = 0.0
    |   y142 = 0.0
    |   y143 = 0.0
    |   y144 = 0.0
    |   y145 = 0.0
    |   y146 = 0.0
    |   y147 = 0.010541772305
    |   y148 = 0.0
    |   y149 = 0.0
    |   y150 = 0.0
    |   y151 = 0.0
    |   y152 = 0.0
    |   y153 = 0.0
    |   y154 = 0.0
    |   y155 = 0.0
    |   y156 = 0.0
    |   y157 = 0.0
    |   y158 = 0.0
    |   y159 = 0.0
    |   y160 = 0.0
    |   y161 = 0.0
    |   y162 = 0.0
    |   y163 = 0.0
    |   y164 = 0.0
    |   y165 = 0.0
    |   y166 = 0.0
    |   y167 = 0.0203635806378
    |   y168 = 0.0
    |   y169 = 0.0
    |   y170 = 0.0
    |   y171 = 0.0
    |   y172 = 0.0
    |   y173 = 0.0
    |   y174 = 0.0
    |   y175 = 0.0
    |   y176 = 0.0
    |   y177 = 0.0
    |   y178 = 0.0101300194963
    |   y179 = 0.0
    |   y180 = 0.0
    |   y181 = 0.0
    |   y182 = 0.0
    |   y183 = 0.0
    |   y184 = 0.0
    |   y185 = 0.0
    |   y186 = 0.0162390452175
    |   y187 = 0.0
    |   y188 = 0.0
    |   y189 = 0.0
    |   y190 = 0.0
    |   y191 = 0.0
    |   y192 = 0.0
    |   y193 = 0.0
    |   y194 = 0.0
    |   y195 = 0.0
    |   y196 = 0.0
    |   y197 = 0.0164811872445
    |   y198 = 0.0420364330557
    |   y199 = 0.0
    |   y200 = 0.0
    |   y201 = 0.0
    |   y202 = 0.0
    |   y203 = 0.0
    |   y204 = 0.0
    |   y205 = 0.0
    |   y206 = 0.0
    |   y207 = 0.0
    |   y208 = 0.0
    |   y209 = 0.0
    |   y210 = 0.0
    |   y211 = 0.0
    |   y212 = 0.0
    |   y213 = 0.0
    |   y214 = 0.0
    |   y215 = 0.0
    |   y216 = 0.0
    |   y217 = 0.0
    |   y218 = 0.0
    |   y219 = 0.0
    |   y220 = 0.0
    |   y221 = 0.0
    |   y222 = 0.0
    |   y223 = 0.0
    |   y224 = 0.0
    |   y225 = 0.0
    |   y226 = 0.0
    |   y227 = 0.0
    |   y228 = 0.0
    |   y229 = 0.0
    |   y230 = 0.0
    |   y231 = 0.00347616598865
    |   y232 = 0.0
    |   y233 = 0.0
    |   y234 = 0.0
    |   y235 = 0.0
    |   y236 = 0.0
    |   y237 = 0.0
    |   y238 = 0.0
    |   y239 = 0.0
    |   y240 = 0.0
    |   y241 = 0.0
    |   y242 = 0.0
    |   y243 = 0.0
    |   y244 = 0.0
    |   y245 = 0.0
    |   y246 = 0.0
    |   y247 = 0.0
    |   y248 = 0.0
    |   y249 = 0.0
    |   y250 = 0.0
    |   y251 = 0.0
    |   y252 = 0.0
    |   y253 = 0.0
    |   y254 = 0.0
    |   y255 = 0.0
    |   y256 = 0.0
    |   y257 = 0.0
    |   y258 = 0.0
    |   y259 = 0.0
    |   y260 = 0.0
    |   y261 = 0.0
    |   y262 = 0.0
    |   y263 = 0.0
    |   y264 = 0.0
    |   y265 = 0.0
    |   y266 = 0.0
    |   y267 = 0.0
    |   y268 = 0.0
    |   y269 = 0.0
    |   y270 = 0.0
    |   y271 = 0.0
    |   y272 = 0.0
    |   y273 = 0.0
    |   y274 = 0.0
    |   y275 = 0.0
    |   y276 = 0.0185508525488
    |   y277 = 0.0
    |   y278 = 0.0
    |   y279 = 0.0
    |   y280 = 0.0
    |   y281 = 0.0
    |   y282 = 0.00143623868282
    |   y283 = 0.0
    |   y284 = 0.0
    |   y285 = 0.0
    |   y286 = 0.0
    |   y287 = 0.0
    |   y288 = 0.0
    |   y289 = 0.0
    |   y290 = 0.0
    |   y291 = 0.0
    |   y292 = 0.0
    |   y293 = 0.0
    |   y294 = 0.0
    |   y295 = 0.0
    |   y296 = 0.0
    |   y297 = 0.0
    |   y298 = 0.0
    |   y299 = 0.0
    |   y300 = 0.0
    |   y301 = 0.0
    |   y302 = 0.0113611561678
    |   y303 = 0.0
    |   y304 = 0.0
    |   y305 = 0.0
    |   y306 = 0.00933459969759
    |   y307 = 0.0
    |   y308 = 0.0
    |   y309 = 0.0
    |   y310 = 0.0
    |   y311 = 0.0
    |   y312 = 0.0
    |   y313 = 0.0
    |   y314 = 0.0
    |   y315 = 0.0
    |   y316 = 0.0
    |   y317 = 0.0
    |   y318 = 0.0
    |   y319 = 0.0446832004251
    |   y320 = 0.0
    |   y321 = 0.0
    |   y322 = 0.0
    |   y323 = 0.0
    |   y324 = 0.0
    |   y325 = 0.0
    |   y326 = 0.0
    |   y327 = 0.0
    |   y328 = 0.0
    |   y329 = 0.0171422095858
    |   y330 = 0.0
    |   y331 = 0.0
    |   y332 = 0.0
    |   y333 = 0.0
    |   y334 = 0.0
    |   y335 = 0.0349569727637
    |   y336 = 0.0
    |   y337 = 0.0
    |   y338 = 0.0
    |   y339 = 0.0
    |   y340 = 0.0
    |   y341 = 0.0
    |   y342 = 0.0
    |   y343 = 0.0
    |   y344 = 0.0
    |   y345 = 0.0
    |   y346 = 0.0
    |   y347 = 0.0
    |   y348 = 0.0
    |   y349 = 0.0
    |   y350 = 0.0
    |   y351 = 0.0137774824154
    |   y352 = 0.0
    |   y353 = 0.0
    |   y354 = 0.0
    |   y355 = 0.0429525667159
    |   y356 = 0.0
    |   y357 = 0.0
    |   y358 = 0.0043929152691
    |   y359 = 0.0
    |   y360 = 0.0
    |   y361 = 0.0
    |   y362 = 0.033670762128
    |   y363 = 0.0
    |   y364 = 0.0
    |   y365 = 0.0
    |   y366 = 0.0
    |   y367 = 0.0
    |   y368 = 0.0
    |   y369 = 0.0
    |   y370 = 0.0
    |   y371 = 0.0
    |   y372 = 0.0
    |   y373 = 0.0
    |   y374 = 0.0
    |   y375 = 0.0
    |   y376 = 0.0
    |   y377 = 0.0
    |   y378 = 0.0
    |   y379 = 0.0
    |   y380 = 0.0
    |   y381 = 0.0
    |   y382 = 0.0
    |   y383 = 0.0
    |   y384 = 0.0
    |   y385 = 0.0
    |   y386 = 0.0
    |   y387 = 0.0
    |   y388 = 0.0
    |   y389 = 0.0
    |   y390 = 0.0
    |   y391 = 0.0
    |   y392 = 0.0
    |   y393 = 0.0
    |   y394 = 0.0
    |   y395 = 0.0
    |   y396 = 0.0280221742432
    |   y397 = 0.0
    |   y398 = 0.0
    |   y399 = 0.0
    |   y400 = 0.0
    |   y401 = 0.0
    |   y402 = 0.0
    |   y403 = 0.0207117832696
    |   y404 = 0.0
    |   y405 = 0.0188410351676
    |   y406 = 0.00809370127025
    |   y407 = 0.0
    |   y408 = 0.0
    |   y409 = 0.0
    |   y410 = 0.0
    |   y411 = 0.0
    |   y412 = 0.0
    |   y413 = 0.0
    |   y414 = 0.0
    |   y415 = 0.0
    |   y416 = 0.00824441816134
    |   y417 = 0.0
    |   y418 = 0.0
    |   y419 = 0.0
    |   y420 = 0.0
    |   y421 = 0.0
    |   y422 = 0.00832520809828
    |   y423 = 0.0
    |   y424 = 0.0
    |   y425 = 0.0
    |   y426 = 0.0
    |   y427 = 0.0
    |   y428 = 0.0
    |   y429 = 0.0
    |   y430 = 0.0132992012412
    |   y431 = 0.0
    |   y432 = 0.0
    |   y433 = 0.0
    |   y434 = 0.0
    |   y435 = 0.0
    |   y436 = 0.0
    |   y437 = 0.0
    |   y438 = 0.0
    |   y439 = 0.0
    |   y440 = 0.0
    |   y441 = 0.0
    |   y442 = 0.0
    |   y443 = 0.0
    |   y444 = 0.0
    |   y445 = 0.000249671739067
    |   y446 = 0.0
    |   y447 = 0.0
    |   y448 = 0.0
    |   y449 = 0.0
    |   y450 = 0.0
    |   y451 = 0.0
    |   y452 = 0.0
    |   y453 = 0.0
    |   y454 = 0.0
    |   y455 = 0.0
    |   y456 = 0.0
    |   y457 = 0.0281740516236
    |   y458 = 0.0
    |   y459 = 0.0
    |   y460 = 0.0
    |   y461 = 0.0
    |   y462 = 0.0
    |   y463 = 0.0
    |   y464 = 0.0
    |   y465 = 0.0
    |   y466 = 0.0
    |   y467 = 0.0
    |   y468 = 0.0
    |   y469 = 0.0
    |   y470 = 0.0
    |   y471 = 0.0
    |   y472 = 0.0
    |   y473 = 0.0
    |   y474 = 0.0
    |   y475 = 0.0
    |   y476 = 0.0
    |   y477 = 0.0
    |   y478 = 0.0
    |   y479 = 0.0
    |   y480 = 0.0
    |   y481 = 0.0
    |   y482 = 0.0
    |   y483 = 0.0
    |   y484 = 0.0
    |   y485 = 0.0
    |   y486 = 0.00488388161999
    |   y487 = 0.0
    |   y488 = 0.024836095265
    |   y489 = 0.0
    |   y490 = 0.0
    |   y491 = 0.0
    |   y492 = 0.0
    |   y493 = 0.0
    |   y494 = 0.0
    |   y495 = 0.0
    |   y496 = 0.0
    |   y497 = 0.0
    |   y498 = 0.0
    |   y499 = 0.0
    |   y500 = 0.0
    |   s1 = 4.93364765819
    |   s2 = 0.26256158562
    |   s3 = 7.65238398937
    |   s4 = 6.07751504516
    |   s5 = 1.79181841376
    |   s6 = 1.49473638722
    |   s7 = 2.36842385865
    |   s8 = 0.134665368795
    |   s9 = 4.3521964619
    |   s10 = 2.91977360533
    |   s11 = 2.42064619955
    |   s12 = 0.353319679909
    |   s13 = 4.35152959355
    |   s14 = 0.914916326533
    |   s15 = 2.59613572673
    |   s16 = 6.51499624128
    |   s17 = 5.23019975598
    |   s18 = 1.79603349732
    |   s19 = 3.46758468734
    |   s20 = 2.32071344305
    |   s21 = 6.31575816654
    |   s22 = 7.69298488462
    |   s23 = 4.92171753149
    |   s24 = 5.87838803896
    |   s25 = 0.431090631679
    |   s26 = 6.48239068291
    |   s27 = 3.34369009145
    |   s28 = 0.0
    |   s29 = 8.80915865938
    |   s30 = 0.501175650913
    |   s31 = 1.04893338292
    |   s32 = 5.20262283311
    |   s33 = 6.30067284526
    |   s34 = 8.86891737438
    |   s35 = 5.21094049017
    |   s36 = 9.67184635018
    |   s37 = 2.63119698185
    |   s38 = 6.39556146163
    |   s39 = 9.14642172376
    |   s40 = 3.80775920328
    |   s41 = 5.93706434654
    |   s42 = 3.28094799761
    |   s43 = 3.81282391601
    |   s44 = 2.32613350316
    |   s45 = 7.37216077183
    |   s46 = 2.00855862417
    |   s47 = 0.329803351297
    |   s48 = 3.06398384792
    |   s49 = 4.67449829578
    |   s50 = 3.80624307006
    |   s51 = 0.137499453718
    |   s52 = 5.18727350768
    |   s53 = 4.27512503036
    |   s54 = 0.59982117088
    |   s55 = 4.01231391488
    |   s56 = 12.2055528452
    |   s57 = 4.14715248867
    |   s58 = 6.08137506285
    |   s59 = 3.6236501055
    |   s60 = 1.00727748551
    |   s61 = 0.0
    |   s62 = 0.0
    |   s63 = 8.62669766699
    |   s64 = 0.0
    |   s65 = 0.289448277451
    |   s66 = 2.45362887691
    |   s67 = 2.13326743373
    |   s68 = 3.20059669118
    |   s69 = 6.45467660507
    |   s70 = 1.01626416665
    |   s71 = 10.6013616844
    |   s72 = 3.18043744703
    |   s73 = 5.13833544552
    |   s74 = 0.0
    |   s75 = 1.76335050143
    |   s76 = 0.0
    |   s77 = 0.838791560302
    |   s78 = 1.08784499212
    |   s79 = 0.0
    |   s80 = 5.82075782373
    |   s81 = 4.47276119582
    |   s82 = 2.48408570818
    |   s83 = 0.0
    |   s84 = 9.65214380797
    |   s85 = 6.96343091326
    |   s86 = 3.45056501728
    |   s87 = 2.45311368426
    |   s88 = 1.74090873264
    |   s89 = 0.0
    |   s90 = 3.30265524334
    |   s91 = 0.0
    |   s92 = 7.79789264695
    |   s93 = 4.90903333209
    |   s94 = 10.1463214626
    |   s95 = 0.110205590537
    |   s96 = 4.99595862098
    |   s97 = 4.61893673934
    |   s98 = 6.99597346355
    |   s99 = 6.58315420071
    |   s100 = 6.44897807171
    |   s101 = 6.03700665948
    |   s102 = 0.0
    |   s103 = 4.78187974704
    |   s104 = 7.03353374114
    |   s105 = 9.00868689442
    |   s106 = 7.71426391901
    |   s107 = 2.14156686389
    |   s108 = 3.61126437
    |   s109 = 5.32957821484
    |   s110 = 1.93661968879
    |   s111 = 2.13325280023
    |   s112 = 1.20944973939
    |   s113 = 5.7634367531
    |   s114 = 7.05166420727
    |   s115 = 9.11923565556
    |   s116 = 6.0290638908
    |   s117 = 0.260163484952
    |   s118 = 7.76017738408
    |   s119 = 7.51424543827
    |   s120 = 1.6850956514
    |   s121 = 0.919334249922
    |   s122 = 6.31172648158
    |   s123 = 3.67909520487
    |   s124 = 2.10497221656
    |   s125 = 5.1123678946
    |   s126 = 0.0
    |   s127 = 3.93725114369
    |   s128 = 4.40461623198
    |   s129 = 7.90737975823
    |   s130 = 5.09912346013
    |   s131 = 8.74302450272
    |   s132 = 3.97770386309
    |   s133 = 2.6107419823
    |   s134 = 0.580027801873
    |   s135 = 9.37914054188
    |   s136 = 0.0
    |   s137 = 4.29128341911
    |   s138 = 0.425105932557
    |   s139 = 9.44430869113
    |   s140 = 5.24184314553
    |   s141 = 7.61615664946
    |   s142 = 1.51138949717
    |   s143 = 3.84365705378
    |   s144 = 2.13692465347
    |   s145 = 6.41513055045
    |   s146 = 1.96529784299
    |   s147 = 3.59387826988
    |   s148 = 0.30227248363
    |   s149 = 0.0
    |   s150 = 3.63973051502
    |   s151 = 7.99852816549
    |   s152 = 10.0398518962
    |   s153 = 2.21183261085
    |   s154 = 6.79890216701
    |   s155 = 4.63523751414
    |   s156 = 4.54038219366
    |   s157 = 3.37974878919
    |   s158 = 4.31034879952
    |   s159 = 7.75428774327
    |   s160 = 4.72948073183
    |   s161 = 4.60569717893
    |   s162 = 4.68553419454
    |   s163 = 8.78735668388
    |   s164 = 11.9485155966
    |   s165 = 6.50002001039
    |   s166 = 9.35953156628
    |   s167 = 9.8765458541
    |   s168 = 4.81731945395
    |   s169 = 6.4737133792
    |   s170 = 1.63522283906
    |   s171 = 6.45156373113
    |   s172 = 0.0
    |   s173 = 4.9555469349
    |   s174 = 3.45741408996
    |   s175 = 4.42884981017
    |   s176 = 3.77854487312
    |   s177 = 6.09706327469
    |   s178 = 3.4276116021
    |   s179 = 1.49767629508
    |   s180 = 5.54573581695
    |   s181 = 2.96009018348
    |   s182 = 5.81424041279
    |   s183 = 1.16318750876
    |   s184 = 6.44176044963
    |   s185 = 2.5230918946
    |   s186 = 5.31811306183
    |   s187 = 7.26777265348
    |   s188 = 3.06952786283
    |   s189 = 0.0
    |   s190 = 0.493536995106
    |   s191 = 1.11192670981
    |   s192 = 0.0
    |   s193 = 3.17521634902
    |   s194 = 4.45332829144
    |   s195 = 3.98344588944
    |   s196 = 1.98602569967
    |   s197 = 6.20224583842
    |   s198 = 4.91148436633
    |   s199 = 0.722885595685
    |   s200 = 4.80421137137
    |   s201 = 6.32671919214
    |   s202 = 0.735629427889
    |   s203 = 0.0
    |   s204 = 7.31888430604
    |   s205 = 2.11883214696
    |   s206 = 8.74847456057
    |   s207 = 2.38076797105
    |   s208 = 5.37394959045
    |   s209 = 1.05956150616
    |   s210 = 12.1915374746
    |   s211 = 6.82289354981
    |   s212 = 5.24811740174
    |   s213 = 6.2047660282
    |   s214 = 1.20829838879
    |   s215 = 11.0868555902
    |   s216 = 4.69529172331
    |   s217 = 2.79942312506
    |   s218 = 7.13229488459
    |   s219 = 8.07460831221
    |   s220 = 0.0
    |   s221 = 4.86463796014
    |   s222 = 3.57239852797
    |   s223 = 5.92499778602
    |   s224 = 11.8743020834
    |   s225 = 3.50613816227
    |   s226 = 1.91136823927
    |   s227 = 2.42727977179
    |   s228 = 0.0
    |   s229 = 5.31090882782
    |   s230 = 0.907021707874
    |   s231 = 4.15477641894
    |   s232 = 5.36864300007
    |   s233 = 6.63602103667
    |   s234 = 3.2280770528
    |   s235 = 4.51837931956
    |   s236 = 2.30969844368
    |   s237 = 4.37165095323
    |   s238 = 7.19748852131
    |   s239 = 7.77752301687
    |   s240 = 0.889186976791
    |   s241 = 3.19480969168
    |   s242 = 4.73251923407
    |   s243 = 3.71815487917
    |   s244 = 4.88223748526
    |   s245 = 4.94671512856
    |   s246 = 8.73819337732
    |   s247 = 2.87407919297
    |   s248 = 3.53850107033
    |   s249 = 4.32918428171
    |   s250 = 7.82254495876
    |   s251 = 2.78382852269
    |   s252 = 4.58850920397
    |   s253 = 4.15955315274
    |   s254 = 7.74665233606
    |   s255 = 6.2876313435
    |   s256 = 10.2481068115
    |   s257 = 5.47513337389
    |   s258 = 6.49968392686
    |   s259 = 3.23254295878
    |   s260 = 1.6902785191
    |   s261 = 1.20196963869
    |   s262 = 5.10672785017
    |   s263 = 3.205961324
    |   s264 = 7.57144583125
    |   s265 = 4.02701090592
    |   s266 = 4.55901700229
    |   s267 = 0.0
    |   s268 = 2.96058030091
    |   s269 = 3.20066899321
    |   s270 = 4.38901855565
    |   s271 = 10.4127365207
    |   s272 = 7.02198059079
    |   s273 = 0.209571375341
    |   s274 = 3.05174482995
    |   s275 = 0.93412445125
    |   s276 = 7.05236349045
    |   s277 = 1.13755561262
    |   s278 = 1.77142821518
    |   s279 = 4.96136099654
    |   s280 = 6.44807736995
    |   s281 = 9.63412518025
    |   s282 = 0.0
    |   s283 = 4.25267372775
    |   s284 = 8.55224719544
    |   s285 = 6.15890979088
    |   s286 = 6.05025972353
    |   s287 = 9.42994360697
    |   s288 = 1.35745805908
    |   s289 = 5.72165772867
    |   s290 = 1.6286302704
    |   s291 = 4.67200073798
    |   s292 = 8.41623491018
    |   s293 = 3.3853266944
    |   s294 = 10.3378505424
    |   s295 = 2.91457983902
    |   s296 = 1.49342450644
    |   s297 = 6.30356422193
    |   s298 = 5.32129398882
    |   s299 = 4.7876374118
    |   s300 = 3.04258620975
    |   s301 = 2.54128841973
    |   s302 = 6.22252385632
    |   s303 = 1.37758656736
    |   s304 = 0.0
    |   s305 = 1.25074949846
    |   s306 = 6.78432062123
    |   s307 = 7.69247888211
    |   s308 = 2.51408786017
    |   s309 = 5.80617068453
    |   s310 = 2.47509404201
    |   s311 = 8.9849368453
    |   s312 = 8.99617172575
    |   s313 = 4.3480278518
    |   s314 = 1.78511299284
    |   s315 = 6.77160426183
    |   s316 = 10.9690159698
    |   s317 = 2.23847944689
    |   s318 = 2.23749475141
    |   s319 = 6.88348108548
    |   s320 = 0.58138228547
    |   s321 = 1.56863204895
    |   s322 = 5.18086227801
    |   s323 = 0.273725750215
    |   s324 = 1.58639559365
    |   s325 = 3.74432337822
    |   s326 = 4.21624828575
    |   s327 = 9.13611396809
    |   s328 = 1.85175571639
    |   s329 = 1.31078333208
    |   s330 = 0.0
    |   s331 = 6.08534365624
    |   s332 = 10.00701805
    |   s333 = 6.62973437783
    |   s334 = 1.50284517894
    |   s335 = 6.68912957163
    |   s336 = 0.0
    |   s337 = 3.86111646677
    |   s338 = 3.98379017128
    |   s339 = 0.986587236458
    |   s340 = 3.32566903065
    |   s341 = 8.84958435571
    |   s342 = 0.0
    |   s343 = 5.79217797543
    |   s344 = 7.57412123682
    |   s345 = 7.65384794869
    |   s346 = 0.0
    |   s347 = 11.4798280991
    |   s348 = 7.66892988459
    |   s349 = 3.36792758854
    |   s350 = 8.20321065358
    |   s351 = 10.1451496046
    |   s352 = 3.08950209756
    |   s353 = 0.524585733033
    |   s354 = 9.63543436849
    |   s355 = 2.08934810448
    |   s356 = 6.67023630127
    |   s357 = 5.66429131816
    |   s358 = 1.12466763861
    |   s359 = 5.44296789607
    |   s360 = 2.82432633696
    |   s361 = 0.0
    |   s362 = 0.407303705438
    |   s363 = 10.5937281266
    |   s364 = 6.07567754659
    |   s365 = 5.9213408671
    |   s366 = 6.94551863107
    |   s367 = 1.73727133
    |   s368 = 8.99269236983
    |   s369 = 2.02201119597
    |   s370 = 10.2666080207
    |   s371 = 0.0
    |   s372 = 2.79448705345
    |   s373 = 3.13836793772
    |   s374 = 5.32567374484
    |   s375 = 9.37070264853
    |   s376 = 2.42395758694
    |   s377 = 1.83294329716
    |   s378 = 0.800471290736
    |   s379 = 5.8608448089
    |   s380 = 3.98178599259
    |   s381 = 5.42873284793
    |   s382 = 2.15898399601
    |   s383 = 2.29234085472
    |   s384 = 3.41193325457
    |   s385 = 2.11756553635
    |   s386 = 6.69106478494
    |   s387 = 4.59224672991
    |   s388 = 9.23314172671
    |   s389 = 0.347602270813
    |   s390 = 2.57634810783
    |   s391 = 3.90091131532
    |   s392 = 2.69980283704
    |   s393 = 9.90777756979
    |   s394 = 6.17813965441
    |   s395 = 0.0
    |   s396 = 10.1677783338
    |   s397 = 0.0
    |   s398 = 4.98399735162
    |   s399 = 0.985767919051
    |   s400 = 0.785801332359
    |   s401 = 0.315466673176
    |   s402 = 3.42276408059
    |   s403 = 7.20692886884
    |   s404 = 5.38876674344
    |   s405 = 5.43184844903
    |   s406 = 4.53031638483
    |   s407 = 5.05892062933
    |   s408 = 3.1046330123
    |   s409 = 0.743190723332
    |   s410 = 4.57407553004
    |   s411 = 2.46062334479
    |   s412 = 0.750933510505
    |   s413 = 1.91008685133
    |   s414 = 5.86696872799
    |   s415 = 10.5472623352
    |   s416 = 6.61173682671
    |   s417 = 2.97006546421
    |   s418 = 5.66724428139
    |   s419 = 2.39333283303
    |   s420 = 5.33910752854
    |   s421 = 6.68395271129
    |   s422 = 7.48492399376
    |   s423 = 0.411620478671
    |   s424 = 6.81475568128
    |   s425 = 0.92050519929
    |   s426 = 9.27997613804
    |   s427 = 5.48081478075
    |   s428 = 2.42923451988
    |   s429 = 2.95020479498
    |   s430 = 7.0866322824
    |   s431 = 0.0
    |   s432 = 0.348706163916
    |   s433 = 0.0
    |   s434 = 1.97981052564
    |   s435 = 8.48476295076
    |   s436 = 1.80612245254
    |   s437 = 0.0
    |   s438 = 0.815387649842
    |   s439 = 8.90473356581
    |   s440 = 5.22843006261
    |   s441 = 2.77962013941
    |   s442 = 6.04090058731
    |   s443 = 5.08121611093
    |   s444 = 0.468512042134
    |   s445 = 3.67040309572
    |   s446 = 0.401533220351
    |   s447 = 0.0
    |   s448 = 8.04138154425
    |   s449 = 6.96609247698
    |   s450 = 6.55448233169
    |   s451 = 1.23683414251
    |   s452 = 0.0
    |   s453 = 7.07792233369
    |   s454 = 1.91239033519
    |   s455 = 8.5788072212
    |   s456 = 2.49717882832
    |   s457 = 4.10382550992
    |   s458 = 7.11920521342
    |   s459 = 0.873039597571
    |   s460 = 6.15112831307
    |   s461 = 6.17313885745
    |   s462 = 0.0
    |   s463 = 5.90301486591
    |   s464 = 5.94687343395
    |   s465 = 4.12237280838
    |   s466 = 1.17835288075
    |   s467 = 6.6837126494
    |   s468 = 1.06197157809
    |   s469 = 3.15174160456
    |   s470 = 2.61344983821
    |   s471 = 6.18928109287
    |   s472 = 6.16011355983
    |   s473 = 0.280596082635
    |   s474 = 2.79676658975
    |   s475 = 8.36698858967
    |   s476 = 8.18159105523
    |   s477 = 8.66074261221
    |   s478 = 6.16145546645
    |   s479 = 7.57743692763
    |   s480 = 6.8554747153
    |   s481 = 0.0
    |   s482 = 4.51928690564
    |   s483 = 1.99369332144
    |   s484 = 8.90655411653
    |   s485 = 2.47606428499
    |   s486 = 7.337626669
    |   s487 = 2.76111792663
    |   s488 = 0.639672214375
    |   s489 = 2.57103906738
    |   s490 = 5.56188676747
    |   s491 = 1.42368042591
    |   s492 = 10.1428718249
    |   s493 = 2.47488123485
    |   s494 = 2.24848231888
    |   s495 = 7.71895122681
    |   s496 = 0.0
    |   s497 = 5.17277928674
    |   s498 = 3.79931084558
    |   s499 = 6.15334059175
    |   s500 = 6.3978726733
*************************************************************************
    |   Objective Value ------------------  7.06662419245
    |   Aij Sum --------------------------  6755703
    |   Cj Sum ---------------------------  7296
    |   Bi Sum ---------------------------  7333
    |   Matrix Dimensions ----------------  (500, 500)
    |   Date/Time ------------------------  2015-08-20 16:18:25.752603
*************************************************************************
-- Gurobi Standard Primal Linear Programming Problem --

James Gaboardi, 2015

2. Dual


In [6]:
# Instantiate Model
mDual_Standard_GUROBI = gbp.Model(' -- Standard Dual Linear Programming Problem -- ')

# Set Focus to Optimality
gbp.setParam('MIPFocus', 2)

# Decision Variables
desc_var = []
for orig in rows:
    desc_var.append([])
    desc_var[orig].append(mDual_Standard_GUROBI.addVar(vtype=gbp.GRB.CONTINUOUS, 
                                    name='u'+str(orig+1)))
# Slack Variables
slack_var = []
for dest in cols:
    slack_var.append([])
    slack_var[dest].append(mDual_Standard_GUROBI.addVar(vtype=gbp.GRB.CONTINUOUS, 
                                   name='t'+str(dest+1)))
# Update Model
mDual_Standard_GUROBI.update()

#Objective Function
mDual_Standard_GUROBI.setObjective(gbp.quicksum(Bi[orig]*desc_var[orig][0] 
                        for orig in rows), 
                        gbp.GRB.MAXIMIZE)
# Constraints
for dest in cols:
    mDual_Standard_GUROBI.addConstr(gbp.quicksum(Aij[orig][dest]*desc_var[orig][0] 
                        for orig in rows) + 
                        slack_var[dest][0] -
                        Cj[dest] == 0)

# Optimize
mDual_Standard_GUROBI.optimize()
# Write LP file
mDual_Standard_GUROBI.write('LP.lp')
print '\n*************************************************************************'
print '    |   Decision Variables'
for v in mDual_Standard_GUROBI.getVars():
    print '    |  ', v.VarName, '=', v.x
print '*************************************************************************'
val = mDual_Standard_GUROBI.objVal
print '    |   Objective Value ------------------ ', val
print '    |   Aij Sum -------------------------- ', AijSum
print '    |   Cj Sum --------------------------- ', CjSum
print '    |   Bi Sum --------------------------- ', BiSum
print '    |   Matrix Dimensions ---------------- ', Aij.shape
print '    |   Date/Time ------------------------ ', dt.datetime.now()
print '*************************************************************************'
print '-- Gurobi Standard Dual Linear Programming Problem --'
print '\nJames Gaboardi, 2015'


Parameter MIPFocus unchanged
   Value: 2   Min: 0   Max: 3   Default: 0
Optimize a model with 500 rows, 1000 columns and 250500 nonzeros
Coefficient statistics:
  Matrix range    [1e+00, 5e+01]
  Objective range [1e+01, 2e+01]
  Bounds range    [0e+00, 0e+00]
  RHS range       [1e+01, 2e+01]

Concurrent LP optimizer: dual simplex and barrier
Showing barrier log only...

Presolve removed 0 rows and 500 columns
Presolve time: 0.06s
Presolved: 500 rows, 500 columns, 250000 nonzeros

Ordering time: 0.00s

Barrier statistics:
 AA' NZ     : 1.248e+05
 Factor NZ  : 1.252e+05 (roughly 1 MByte of memory)
 Factor Ops : 4.179e+07 (less than 1 second per iteration)
 Threads    : 1

Barrier performed 0 iterations in 0.14 seconds
Barrier solve interrupted - model solved by another algorithm


Solved with dual simplex
Solved in 210 iterations and 0.16 seconds
Optimal objective  7.066624192e+00

*************************************************************************
    |   Decision Variables
    |   u1 = 0.0
    |   u2 = 0.0
    |   u3 = 0.0
    |   u4 = 0.0
    |   u5 = 0.0
    |   u6 = 0.0
    |   u7 = 0.0
    |   u8 = 0.0
    |   u9 = 0.0
    |   u10 = 0.0
    |   u11 = 0.0
    |   u12 = 0.0
    |   u13 = 0.0
    |   u14 = 0.0
    |   u15 = 0.0
    |   u16 = 0.0
    |   u17 = 0.0
    |   u18 = 0.0
    |   u19 = 0.0
    |   u20 = 0.0
    |   u21 = 0.0
    |   u22 = 0.0
    |   u23 = 0.0
    |   u24 = 0.0
    |   u25 = 0.0
    |   u26 = 0.0
    |   u27 = 0.0
    |   u28 = 0.0229185718377
    |   u29 = 0.0
    |   u30 = 0.0
    |   u31 = 0.0
    |   u32 = 0.0
    |   u33 = 0.0
    |   u34 = 0.0
    |   u35 = 0.0
    |   u36 = 0.0
    |   u37 = 0.0
    |   u38 = 0.0
    |   u39 = 0.0
    |   u40 = 0.0
    |   u41 = 0.0
    |   u42 = 0.0
    |   u43 = 0.0
    |   u44 = 0.0
    |   u45 = 0.0
    |   u46 = 0.0
    |   u47 = 0.0
    |   u48 = 0.0
    |   u49 = 0.0
    |   u50 = 0.0
    |   u51 = 0.0
    |   u52 = 0.0
    |   u53 = 0.0
    |   u54 = 0.0
    |   u55 = 0.0
    |   u56 = 0.0
    |   u57 = 0.0
    |   u58 = 0.0
    |   u59 = 0.0
    |   u60 = 0.0
    |   u61 = 0.00850197714598
    |   u62 = 0.00357984332056
    |   u63 = 0.0
    |   u64 = 0.0074246880496
    |   u65 = 0.0
    |   u66 = 0.0
    |   u67 = 0.0
    |   u68 = 0.0
    |   u69 = 0.0
    |   u70 = 0.0
    |   u71 = 0.0
    |   u72 = 0.0
    |   u73 = 0.0
    |   u74 = 0.02746652325
    |   u75 = 0.0
    |   u76 = 0.00607416092011
    |   u77 = 0.0
    |   u78 = 0.0
    |   u79 = 0.0089680459336
    |   u80 = 0.0
    |   u81 = 0.0
    |   u82 = 0.0
    |   u83 = 0.00997333973717
    |   u84 = 0.0
    |   u85 = 0.0
    |   u86 = 0.0
    |   u87 = 0.0
    |   u88 = 0.0
    |   u89 = 0.00844266364563
    |   u90 = 0.0
    |   u91 = 0.00245013257581
    |   u92 = 0.0
    |   u93 = 0.0
    |   u94 = 0.0
    |   u95 = 0.0
    |   u96 = 0.0
    |   u97 = 0.0
    |   u98 = 0.0
    |   u99 = 0.0
    |   u100 = 0.0
    |   u101 = 0.0
    |   u102 = 0.00418455035148
    |   u103 = 0.0
    |   u104 = 0.0
    |   u105 = 0.0
    |   u106 = 0.0
    |   u107 = 0.0
    |   u108 = 0.0
    |   u109 = 0.0
    |   u110 = 0.0
    |   u111 = 0.0
    |   u112 = 0.0
    |   u113 = 0.0
    |   u114 = 0.0
    |   u115 = 0.0
    |   u116 = 0.0
    |   u117 = 0.0
    |   u118 = 0.0
    |   u119 = 0.0
    |   u120 = 0.0
    |   u121 = 0.0
    |   u122 = 0.0
    |   u123 = 0.0
    |   u124 = 0.0
    |   u125 = 0.0
    |   u126 = 0.00663518852399
    |   u127 = 0.0
    |   u128 = 0.0
    |   u129 = 0.0
    |   u130 = 0.0
    |   u131 = 0.0
    |   u132 = 0.0
    |   u133 = 0.0
    |   u134 = 0.0
    |   u135 = 0.0
    |   u136 = 0.0147103837236
    |   u137 = 0.0
    |   u138 = 0.0
    |   u139 = 0.0
    |   u140 = 0.0
    |   u141 = 0.0
    |   u142 = 0.0
    |   u143 = 0.0
    |   u144 = 0.0
    |   u145 = 0.0
    |   u146 = 0.0
    |   u147 = 0.0
    |   u148 = 0.0
    |   u149 = 0.00646124859479
    |   u150 = 0.0
    |   u151 = 0.0
    |   u152 = 0.0
    |   u153 = 0.0
    |   u154 = 0.0
    |   u155 = 0.0
    |   u156 = 0.0
    |   u157 = 0.0
    |   u158 = 0.0
    |   u159 = 0.0
    |   u160 = 0.0
    |   u161 = 0.0
    |   u162 = 0.0
    |   u163 = 0.0
    |   u164 = 0.0
    |   u165 = 0.0
    |   u166 = 0.0
    |   u167 = 0.0
    |   u168 = 0.0
    |   u169 = 0.0
    |   u170 = 0.0
    |   u171 = 0.0
    |   u172 = 0.0132235128846
    |   u173 = 0.0
    |   u174 = 0.0
    |   u175 = 0.0
    |   u176 = 0.0
    |   u177 = 0.0
    |   u178 = 0.0
    |   u179 = 0.0
    |   u180 = 0.0
    |   u181 = 0.0
    |   u182 = 0.0
    |   u183 = 0.0
    |   u184 = 0.0
    |   u185 = 0.0
    |   u186 = 0.0
    |   u187 = 0.0
    |   u188 = 0.0
    |   u189 = 0.0146118803445
    |   u190 = 0.0
    |   u191 = 0.0
    |   u192 = 0.00959469214851
    |   u193 = 0.0
    |   u194 = 0.0
    |   u195 = 0.0
    |   u196 = 0.0
    |   u197 = 0.0
    |   u198 = 0.0
    |   u199 = 0.0
    |   u200 = 0.0
    |   u201 = 0.0
    |   u202 = 0.0
    |   u203 = 0.010935757271
    |   u204 = 0.0
    |   u205 = 0.0
    |   u206 = 0.0
    |   u207 = 0.0
    |   u208 = 0.0
    |   u209 = 0.0
    |   u210 = 0.0
    |   u211 = 0.0
    |   u212 = 0.0
    |   u213 = 0.0
    |   u214 = 0.0
    |   u215 = 0.0
    |   u216 = 0.0
    |   u217 = 0.0
    |   u218 = 0.0
    |   u219 = 0.0
    |   u220 = 0.0219061722475
    |   u221 = 0.0
    |   u222 = 0.0
    |   u223 = 0.0
    |   u224 = 0.0
    |   u225 = 0.0
    |   u226 = 0.0
    |   u227 = 0.0
    |   u228 = 0.00559355817929
    |   u229 = 0.0
    |   u230 = 0.0
    |   u231 = 0.0
    |   u232 = 0.0
    |   u233 = 0.0
    |   u234 = 0.0
    |   u235 = 0.0
    |   u236 = 0.0
    |   u237 = 0.0
    |   u238 = 0.0
    |   u239 = 0.0
    |   u240 = 0.0
    |   u241 = 0.0
    |   u242 = 0.0
    |   u243 = 0.0
    |   u244 = 0.0
    |   u245 = 0.0
    |   u246 = 0.0
    |   u247 = 0.0
    |   u248 = 0.0
    |   u249 = 0.0
    |   u250 = 0.0
    |   u251 = 0.0
    |   u252 = 0.0
    |   u253 = 0.0
    |   u254 = 0.0
    |   u255 = 0.0
    |   u256 = 0.0
    |   u257 = 0.0
    |   u258 = 0.0
    |   u259 = 0.0
    |   u260 = 0.0
    |   u261 = 0.0
    |   u262 = 0.0
    |   u263 = 0.0
    |   u264 = 0.0
    |   u265 = 0.0
    |   u266 = 0.0
    |   u267 = 0.00537641181055
    |   u268 = 0.0
    |   u269 = 0.0
    |   u270 = 0.0
    |   u271 = 0.0
    |   u272 = 0.0
    |   u273 = 0.0
    |   u274 = 0.0
    |   u275 = 0.0
    |   u276 = 0.0
    |   u277 = 0.0
    |   u278 = 0.0
    |   u279 = 0.0
    |   u280 = 0.0
    |   u281 = 0.0
    |   u282 = 0.00751886733222
    |   u283 = 0.0
    |   u284 = 0.0
    |   u285 = 0.0
    |   u286 = 0.0
    |   u287 = 0.0
    |   u288 = 0.0
    |   u289 = 0.0
    |   u290 = 0.0
    |   u291 = 0.0
    |   u292 = 0.0
    |   u293 = 0.0
    |   u294 = 0.0
    |   u295 = 0.0
    |   u296 = 0.0
    |   u297 = 0.0
    |   u298 = 0.0
    |   u299 = 0.0
    |   u300 = 0.0
    |   u301 = 0.0
    |   u302 = 0.0
    |   u303 = 0.0
    |   u304 = 0.00153773047514
    |   u305 = 0.0
    |   u306 = 0.0
    |   u307 = 0.0
    |   u308 = 0.0
    |   u309 = 0.0
    |   u310 = 0.0
    |   u311 = 0.0
    |   u312 = 0.0
    |   u313 = 0.0
    |   u314 = 0.0
    |   u315 = 0.0
    |   u316 = 0.0
    |   u317 = 0.0
    |   u318 = 0.0
    |   u319 = 0.0
    |   u320 = 0.0
    |   u321 = 0.0
    |   u322 = 0.0
    |   u323 = 0.0
    |   u324 = 0.0
    |   u325 = 0.0
    |   u326 = 0.0
    |   u327 = 0.0
    |   u328 = 0.0
    |   u329 = 0.0
    |   u330 = 0.00246837747021
    |   u331 = 0.0
    |   u332 = 0.0
    |   u333 = 0.0
    |   u334 = 0.0
    |   u335 = 0.0
    |   u336 = 0.00901675099015
    |   u337 = 0.0
    |   u338 = 0.0
    |   u339 = 0.0
    |   u340 = 0.0
    |   u341 = 0.0
    |   u342 = 0.00189088513833
    |   u343 = 0.0
    |   u344 = 0.0
    |   u345 = 0.0
    |   u346 = 0.0205920711009
    |   u347 = 0.0
    |   u348 = 0.0
    |   u349 = 0.0
    |   u350 = 0.0
    |   u351 = 0.0
    |   u352 = 0.0
    |   u353 = 0.0
    |   u354 = 0.0
    |   u355 = 0.0
    |   u356 = 0.0
    |   u357 = 0.0
    |   u358 = 0.0
    |   u359 = 0.0
    |   u360 = 0.0
    |   u361 = 0.0162605433437
    |   u362 = 0.0
    |   u363 = 0.0
    |   u364 = 0.0
    |   u365 = 0.0
    |   u366 = 0.0
    |   u367 = 0.0
    |   u368 = 0.0
    |   u369 = 0.0
    |   u370 = 0.0
    |   u371 = 0.00842909011315
    |   u372 = 0.0
    |   u373 = 0.0
    |   u374 = 0.0
    |   u375 = 0.0
    |   u376 = 0.0
    |   u377 = 0.0
    |   u378 = 0.0
    |   u379 = 0.0
    |   u380 = 0.0
    |   u381 = 0.0
    |   u382 = 0.0
    |   u383 = 0.0
    |   u384 = 0.0
    |   u385 = 0.0
    |   u386 = 0.0
    |   u387 = 0.0
    |   u388 = 0.0
    |   u389 = 0.0
    |   u390 = 0.0
    |   u391 = 0.0
    |   u392 = 0.0
    |   u393 = 0.0
    |   u394 = 0.0
    |   u395 = 0.00561491245148
    |   u396 = 0.0
    |   u397 = 0.0258384924498
    |   u398 = 0.0
    |   u399 = 0.0
    |   u400 = 0.0
    |   u401 = 0.0
    |   u402 = 0.0
    |   u403 = 0.0
    |   u404 = 0.0
    |   u405 = 0.0
    |   u406 = 0.0
    |   u407 = 0.0
    |   u408 = 0.0
    |   u409 = 0.0
    |   u410 = 0.0
    |   u411 = 0.0
    |   u412 = 0.0
    |   u413 = 0.0
    |   u414 = 0.0
    |   u415 = 0.0
    |   u416 = 0.0
    |   u417 = 0.0
    |   u418 = 0.0
    |   u419 = 0.0
    |   u420 = 0.0
    |   u421 = 0.0
    |   u422 = 0.0
    |   u423 = 0.0
    |   u424 = 0.0
    |   u425 = 0.0
    |   u426 = 0.0
    |   u427 = 0.0
    |   u428 = 0.0
    |   u429 = 0.0
    |   u430 = 0.0
    |   u431 = 0.00725135193757
    |   u432 = 0.0
    |   u433 = 0.016058155025
    |   u434 = 0.0
    |   u435 = 0.0
    |   u436 = 0.0
    |   u437 = 0.0114122480056
    |   u438 = 0.0
    |   u439 = 0.0
    |   u440 = 0.0
    |   u441 = 0.0
    |   u442 = 0.0
    |   u443 = 0.0
    |   u444 = 0.0
    |   u445 = 0.0
    |   u446 = 0.0
    |   u447 = 0.00257741818014
    |   u448 = 0.0
    |   u449 = 0.0
    |   u450 = 0.0
    |   u451 = 0.0
    |   u452 = 0.011682242706
    |   u453 = 0.0
    |   u454 = 0.0
    |   u455 = 0.0
    |   u456 = 0.0
    |   u457 = 0.0
    |   u458 = 0.0
    |   u459 = 0.0
    |   u460 = 0.0
    |   u461 = 0.0
    |   u462 = 0.00791411183726
    |   u463 = 0.0
    |   u464 = 0.0
    |   u465 = 0.0
    |   u466 = 0.0
    |   u467 = 0.0
    |   u468 = 0.0
    |   u469 = 0.0
    |   u470 = 0.0
    |   u471 = 0.0
    |   u472 = 0.0
    |   u473 = 0.0
    |   u474 = 0.0
    |   u475 = 0.0
    |   u476 = 0.0
    |   u477 = 0.0
    |   u478 = 0.0
    |   u479 = 0.0
    |   u480 = 0.0
    |   u481 = 0.00837537129609
    |   u482 = 0.0
    |   u483 = 0.0
    |   u484 = 0.0
    |   u485 = 0.0
    |   u486 = 0.0
    |   u487 = 0.0
    |   u488 = 0.0
    |   u489 = 0.0
    |   u490 = 0.0
    |   u491 = 0.0
    |   u492 = 0.0
    |   u493 = 0.0
    |   u494 = 0.0
    |   u495 = 0.0
    |   u496 = 0.00113596480809
    |   u497 = 0.0
    |   u498 = 0.0
    |   u499 = 0.0
    |   u500 = 0.0
    |   t1 = 8.80556747804
    |   t2 = 0.949213204007
    |   t3 = 4.65108411999
    |   t4 = 9.4194672071
    |   t5 = 2.41075983806
    |   t6 = 7.82146469361
    |   t7 = 5.35652763048
    |   t8 = 0.0
    |   t9 = 1.84491790395
    |   t10 = 9.10270634483
    |   t11 = 9.02714358057
    |   t12 = 3.05317896081
    |   t13 = 6.93297559643
    |   t14 = 7.54023837311
    |   t15 = 3.94258106148
    |   t16 = 1.37932975789
    |   t17 = 1.92249650307
    |   t18 = 5.02775896155
    |   t19 = 7.98759514075
    |   t20 = 7.1303037823
    |   t21 = 3.04132244912
    |   t22 = 0.712844298318
    |   t23 = 9.299595461
    |   t24 = 2.82580625885
    |   t25 = 6.78122622968
    |   t26 = 4.72679199041
    |   t27 = 4.6973706033
    |   t28 = 0.308572029814
    |   t29 = 2.42428743204
    |   t30 = 6.70421246508
    |   t31 = 7.06630005666
    |   t32 = 3.77126477792
    |   t33 = 1.53283365011
    |   t34 = 2.67282659414
    |   t35 = 0.30205578706
    |   t36 = 0.0
    |   t37 = 8.66530861185
    |   t38 = 5.02003758346
    |   t39 = 2.01313716216
    |   t40 = 7.99155962099
    |   t41 = 6.08750582826
    |   t42 = 0.0
    |   t43 = 6.51453198754
    |   t44 = 7.9527609905
    |   t45 = 5.65803360968
    |   t46 = 4.40250742124
    |   t47 = 0.0
    |   t48 = 8.41129911878
    |   t49 = 0.564728297946
    |   t50 = 0.642209082925
    |   t51 = 0.0
    |   t52 = 5.98152100826
    |   t53 = 10.4091672861
    |   t54 = 1.42999137865
    |   t55 = 8.92810096082
    |   t56 = 8.96132282902
    |   t57 = 3.57440272871
    |   t58 = 0.0
    |   t59 = 1.47362484825
    |   t60 = 0.702787979333
    |   t61 = 4.79643500859
    |   t62 = 3.02007823411
    |   t63 = 9.98125902485
    |   t64 = 5.7967233555
    |   t65 = 4.94823190766
    |   t66 = 3.2719806482
    |   t67 = 6.92912523772
    |   t68 = 7.64971649282
    |   t69 = 0.917994332512
    |   t70 = 6.37089409005
    |   t71 = 7.61757923711
    |   t72 = 4.22224775222
    |   t73 = 5.061949279
    |   t74 = 6.75230811103
    |   t75 = 2.45540094279
    |   t76 = 0.0
    |   t77 = 7.3083746122
    |   t78 = 0.0
    |   t79 = 3.23832320988
    |   t80 = 6.1830623293
    |   t81 = 6.41398462131
    |   t82 = 7.42247228142
    |   t83 = 0.0
    |   t84 = 1.21344352406
    |   t85 = 4.16009929715
    |   t86 = 9.98555488355
    |   t87 = 6.80008963832
    |   t88 = 4.33445588333
    |   t89 = 5.42930721137
    |   t90 = 3.94038356676
    |   t91 = 4.76554223039
    |   t92 = 4.20768913756
    |   t93 = 1.56564947113
    |   t94 = 2.31394786653
    |   t95 = 1.19509346073
    |   t96 = 6.14041746903
    |   t97 = 7.40509029723
    |   t98 = 1.05240520907
    |   t99 = 1.36055401624
    |   t100 = 4.35409853909
    |   t101 = 4.21900644282
    |   t102 = 6.08538654576
    |   t103 = 8.45806101578
    |   t104 = 5.99528785681
    |   t105 = 9.43339253388
    |   t106 = 0.578263687519
    |   t107 = 8.28894111732
    |   t108 = 0.562264852564
    |   t109 = 6.7196450233
    |   t110 = 6.89319783704
    |   t111 = 1.03834804005
    |   t112 = 4.73634456329
    |   t113 = 8.03455762058
    |   t114 = 3.02224725328
    |   t115 = 1.97398202048
    |   t116 = 0.0
    |   t117 = 3.57768274779
    |   t118 = 2.08171020817
    |   t119 = 8.67667013339
    |   t120 = 4.43058673531
    |   t121 = 6.75150979558
    |   t122 = 7.50071021167
    |   t123 = 2.22651393678
    |   t124 = 0.471070458971
    |   t125 = 2.74805773078
    |   t126 = 1.80416017705
    |   t127 = 3.65458364439
    |   t128 = 1.39190317827
    |   t129 = 0.270150889807
    |   t130 = 0.864298572791
    |   t131 = 1.26241193081
    |   t132 = 4.60243804128
    |   t133 = 4.11567696444
    |   t134 = 8.82528387595
    |   t135 = 1.70436480811
    |   t136 = 3.67836870413
    |   t137 = 8.60147349544
    |   t138 = 1.45729868674
    |   t139 = 6.41361569882
    |   t140 = 3.91810140097
    |   t141 = 5.35090869941
    |   t142 = 0.126059138418
    |   t143 = 2.31000077542
    |   t144 = 3.85752038332
    |   t145 = 3.51486025795
    |   t146 = 5.5177750081
    |   t147 = 0.0
    |   t148 = 0.943921537861
    |   t149 = 6.84001960239
    |   t150 = 8.28830373267
    |   t151 = 4.97466333199
    |   t152 = 0.29142043499
    |   t153 = 2.92987873956
    |   t154 = 5.80535807114
    |   t155 = 6.45131541862
    |   t156 = 4.87069155504
    |   t157 = 4.24050850573
    |   t158 = 4.28015731503
    |   t159 = 2.65618512168
    |   t160 = 7.33817335829
    |   t161 = 3.17457472268
    |   t162 = 1.17219564781
    |   t163 = 7.5167471222
    |   t164 = 5.21327821765
    |   t165 = 4.82151100244
    |   t166 = 2.47973390127
    |   t167 = 0.0
    |   t168 = 4.94280810999
    |   t169 = 6.2664179351
    |   t170 = 8.59605081102
    |   t171 = 4.83895512267
    |   t172 = 3.48004293086
    |   t173 = 4.45587761343
    |   t174 = 6.56963994207
    |   t175 = 2.10441975695
    |   t176 = 3.58620265722
    |   t177 = 9.95014539961
    |   t178 = 0.0
    |   t179 = 1.60229127027
    |   t180 = 3.06282725445
    |   t181 = 2.64972971246
    |   t182 = 8.90766511272
    |   t183 = 2.81738838353
    |   t184 = 1.47823339821
    |   t185 = 1.62230749649
    |   t186 = 0.0
    |   t187 = 8.27204883277
    |   t188 = 3.34438315067
    |   t189 = 5.47813591045
    |   t190 = 3.73227119884
    |   t191 = 2.04667718591
    |   t192 = 8.10330742373
    |   t193 = 7.84895654159
    |   t194 = 8.68886209099
    |   t195 = 0.594980682899
    |   t196 = 1.09338218182
    |   t197 = 0.0
    |   t198 = 0.0
    |   t199 = 2.07516544927
    |   t200 = 5.36325772249
    |   t201 = 10.3801320693
    |   t202 = 7.19706356053
    |   t203 = 7.38673676707
    |   t204 = 2.0888528871
    |   t205 = 4.56097940884
    |   t206 = 11.2397720483
    |   t207 = 8.7070923732
    |   t208 = 1.46418114587
    |   t209 = 8.1819213208
    |   t210 = 8.37421731066
    |   t211 = 8.20443110634
    |   t212 = 6.25928272579
    |   t213 = 5.56501289948
    |   t214 = 3.44261584996
    |   t215 = 3.03015175046
    |   t216 = 3.36989515556
    |   t217 = 1.32230452741
    |   t218 = 5.99253765351
    |   t219 = 1.20730895029
    |   t220 = 2.62499753367
    |   t221 = 2.78663795286
    |   t222 = 3.88578158879
    |   t223 = 1.82502659548
    |   t224 = 1.76659931366
    |   t225 = 0.174105005475
    |   t226 = 4.54296470934
    |   t227 = 4.29808150495
    |   t228 = 3.68404184865
    |   t229 = 1.65082094347
    |   t230 = 6.44501181769
    |   t231 = 0.0
    |   t232 = 3.26177634889
    |   t233 = 6.81476476556
    |   t234 = 1.20054376518
    |   t235 = 3.05738286302
    |   t236 = 3.38875978873
    |   t237 = 8.59409652503
    |   t238 = 8.03167648714
    |   t239 = 8.38268186139
    |   t240 = 5.04792089363
    |   t241 = 3.61412566079
    |   t242 = 3.18948235385
    |   t243 = 2.94563089667
    |   t244 = 6.42201927392
    |   t245 = 0.67029981411
    |   t246 = 3.76181232671
    |   t247 = 4.75777786184
    |   t248 = 1.40920006722
    |   t249 = 6.88878136868
    |   t250 = 0.261784886759
    |   t251 = 4.8105298737
    |   t252 = 4.59760038148
    |   t253 = 0.620390547481
    |   t254 = 1.20006367773
    |   t255 = 0.918553144789
    |   t256 = 5.35489215662
    |   t257 = 2.38027987589
    |   t258 = 4.841989242
    |   t259 = 3.13998346059
    |   t260 = 6.91552278678
    |   t261 = 6.74049941659
    |   t262 = 8.92426539281
    |   t263 = 8.34509433125
    |   t264 = 5.92186138715
    |   t265 = 0.929079736215
    |   t266 = 1.27000252435
    |   t267 = 0.542438034903
    |   t268 = 8.12343730529
    |   t269 = 7.86967196731
    |   t270 = 8.78424296565
    |   t271 = 3.4601687119
    |   t272 = 2.07153058451
    |   t273 = 2.78515745663
    |   t274 = 4.38999403629
    |   t275 = 1.14549831462
    |   t276 = 0.0
    |   t277 = 2.37828870687
    |   t278 = 7.38210546112
    |   t279 = 6.69059903673
    |   t280 = 8.83459265736
    |   t281 = 1.38298352289
    |   t282 = 0.0
    |   t283 = 7.78739898008
    |   t284 = 7.96530840055
    |   t285 = 2.32530897422
    |   t286 = 7.5127999122
    |   t287 = 8.23205016039
    |   t288 = 3.0899389631
    |   t289 = 6.72444604677
    |   t290 = 3.3095529593
    |   t291 = 5.36363657797
    |   t292 = 4.02123934799
    |   t293 = 3.4319397897
    |   t294 = 6.06680067517
    |   t295 = 5.85793251616
    |   t296 = 8.44662331134
    |   t297 = 10.0848105427
    |   t298 = 0.324375905068
    |   t299 = 3.04210896804
    |   t300 = 3.93411126658
    |   t301 = 3.59479233327
    |   t302 = 0.0
    |   t303 = 0.21598547498
    |   t304 = 6.68428704244
    |   t305 = 1.83359650234
    |   t306 = 0.0
    |   t307 = 4.86690649253
    |   t308 = 2.1141196399
    |   t309 = 0.0857125384894
    |   t310 = 8.57332225865
    |   t311 = 7.94790745239
    |   t312 = 3.25596340978
    |   t313 = 6.59736237603
    |   t314 = 9.80154869706
    |   t315 = 4.22555253334
    |   t316 = 9.28090546987
    |   t317 = 7.26474535027
    |   t318 = 4.16006293428
    |   t319 = 0.0
    |   t320 = 1.5416757695
    |   t321 = 2.02817113857
    |   t322 = 3.31942729985
    |   t323 = 4.1275860303
    |   t324 = 3.3904085253
    |   t325 = 7.83874563833
    |   t326 = 4.06724764902
    |   t327 = 7.07416602773
    |   t328 = 1.05886269196
    |   t329 = 0.0
    |   t330 = 7.87203731499
    |   t331 = 0.0949950504521
    |   t332 = 1.76558687885
    |   t333 = 0.705182889719
    |   t334 = 7.46933162584
    |   t335 = 0.0
    |   t336 = 6.83697987825
    |   t337 = 4.47731013186
    |   t338 = 1.50151935762
    |   t339 = 6.89825235588
    |   t340 = 7.92797054192
    |   t341 = 7.9949548889
    |   t342 = 1.19162626253
    |   t343 = 10.5830879781
    |   t344 = 8.60585337396
    |   t345 = 6.81418033705
    |   t346 = 6.67283045844
    |   t347 = 1.50924332032
    |   t348 = 5.28999608976
    |   t349 = 0.170000961765
    |   t350 = 6.48003170544
    |   t351 = 0.0
    |   t352 = 5.69481866765
    |   t353 = 3.53797486695
    |   t354 = 0.0456336083363
    |   t355 = 0.0
    |   t356 = 5.55837003771
    |   t357 = 7.60829796131
    |   t358 = 0.0
    |   t359 = 4.86712712151
    |   t360 = 8.32684692791
    |   t361 = 1.69911455046
    |   t362 = 0.0
    |   t363 = 5.54197913387
    |   t364 = 2.10361984224
    |   t365 = 8.95667930323
    |   t366 = 0.708444668239
    |   t367 = 5.9822253288
    |   t368 = 7.24240162465
    |   t369 = 6.362214142
    |   t370 = 4.72333007771
    |   t371 = 7.99486704944
    |   t372 = 8.21879074241
    |   t373 = 5.34806724153
    |   t374 = 4.45246624663
    |   t375 = 10.4108990776
    |   t376 = 2.93495421963
    |   t377 = 2.48601553293
    |   t378 = 1.52394696843
    |   t379 = 4.24028980766
    |   t380 = 0.649395046455
    |   t381 = 5.06431093936
    |   t382 = 1.16611147095
    |   t383 = 4.46880584182
    |   t384 = 2.80341497242
    |   t385 = 8.80775932129
    |   t386 = 6.29571119056
    |   t387 = 0.987920106695
    |   t388 = 9.09500062785
    |   t389 = 1.69426489712
    |   t390 = 3.29346040417
    |   t391 = 8.8957143315
    |   t392 = 0.854844940766
    |   t393 = 6.69994821388
    |   t394 = 10.7049204318
    |   t395 = 3.39291875092
    |   t396 = 0.0
    |   t397 = 2.57513079693
    |   t398 = 0.57973356989
    |   t399 = 4.98102948385
    |   t400 = 1.44959829311
    |   t401 = 6.28033341727
    |   t402 = 1.17920889765
    |   t403 = 0.0
    |   t404 = 7.05568015162
    |   t405 = 0.0
    |   t406 = 0.0
    |   t407 = 6.57637070623
    |   t408 = 5.2937388012
    |   t409 = 5.4728031878
    |   t410 = 2.62730019711
    |   t411 = 8.92854347616
    |   t412 = 4.20714174738
    |   t413 = 4.47186007625
    |   t414 = 2.5430948433
    |   t415 = 5.60054775711
    |   t416 = 0.0
    |   t417 = 4.254375913
    |   t418 = 7.30632938892
    |   t419 = 7.95252692428
    |   t420 = 6.8392497882
    |   t421 = 1.75430649915
    |   t422 = 0.0
    |   t423 = 3.03021899432
    |   t424 = 4.7144441217
    |   t425 = 2.9939189522
    |   t426 = 0.18607136459
    |   t427 = 0.494120932897
    |   t428 = 4.67281047597
    |   t429 = 4.39755734624
    |   t430 = 0.0
    |   t431 = 1.81424222286
    |   t432 = 0.977689768571
    |   t433 = 2.86227294655
    |   t434 = 2.78817920712
    |   t435 = 4.98348927638
    |   t436 = 4.12204655374
    |   t437 = 7.92146011968
    |   t438 = 3.5104112365
    |   t439 = 8.26955973133
    |   t440 = 7.07859147438
    |   t441 = 3.40179306785
    |   t442 = 6.04278157155
    |   t443 = 0.246381260618
    |   t444 = 5.28851265137
    |   t445 = 0.0
    |   t446 = 1.63522792626
    |   t447 = 8.98993383984
    |   t448 = 1.46599387766
    |   t449 = 4.8484521027
    |   t450 = 2.15397680665
    |   t451 = 8.86873496019
    |   t452 = 3.98225654463
    |   t453 = 4.76742260386
    |   t454 = 1.74520969241
    |   t455 = 7.85403839559
    |   t456 = 1.01745597543
    |   t457 = 0.0
    |   t458 = 7.08529026042
    |   t459 = 0.395925458429
    |   t460 = 2.53448672257
    |   t461 = 0.991381485969
    |   t462 = 8.19517817632
    |   t463 = 7.36827015582
    |   t464 = 0.941551949118
    |   t465 = 4.22409316651
    |   t466 = 4.75826544482
    |   t467 = 9.91674418877
    |   t468 = 7.11401448482
    |   t469 = 2.37307858605
    |   t470 = 8.88960868273
    |   t471 = 8.25211713148
    |   t472 = 6.64144991724
    |   t473 = 0.983911806432
    |   t474 = 3.14673639877
    |   t475 = 7.02722343446
    |   t476 = 7.04718138367
    |   t477 = 4.77055967422
    |   t478 = 6.78291850447
    |   t479 = 9.56998983443
    |   t480 = 8.95467626863
    |   t481 = 6.34010923623
    |   t482 = 2.01639597761
    |   t483 = 9.78007213866
    |   t484 = 7.50587760065
    |   t485 = 7.87846165258
    |   t486 = 0.0
    |   t487 = 1.53143410725
    |   t488 = 0.0
    |   t489 = 2.32027356727
    |   t490 = 0.866920826013
    |   t491 = 8.83354097283
    |   t492 = 9.83202861151
    |   t493 = 5.96407103391
    |   t494 = 2.70875474461
    |   t495 = 6.66018766835
    |   t496 = 4.79199591082
    |   t497 = 6.95883752387
    |   t498 = 8.18787314259
    |   t499 = 5.79234093104
    |   t500 = 1.7166375613
*************************************************************************
    |   Objective Value ------------------  7.06662419245
    |   Aij Sum --------------------------  6755703
    |   Cj Sum ---------------------------  7296
    |   Bi Sum ---------------------------  7333
    |   Matrix Dimensions ----------------  (500, 500)
    |   Date/Time ------------------------  2015-08-20 16:18:37.851467
*************************************************************************
-- Gurobi Standard Dual Linear Programming Problem --

James Gaboardi, 2015