Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  different behaviour using simplex primal or simplex dual

    Posted 10/28/15 11:20 AM

    Originally posted by: dbaena


    hi, i have a problem and i don't know what happens...i explain:

    I have the same problem, I use Cplex C++ Library, cplex 12.1 If I use simplex primal I obtain:

    Using devex.

    Iteration log . . .
    Iteration:     1    Objective     =             0.000000
    Iteration:    21    Objective     =             0.000000
    Iteration:   239    Objective     =             0.000000
    Iteration:   384    Objective     =             0.000000
    Iteration:   521    Objective     =             0.000000
    Perturbation started.
    Iteration:   602    Objective     =             0.000000
    Iteration:   756    Objective     =             0.022364
    Iteration:   897    Objective     =             0.039677
    Iteration:  1035    Objective     =             0.053050
    Iteration:  1176    Objective     =             0.064888
    Iteration:  1319    Objective     =             0.077251
    Iteration:  1452    Objective     =             0.087670
    Iteration:  1589    Objective     =             0.098455
    Iteration:  1723    Objective     =             0.107317
    Iteration:  1856    Objective     =             0.116681
    Iteration:  1990    Objective     =             0.127404
    Iteration:  2141    Objective     =             0.138282
    Iteration:  2294    Objective     =             0.147497
    Iteration:  2436    Objective     =             0.155785
    Iteration:  2583    Objective     =             0.161109
    Iteration:  2735    Objective     =             0.165421
    Iteration:  2888    Objective     =             0.170307
    Iteration:  3050    Objective     =             0.175496
    Iteration:  3209    Objective     =             0.181585
    Iteration:  3360    Objective     =             0.186767
    Iteration:  3523    Objective     =             0.193124
    Iteration:  3693    Objective     =             0.200859
    Iteration:  3852    Objective     =             0.207834
    Iteration:  4028    Objective     =             0.215991
    Iteration:  4207    Objective     =             0.223898
    Iteration:  4393    Objective     =             0.231754
    Iteration:  4596    Objective     =             0.240617
    Removing perturbation.

     

    If after,I do a little change in the objective function and in one constraint and I solve the problem using simplex primal, I obtain:

     

    Using devex.

    Iteration log . . .
    Iteration:     1    Scaled infeas =             0.036395
    Iteration:     8    Objective     =             0.000000
    Iteration:   247    Objective     =             0.000000
    Iteration:   262    Objective     =             0.000000
    Iteration:   481    Objective     =             0.000000
    Perturbation started.
    Iteration:   610    Objective     =             0.000000
    Iteration:   757    Objective     =             0.021236
    Iteration:   909    Objective     =             0.040795
    Iteration:  1065    Objective     =             0.053508
    Iteration:  1217    Objective     =             0.064672
    Iteration:  1375    Objective     =             0.074570
    Iteration:  1523    Objective     =             0.086087
    Iteration:  1675    Objective     =             0.097323
    Iteration:  1832    Objective     =             0.108842
    Iteration:  1989    Objective     =             0.120515
    Iteration:  2173    Objective     =             0.136447
    Iteration:  2355    Objective     =             0.157850
    Iteration:  2509    Objective     =             0.181961
    Removing perturbation.

     

     

    So, it seems OK!!

     

    Moreover, when I do getValues I obtain different values (maybe 0 or maybe not...).

     

    However, if I use dual simplex...

    The first time I solve this problem i obtain:

    Initializing dual steep norms . . .

    Iteration log . . .
    Iteration:     1   Scaled dual infeas =             0.000000
    Iteration:     2   Dual objective     =             1.000000
    Perturbation started.
    Iteration:   103   Dual objective     =             1.000000
    Removing perturbation.
    Iteration:   144   Dual objective     =             1.000000

     

    However, when I do a little change in objective function and constraint (the same as before) I obtain:

     

    Reinitializing dual norms . . .

     

    and the same values that before!!!

     

    So, someone knows what happens! It's very weird...

     

    thanks a lot!!

     

     

     

     


    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: different behaviour using simplex primal or simplex dual

    Posted 10/29/15 04:04 PM

    Originally posted by: BoJensen


    Since one problem is your first model solved has different objectives for primal and dual, then try to write out the problem and load it into the interactive command prompt.  In the interactive command prompt see if you can reproduce the difference by running 'primopt' and 'tranopt'.


    #CPLEXOptimizers
    #DecisionOptimization