Changeset 5111


Ignore:
Timestamp:
10/15/11 11:45:27 (3 years ago)
Author:
jwatson
Message:

Removing last remanants of older extensive form solution loading code in PySP.

Location:
coopr.pysp/trunk/coopr/pysp
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • coopr.pysp/trunk/coopr/pysp/computeconf.py

    r4870 r5111  
    251251            print "Loading extensive form solution." 
    252252            print "Time="+time.asctime() 
    253         load_ef_solution(ef_results, hatex_ef, xhat_ph._instances) 
     253        hatex_ef.load(ef_results) 
    254254        # IMPT: the following method populates the _solution variables on the scenario tree 
    255255        #       nodes by forming an average of the corresponding variable values for all 
     
    312312        print "Solving the xstar extensive form." 
    313313        ef_results = write_and_solve_ef(gk_ef, gk_ph._instances, options) 
    314         load_ef_solution(ef_results, gk_ef, gk_ph._instances) 
     314        gk_ef.load(ef_results) 
    315315 
    316316        # as in the computation of xhat, the following is required to form a 
     
    353353        ef_results = write_and_solve_ef(gk_ef, gk_ph._instances, options) 
    354354 
    355         load_ef_solution(ef_results, gk_ef, gk_ph._instances) 
     355        gk_ef.load(ef_results) 
    356356        # we don't need the solution - just the objective value. 
    357357        objective_name = ef_results.solution(0).objective.keys()[0] # take the first one - we don't know how to deal with multiple objectives. 
  • coopr.pysp/trunk/coopr/pysp/ef.py

    r5071 r5111  
    1919 
    2020from coopr.opt.results.solution import Solution 
    21  
    22 # 
    23 # brain-dead utility for determing if there is a binary to write in the 
    24 # composite model - need to know this, because CPLEX doesn't like empty 
    25 # binary blocks in the LP file. 
    26 # 
    27  
    28 def binaries_present(master_model, scenario_instances): 
    29  
    30     # check the master model first. 
    31     for var in master_model.active_components(Var).values(): 
    32         if isinstance(var.domain, BooleanSet): 
    33             return True 
    34  
    35     # scan the scenario instances next. 
    36     for scenario_name in scenario_instances.keys(): 
    37         scenario_instance = scenario_instances[scenario_name] 
    38         for var in scenario_instance.active_components(Var).values(): 
    39             if isinstance(var.domain, BooleanSet): 
    40                 return True 
    41  
    42     return False 
    43  
    44 # 
    45 # brain-dead utility for determing if there is a binary to write in the 
    46 # composite model - need to know this, because CPLEX doesn't like empty 
    47 # integer blocks in the LP file. 
    48 # 
    49  
    50 def integers_present(master_model, scenario_instances): 
    51  
    52     # check the master model first. 
    53     for var in master_model.active_components(Var).values(): 
    54         if isinstance(var.domain, IntegerSet): 
    55             return True 
    56  
    57     # scan the scenario instances next. 
    58     for scenario_name in scenario_instances.keys(): 
    59         scenario_instance = scenario_instances[scenario_name] 
    60         for var in scenario_instance.active_components(Var).values(): 
    61             if isinstance(var.domain, IntegerSet): 
    62                 return True 
    63  
    64     return False 
    6521 
    6622# 
     
    655611 
    656612    return binding_instance, symbol_map 
    657  
    658 # 
    659 # a utility to load an EF solution into the corresponding instances. 
    660 # 
    661 def load_ef_nl_solution(ef_results, binding_instance, scenario_instances, symbol_map): 
    662  
    663     # type of ef_results is coopr.opt.results.results.SolverResults 
    664     if len(ef_results.solution) == 0: 
    665         raise RuntimeError, "Method load_ef_solution invoked with results object containing no solutions - check solver output!" 
    666     elif len(ef_results.solution) > 1: 
    667         raise RuntimeError, "Method load_ef_solution invoked with results object containing more than one solution - check solver output!" 
    668  
    669     # Since the binding_instance *contains* the scenario solutions, we 
    670     # should only have to do a simple 'load': 
    671     binding_instance.load(ef_results) 
    672  
    673 def load_ef_solution(ef_results, binding_instance, scenario_instances): 
    674  
    675     # type of ef_results is coopr.opt.results.results.SolverResults 
    676     if len(ef_results.solution) == 0: 
    677         raise RuntimeError, "Method load_ef_solution invoked with results object containing no solutions - check solver output!" 
    678     elif len(ef_results.solution) > 1: 
    679         raise RuntimeError, "Method load_ef_solution invoked with results object containing more than one solution - check solver output!" 
    680  
    681     # Since the binding_instance *contains* the scenario solutions, we 
    682     # should only have to do a simple 'load': 
    683     binding_instance.load(ef_results) 
  • coopr.pysp/trunk/coopr/pysp/ef_writer_script.py

    r5077 r5111  
    288288        ef_results = ef_solver_manager.wait_for(ef_action_handle) 
    289289        ef_results._symbol_map = symbol_map 
    290  
    291         # invoke the appropriate solution loader. 
    292         if ef_output_file_suffix == "lp": 
    293             load_ef_solution(ef_results, binding_instance, scenario_instances) 
    294         elif ef_output_file_suffix == "nl": 
    295             load_ef_nl_solution(ef_results, binding_instance, scenario_instances, symbol_map)             
    296         else: 
    297             raise RuntimeError, "Unknown file suffix="+ef_output_file_suffix+" specified when writing extensive form" 
     290        binding_instance.load(ef_results) 
    298291             
    299292        scenario_tree.snapshotSolutionFromInstances(scenario_instances) 
  • coopr.pysp/trunk/coopr/pysp/tests/unit/sizes3_quadratic_gurobi_darwin.baseline

    r5091 r5111  
    1010Convergence metric=      0.2029  First stage cost avg= 163462.7499  Max-Min= 1115.94 
    1111Initiating PH iteration=2 
    12 Convergence metric=      0.1874  First stage cost avg= 163507.2595  Max-Min=  191.64 
     12Convergence metric=      0.1894  First stage cost avg= 163507.3949  Max-Min=  192.88 
    1313Initiating PH iteration=3 
    14 Convergence metric=      0.1653  First stage cost avg= 163264.1512  Max-Min=  224.88 
     14Convergence metric=      0.1642  First stage cost avg= 163264.3520  Max-Min=  227.34 
    1515Initiating PH iteration=4 
    16 Convergence metric=      0.1524  First stage cost avg= 163035.8173  Max-Min=   19.25 
     16Convergence metric=      0.1314  First stage cost avg= 163034.9213  Max-Min=   19.39 
    1717Initiating PH iteration=5 
    18 Convergence metric=      0.1070  First stage cost avg= 162841.0757  Max-Min=  136.76 
     18Convergence metric=      0.1442  First stage cost avg= 162843.8971  Max-Min=  150.13 
    1919Initiating PH iteration=6 
    20 Convergence metric=      0.0899  First stage cost avg= 162714.0808  Max-Min=  299.04 
     20Convergence metric=      0.0721  First stage cost avg= 162717.2069  Max-Min=  287.94 
    2121Initiating PH iteration=7 
    22 Convergence metric=      0.0720  First stage cost avg= 162665.3381  Max-Min=  372.63 
     22Convergence metric=      0.0543  First stage cost avg= 162667.6051  Max-Min=  371.89 
    2323Initiating PH iteration=8 
    24 Convergence metric=      0.0641  First stage cost avg= 162653.0613  Max-Min=  146.41 
     24Convergence metric=      0.0630  First stage cost avg= 162655.5747  Max-Min=  148.76 
    2525Initiating PH iteration=9 
    26 Convergence metric=      0.0912  First stage cost avg= 162638.6024  Max-Min=    8.75 
     26Convergence metric=      0.0912  First stage cost avg= 162640.5083  Max-Min=    8.78 
    2727Initiating PH iteration=10 
    28 Convergence metric=      0.0736  First stage cost avg= 162624.0408  Max-Min=    3.25 
     28Convergence metric=      0.0739  First stage cost avg= 162630.6787  Max-Min=   18.17 
    2929Initiating PH iteration=11 
    30 Convergence metric=      0.0735  First stage cost avg= 162611.2736  Max-Min=    3.63 
     30Convergence metric=      0.0718  First stage cost avg= 162615.8416  Max-Min=   14.83 
    3131Initiating PH iteration=12 
    32 Convergence metric=      0.0447  First stage cost avg= 162598.1744  Max-Min=    0.62 
     32Convergence metric=      0.0485  First stage cost avg= 162604.4472  Max-Min=    4.10 
    3333Initiating PH iteration=13 
    34 Convergence metric=      0.0000  First stage cost avg= 162585.8891  Max-Min=    1.70 
     34Convergence metric=      0.0358  First stage cost avg= 162592.6653  Max-Min=    5.05 
     35Initiating PH iteration=14 
     36Convergence metric=      0.0000  First stage cost avg= 162580.4355  Max-Min=    1.64 
    3537PH converged - convergence metric is below threshold=0.0001 or all discrete variables are fixed 
    3638PH complete 
     
    3941     0             0.1902 
    4042     1             0.2029 
    41      2             0.1874 
    42      3             0.1653 
    43      4             0.1524 
    44      5             0.1070 
    45      6             0.0899 
    46      7             0.0720 
    47      8             0.0641 
     43     2             0.1894 
     44     3             0.1642 
     45     4             0.1314 
     46     5             0.1442 
     47     6             0.0721 
     48     7             0.0543 
     49     8             0.0630 
    4850     9             0.0912 
    49     10             0.0736 
    50     11             0.0735 
    51     12             0.0447 
    52     13             0.0000 
     51    10             0.0739 
     52    11             0.0718 
     53    12             0.0485 
     54    13             0.0358 
     55    14             0.0000 
    5356 
    5457*********************************************************************************************** 
    55 >>>THE EXPECTED SUM OF THE STAGE COST VARIABLES=224817.214864<<< 
     58>>>THE EXPECTED SUM OF THE STAGE COST VARIABLES=224815.248833<<< 
    5659>>>***WARNING***: Assumes full (or nearly so) convergence of scenario solutions at each node in the scenario tree - computed costs are invalid otherwise<<< 
    5760*********************************************************************************************** 
     
    6871                                Values:    12500.0000   12500.0000   12500.0000     Max-Min=      0.0000     Avg=  12500.0000  
    6972                        Index: [5,4]             (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    70                                 Values:     9258.0000    9258.0000    9258.0000     Max-Min=      0.0000     Avg=   9258.0000  
     73                                Values:     9269.0000    9269.0000    9269.0000     Max-Min=      0.0000     Avg=   9269.0000  
    7174                        Index: [5,5]             (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    7275                                Values:    35000.0000   35000.0000   35000.0000     Max-Min=      0.0000     Avg=  35000.0000  
    7376                        Index: [6,4]             (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    74                                 Values:      742.0000     742.0000     742.0000     Max-Min=      0.0000     Avg=    742.0000  
     77                                Values:      731.0000     731.0000     731.0000     Max-Min=      0.0000     Avg=    731.0000  
    7578                        Index: [6,6]             (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    7679                                Values:    25000.0000   25000.0000   25000.0000     Max-Min=      0.0000     Avg=  25000.0000  
     
    8083                                Values:    12500.0000   12500.0000   12500.0000     Max-Min=      0.0000     Avg=  12500.0000  
    8184                        Index: [9,9]             (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    82                                 Values:    10826.0000   10826.0000   10830.0000     Max-Min=      4.0000     Avg=  10827.3333  
     85                                Values:    10959.0000   10959.0000   10959.0000     Max-Min=      0.0000     Avg=  10959.0000  
    8386                        Index: [10,9]            (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    84                                 Values:     1674.0000    1674.0000    1670.0000     Max-Min=      4.0000     Avg=   1672.6667  
     87                                Values:     1541.0000    1541.0000    1541.0000     Max-Min=      0.0000     Avg=   1541.0000  
    8588                        Index: [10,10]           (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    8689                                Values:     5000.0000    5000.0000    5000.0000     Max-Min=      0.0000     Avg=   5000.0000  
    8790                Variable=NumProducedFirstStage 
    8891                        Index: [3]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    89                                 Values:    38171.0000   38171.0000   38172.0000     Max-Min=      1.0000     Avg=  38171.3333  
     92                                Values:    38190.0000   38190.0000   38190.0000     Max-Min=      0.0000     Avg=  38190.0000  
    9093                        Index: [5]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    91                                 Values:    44258.0000   44258.0000   44258.0000     Max-Min=      0.0000     Avg=  44258.0000  
     94                                Values:    44269.0000   44269.0000   44269.0000     Max-Min=      0.0000     Avg=  44269.0000  
    9295                        Index: [6]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    93                                 Values:    38277.0000   38277.0000   38276.0000     Max-Min=      1.0000     Avg=  38276.6667  
     96                                Values:    38280.0000   38280.0000   38280.0000     Max-Min=      0.0000     Avg=  38280.0000  
    9497                        Index: [7]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    95                                 Values:    17557.0000   17557.0000   17556.0000     Max-Min=      1.0000     Avg=  17556.6667  
     98                                Values:    17556.0000   17556.0000   17557.0000     Max-Min=      1.0000     Avg=  17556.3333  
    9699                        Index: [8]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    97                                 Values:    19228.0000   19229.0000   19229.0000     Max-Min=      1.0000     Avg=  19228.6667  
     100                                Values:    19222.0000   19223.0000   19223.0000     Max-Min=      1.0000     Avg=  19222.6667  
    98101                        Index: [9]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    99                                 Values:    22681.0000   22682.0000   22681.0000     Max-Min=      1.0000     Avg=  22681.3333  
     102                                Values:    22676.0000   22675.0000   22676.0000     Max-Min=      1.0000     Avg=  22675.6667  
    100103                        Index: [10]              (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    101                                 Values:    18375.0000   18375.0000   18375.0000     Max-Min=      0.0000     Avg=  18375.0000  
     104                                Values:    18351.0000   18351.0000   18351.0000     Max-Min=      0.0000     Avg=  18351.0000  
    102105                Variable=ProduceSizeFirstStage 
    103106                        Index: [3]               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
     
    117120                Cost Variable=FirstStageCost 
    118121                        Tree Node=RootNode               (Scenarios:  Scenario1   Scenario2   Scenario3   ) 
    119                         Values:   162585.3560  162587.0080  162585.3032     Max-Min=      1.7048     Avg= 162585.8891  
     122                        Values:   162579.8952  162579.8848  162581.5264     Max-Min=      1.6416     Avg= 162580.4355  
    120123Final costs: 
    121124Scenario Tree Costs 
     
    138141                Scenario2 
    139142                Scenario3 
    140         Expected node cost=224817.2149 
     143        Expected node cost=224815.2488 
    141144 
    142145        Name=Scenario1Node 
     
    148151        Scenarios: 
    149152                Scenario1 
    150         Expected node cost=28942.4264 
     153        Expected node cost=28944.7920 
    151154 
    152155        Name=Scenario2Node 
     
    158161        Scenarios: 
    159162                Scenario2 
    160         Expected node cost=62094.8872 
     163        Expected node cost=62100.3904 
    161164 
    162165        Name=Scenario3Node 
     
    168171        Scenarios: 
    169172                Scenario3 
    170         Expected node cost=95658.2629 
     173        Expected node cost=95660.8784 
    171174 
    172175---------------------------------------------------- 
     
    179182                RootNode 
    180183                Scenario1Node 
    181         Stage=          FirstStage     Cost=162585.3560 
    182         Stage=         SecondStage     Cost=28942.4264 
    183         Total scenario cost=191527.7824 
     184        Stage=          FirstStage     Cost=162579.8952 
     185        Stage=         SecondStage     Cost=28944.7920 
     186        Total scenario cost=191524.6872 
    184187 
    185188        Name=Scenario2 
     
    189192                RootNode 
    190193                Scenario2Node 
    191         Stage=          FirstStage     Cost=162587.0080 
    192         Stage=         SecondStage     Cost=62094.8872 
    193         Total scenario cost=224681.8952 
     194        Stage=          FirstStage     Cost=162579.8848 
     195        Stage=         SecondStage     Cost=62100.3904 
     196        Total scenario cost=224680.2752 
    194197 
    195198        Name=Scenario3 
     
    199202                RootNode 
    200203                Scenario3Node 
    201         Stage=          FirstStage     Cost=162585.3032 
    202         Stage=         SecondStage     Cost=95658.2629 
    203         Total scenario cost=258243.5661 
    204  
    205 ---------------------------------------------------- 
    206  
    207 Total PH execution time=16.92 seconds 
    208  
    209 Total execution time=16.92 seconds 
     204        Stage=          FirstStage     Cost=162581.5264 
     205        Stage=         SecondStage     Cost=95660.8784 
     206        Total scenario cost=258242.4048 
     207 
     208---------------------------------------------------- 
     209 
     210Total PH execution time=21.07 seconds 
     211 
     212Total execution time=21.07 seconds 
Note: See TracChangeset for help on using the changeset viewer.