Changeset 2388


Ignore:
Timestamp:
Feb 22, 2010 1:54:46 AM (10 years ago)
Author:
wehart
Message:

Merged revisions 2360-2387 via svnmerge from
https://software.sandia.gov/svn/public/coopr/coopr.pyomo/trunk

........

r2369 | wehart | 2010-02-17 18:11:43 -0700 (Wed, 17 Feb 2010) | 2 lines


Adding functionality for ordered sets.

........

r2378 | wehart | 2010-02-19 15:17:49 -0700 (Fri, 19 Feb 2010) | 2 lines


Specifying the symbols that are exported from convert.py

........

r2379 | wehart | 2010-02-19 15:31:35 -0700 (Fri, 19 Feb 2010) | 5 lines


Resolving a weakness in the pmedian.py data declaration. The facility
'd' data was monotonically increasing for every facility, so only one sensor placement
was important. The current model eliminates this, which should make the results portable
to other solvers.

........

r2381 | wehart | 2010-02-19 15:50:11 -0700 (Fri, 19 Feb 2010) | 2 lines


Misc baseline updates.

........

r2385 | wehart | 2010-02-21 23:14:18 -0700 (Sun, 21 Feb 2010) | 3 lines


Adding a work-around when importing 'bidict' fails. This occurs with
Python 2.5 and earlier.

........

r2387 | wehart | 2010-02-21 23:27:44 -0700 (Sun, 21 Feb 2010) | 3 lines


Bug fix: needed to protect the use of ordered_dict_inv with
the using_bidict flag.

........

Location:
coopr.pyomo/stable/2.3
Files:
10 edited

Legend:

Unmodified
Added
Removed
  • coopr.pyomo/stable/2.3

  • coopr.pyomo/stable/2.3/coopr/pyomo/base/sets.py

    r2360 r2388  
    1818import types
    1919import copy
     20try:
     21    import bidict
     22    using_bidict=True
     23except:
     24    using_bidict=False
    2025
    2126log = pyutilib.component.core.PluginGlobals.env().log
     
    7075        self.ordered=False
    7176        self.order=[]
     77        if using_bidict:
     78            self.order_dict = bidict.bidict()
     79        else:
     80            self.order_dict = {}
     81            self.order_dict_inv = {}
    7282        self.domain=None
    7383        self.dimen = None
     
    235245              # Using a rule of the form f(z,model) -> element
    236246              #
    237               ctr=0
     247              ctr=1
    238248              val = self.initialize(ctr,self.model)
    239249              if self.dimen is None:
     
    288298           raise TypeError, "Cannot clear virtual Set object `"+self.name+"'"
    289299        self.value.clear()
    290         self.order=[]
     300        if using_bidict:
     301            self.order_dict = bidict.bidict()
     302        else:
     303            self.order_dict = {}
     304            self.order_dict_inv = {}
    291305
    292306    def check_values(self):
     
    297311        for val in self.value:
    298312          self._verify(val)
    299 
    300     def first(self):
    301         if self.virtual:
    302            raise TypeError, "Cannot access the first element of virtual set `"+self.name+"'"
    303         if len(self.order) > 0:
    304            return self.order[0]
    305         else:
    306            for val in self.value:
    307              return val
    308313
    309314    def add(self, *args):
     
    319324            self.value.add(tmp)
    320325            if self.ordered:
     326               if tmp in self.order_dict:
     327                    raise ValueError, "Element "+str(tmp)+" already exists in ordered set "+self.name
    321328               self.order.append(tmp)
     329               if using_bidict:
     330                    self.order_dict[tmp:] = len(self.order)
     331               else:
     332                    self.order_dict[tmp] = len(self.order)
     333                    self.order_dict_inv[len(self.order)] = tmp
     334               
     335
    322336          except TypeError:
    323337            raise TypeError, "Problem inserting "+str(tmp)+" into set "+self.name
     
    328342        """
    329343        if self.virtual:
    330            raise KeyError, "Cannot remove element `"+str(element)+"' from virtual set "+str(self.name)
     344            raise KeyError, "Cannot remove element `"+str(element)+"' from virtual set "+str(self.name)
    331345        if element not in self.value:
    332            raise KeyError, "Cannot remove element `"+str(element)+"' from set "+str(self.name)
     346            raise KeyError, "Cannot remove element `"+str(element)+"' from set "+str(self.name)
    333347        self.value.remove(element)
    334348        if self.ordered:
    335            self.order.remove(element)
     349            id = self.order_dict[element]-1
     350            for i in xrange(id+1,len(self.order)):
     351                if using_bidict:
     352                    self.order_dict[self.order[i]] = i-1
     353                else:
     354                    self.order_dict[self.order[i]] = i-1
     355                    self.order_dict_inv[i-1] = self.order[i]
     356            del self.order[id]
    336357
    337358    def discard(self, element):
     
    344365           self.order.remove(element)
    345366        self.value.discard(element)
     367
     368    def first(self):
     369        if self.virtual:
     370            raise TypeError, "Cannot access the first element of virtual set `"+self.name+"'"
     371        return self.member(1)
     372
     373    def last(self):
     374        if self.virtual:
     375            raise TypeError, "Cannot access the last element of virtual set `"+self.name+"'"
     376        return self.member(-1)
     377
     378    def __getitem__(self, key):
     379        return self.member(key)
     380
     381    def member(self, key):
     382        if self.ordered:
     383            if using_bidict:
     384                return self.order_dict.inv[key]
     385            else:
     386                return self.order_dict_inv[key]
     387        #
     388        # If the set is not ordered, then we use the intrinsic ordering imposed by the set.
     389        # We convert the set to a list and return the specified value.
     390        #
     391        if key >= 1:
     392            return list(self.value)[key-1]
     393        elif key < 0:
     394            return list(self.value)[key]
     395        else:
     396            raise IndexError, "Valid index values for sets are 1 ... len(set) or -1 ... -len(set)"
    346397
    347398    def ord(self, match_element):
     
    350401        """
    351402        if self.ordered is False:
    352            raise AttributeError, "Cannot invoke ord method for an unordered set!"
    353         # linear, but the only way given the current representation/attributes of a set.
    354         i=1
    355         for element in self.order:
    356            if match_element == element:
    357               return i
    358            i=i+1
    359         raise ValueError, "Unknown input element="+str(match_element)+" provided as input to ord() method for set="+str(self.name)
     403           raise AttributeError, "Cannot invoke ord() method for unordered set="+str(self.name)
     404        try:
     405            return self.order[match_element]
     406        except IndexError:
     407            raise IndexError, "Unknown input element="+str(match_element)+" provided as input to ord() method for set="+str(self.name)
     408
     409    def next(self, match_element, k=1):
     410        return self.order[self.order_dict[element]+k]
     411
     412    def nextw(self, match_element, k=1):
     413        ndx = self.order_dict[match_element]+k
     414        total = len(self.order)
     415        if ndx > total:
     416            ndx -= total
     417        if ndx <= 0:
     418            ndx += total
     419        return self.order.inv[ndx]
     420
     421    def prev(self, match_element, k=1):
     422        return self.next(match_element, k=-k)
     423
     424    def prevw(self, match_element, k=1):
     425        return self.nextw(match_element, k=-k)
    360426
    361427    def pprint(self, ostream=None):
     
    383449           else:
    384450              tmp = copy.copy(list(self.value))
    385            tmp.sort()
     451              tmp.sort()
    386452           print >>ostream, "\t  ",tmp
    387 
    388     def __getitem__(self, key):
    389         if not self.ordered:
    390            raise IndexError, "Cannot get an item in unordered set "+self.name
    391         return self.order[key]
    392453
    393454    def __len__(self):
     
    758819             else:
    759820                rule_list=[]
    760                 ctr=0
     821                ctr=1
    761822                args = tuple(tmp+[ctr,self.model])
    762823                val = self.initialize(*args)
  • coopr.pyomo/stable/2.3/coopr/pyomo/scripting/convert.py

    r2315 r2388  
    88#  For more information, see the Coopr README.txt file.
    99#  _________________________________________________________________________
     10
     11__all__ = ['pyomo2lp', 'pyomo2nl']
    1012
    1113
  • coopr.pyomo/stable/2.3/coopr/pyomo/tests/examples/pmedian.py

    r2005 r2388  
    11
    22from coopr.pyomo import *
     3import math
    34
    45model = Model()
     
    1516
    1617def d_rule(n, m, model):
    17     return n*2.33333+m*7.99999
     18    return math.sin(n*2.33333+m*7.99999)
    1819model.d = Param(model.Locations, model.Customers, rule=d_rule, within=Reals)
    1920
  • coopr.pyomo/stable/2.3/coopr/pyomo/tests/examples/test1.txt

    r2315 r2388  
    88# ----------------------------------------------------------
    99Problem:
    10 - Lower bound: 181.99977
     10- Lower bound: -5.015609
    1111  Upper bound: inf
    1212  Number of objectives: 1
     
    2222- Status: ok
    2323  Termination condition: unknown
     24  Statistics:
     25    Branch and bound:
     26      Number of bounded subproblems: 0
     27      Number of created subproblems: 0
    2428  Error rc: 0
    2529
     
    3539    f:
    3640      Id: 0
    37       Value: 181.99977
     41      Value: -5.015609
    3842  Variable:
    39     x[1,1]:
    40       Id: 0
     43    x[3,2]:
     44      Id: 13
    4145      Value: 1
    42     x[1,2]:
    43       Id: 1
     46    x[3,6]:
     47      Id: 17
    4448      Value: 1
    45     x[1,3]:
    46       Id: 2
     49    x[4,1]:
     50      Id: 18
    4751      Value: 1
    48     x[1,4]:
    49       Id: 3
     52    x[4,4]:
     53      Id: 21
    5054      Value: 1
    51     x[1,5]:
    52       Id: 4
     55    x[4,5]:
     56      Id: 22
    5357      Value: 1
    54     x[1,6]:
    55       Id: 5
     58    x[5,3]:
     59      Id: 26
    5660      Value: 1
    57     y[1]:
    58       Id: 30
     61    y[3]:
     62      Id: 32
    5963      Value: 1
    60     y[2]:
    61       Id: 31
     64    y[4]:
     65      Id: 33
    6266      Value: 1
    6367    y[5]:
  • coopr.pyomo/stable/2.3/coopr/pyomo/tests/examples/test10.txt

    r2315 r2388  
    4646Construcing constraint num_facilities
    4747   Constructing constraint index None
    48 Writing model unknown to file '/tmp/tmpb2g1nA.pyomo.lp'  with format cpxlp
     48Writing model unknown to file '/tmp/tmpFtA6lR.pyomo.lp'  with format cpxlp
    4949
    5050# ==========================================================
     
    5656# ----------------------------------------------------------
    5757Problem:
    58 - Lower bound: 181.99977
     58- Lower bound: -5.015609
    5959  Upper bound: inf
    6060  Number of objectives: 1
     
    7070- Status: ok
    7171  Termination condition: unknown
     72  Statistics:
     73    Branch and bound:
     74      Number of bounded subproblems: 0
     75      Number of created subproblems: 0
    7276  Error rc: 0
    7377
     
    8387    f:
    8488      Id: 0
    85       Value: 181.99977
     89      Value: -5.015609
    8690  Variable:
    87     x[1,1]:
    88       Id: 0
     91    x[3,2]:
     92      Id: 13
    8993      Value: 1
    90     x[1,2]:
    91       Id: 1
     94    x[3,6]:
     95      Id: 17
    9296      Value: 1
    93     x[1,3]:
    94       Id: 2
     97    x[4,1]:
     98      Id: 18
    9599      Value: 1
    96     x[1,4]:
    97       Id: 3
     100    x[4,4]:
     101      Id: 21
    98102      Value: 1
    99     x[1,5]:
    100       Id: 4
     103    x[4,5]:
     104      Id: 22
    101105      Value: 1
    102     x[1,6]:
    103       Id: 5
     106    x[5,3]:
     107      Id: 26
    104108      Value: 1
    105     y[1]:
    106       Id: 30
     109    y[3]:
     110      Id: 32
    107111      Value: 1
    108     y[2]:
    109       Id: 31
     112    y[4]:
     113      Id: 33
    110114      Value: 1
    111115    y[5]:
  • coopr.pyomo/stable/2.3/coopr/pyomo/tests/examples/test11.txt

    r2315 r2388  
    414414        3
    415415   d :  Size=30         Domain=Reals
    416         (1, 1) : 10.33332
    417         (1, 2) : 18.33331
    418         (1, 3) : 26.3333
    419         (1, 4) : 34.33329
    420         (1, 5) : 42.33328
    421         (1, 6) : 50.33327
    422         (2, 1) : 12.66665
    423         (2, 2) : 20.66664
    424         (2, 3) : 28.66663
    425         (2, 4) : 36.66662
    426         (2, 5) : 44.66661
    427         (2, 6) : 52.6666
    428         (3, 1) : 14.99998
    429         (3, 2) : 22.99997
    430         (3, 3) : 30.99996
    431         (3, 4) : 38.99995
    432         (3, 5) : 46.99994
    433         (3, 6) : 54.99993
    434         (4, 1) : 17.33331
    435         (4, 2) : 25.3333
    436         (4, 3) : 33.33329
    437         (4, 4) : 41.33328
    438         (4, 5) : 49.33327
    439         (4, 6) : 57.33326
    440         (5, 1) : 19.66664
    441         (5, 2) : 27.66663
    442         (5, 3) : 35.66662
    443         (5, 4) : 43.66661
    444         (5, 5) : 51.6666
    445         (5, 6) : 59.66659
     416        (1, 1) : -0.788608083678
     417        (1, 2) : -0.493618782917
     418        (1, 3) : 0.93224141556
     419        (1, 4) : 0.222354914382
     420        (1, 5) : -0.996942310904
     421        (1, 6) : 0.0677356388252
     422        (2, 1) : 0.100111402623
     423        (2, 2) : 0.969824168356
     424        (2, 3) : -0.382311111107
     425        (2, 4) : -0.858579174032
     426        (2, 5) : 0.632140719945
     427        (2, 6) : 0.674638690066
     428        (3, 1) : 0.650303033785
     429        (3, 2) : -0.846204418804
     430        (3, 3) : -0.404074234694
     431        (3, 4) : 0.963782052933
     432        (3, 5) : 0.123632662651
     433        (3, 6) : -0.999756719782
     434        (4, 1) : -0.998512495568
     435        (4, 2) : 0.19921693281
     436        (4, 3) : 0.940544296591
     437        (4, 4) : -0.472896775996
     438        (4, 5) : -0.802940660094
     439        (4, 6) : 0.706536674445
     440        (5, 1) : 0.729153420716
     441        (5, 2) : 0.570983943317
     442        (5, 3) : -0.895298488668
     443        (5, 4) : -0.310469738009
     444        (5, 5) : 0.985639060101
     445        (5, 6) : 0.02366820789
    446446
    4474472 Var Declarations
     
    492492        3
    493493   d :  Size=30         Domain=Reals
    494         (1, 1) : 10.33332
    495         (1, 2) : 18.33331
    496         (1, 3) : 26.3333
    497         (1, 4) : 34.33329
    498         (1, 5) : 42.33328
    499         (1, 6) : 50.33327
    500         (2, 1) : 12.66665
    501         (2, 2) : 20.66664
    502         (2, 3) : 28.66663
    503         (2, 4) : 36.66662
    504         (2, 5) : 44.66661
    505         (2, 6) : 52.6666
    506         (3, 1) : 14.99998
    507         (3, 2) : 22.99997
    508         (3, 3) : 30.99996
    509         (3, 4) : 38.99995
    510         (3, 5) : 46.99994
    511         (3, 6) : 54.99993
    512         (4, 1) : 17.33331
    513         (4, 2) : 25.3333
    514         (4, 3) : 33.33329
    515         (4, 4) : 41.33328
    516         (4, 5) : 49.33327
    517         (4, 6) : 57.33326
    518         (5, 1) : 19.66664
    519         (5, 2) : 27.66663
    520         (5, 3) : 35.66662
    521         (5, 4) : 43.66661
    522         (5, 5) : 51.6666
    523         (5, 6) : 59.66659
     494        (1, 1) : -0.788608083678
     495        (1, 2) : -0.493618782917
     496        (1, 3) : 0.93224141556
     497        (1, 4) : 0.222354914382
     498        (1, 5) : -0.996942310904
     499        (1, 6) : 0.0677356388252
     500        (2, 1) : 0.100111402623
     501        (2, 2) : 0.969824168356
     502        (2, 3) : -0.382311111107
     503        (2, 4) : -0.858579174032
     504        (2, 5) : 0.632140719945
     505        (2, 6) : 0.674638690066
     506        (3, 1) : 0.650303033785
     507        (3, 2) : -0.846204418804
     508        (3, 3) : -0.404074234694
     509        (3, 4) : 0.963782052933
     510        (3, 5) : 0.123632662651
     511        (3, 6) : -0.999756719782
     512        (4, 1) : -0.998512495568
     513        (4, 2) : 0.19921693281
     514        (4, 3) : 0.940544296591
     515        (4, 4) : -0.472896775996
     516        (4, 5) : -0.802940660094
     517        (4, 6) : 0.706536674445
     518        (5, 1) : 0.729153420716
     519        (5, 2) : 0.570983943317
     520        (5, 3) : -0.895298488668
     521        (5, 4) : -0.310469738009
     522        (5, 5) : 0.985639060101
     523        (5, 6) : 0.02366820789
    524524
    5255252 Var Declarations
     
    570570        3
    571571   d :  Size=30         Domain=Reals
    572         (1, 1) : 10.33332
    573         (1, 2) : 18.33331
    574         (1, 3) : 26.3333
    575         (1, 4) : 34.33329
    576         (1, 5) : 42.33328
    577         (1, 6) : 50.33327
    578         (2, 1) : 12.66665
    579         (2, 2) : 20.66664
    580         (2, 3) : 28.66663
    581         (2, 4) : 36.66662
    582         (2, 5) : 44.66661
    583         (2, 6) : 52.6666
    584         (3, 1) : 14.99998
    585         (3, 2) : 22.99997
    586         (3, 3) : 30.99996
    587         (3, 4) : 38.99995
    588         (3, 5) : 46.99994
    589         (3, 6) : 54.99993
    590         (4, 1) : 17.33331
    591         (4, 2) : 25.3333
    592         (4, 3) : 33.33329
    593         (4, 4) : 41.33328
    594         (4, 5) : 49.33327
    595         (4, 6) : 57.33326
    596         (5, 1) : 19.66664
    597         (5, 2) : 27.66663
    598         (5, 3) : 35.66662
    599         (5, 4) : 43.66661
    600         (5, 5) : 51.6666
    601         (5, 6) : 59.66659
     572        (1, 1) : -0.788608083678
     573        (1, 2) : -0.493618782917
     574        (1, 3) : 0.93224141556
     575        (1, 4) : 0.222354914382
     576        (1, 5) : -0.996942310904
     577        (1, 6) : 0.0677356388252
     578        (2, 1) : 0.100111402623
     579        (2, 2) : 0.969824168356
     580        (2, 3) : -0.382311111107
     581        (2, 4) : -0.858579174032
     582        (2, 5) : 0.632140719945
     583        (2, 6) : 0.674638690066
     584        (3, 1) : 0.650303033785
     585        (3, 2) : -0.846204418804
     586        (3, 3) : -0.404074234694
     587        (3, 4) : 0.963782052933
     588        (3, 5) : 0.123632662651
     589        (3, 6) : -0.999756719782
     590        (4, 1) : -0.998512495568
     591        (4, 2) : 0.19921693281
     592        (4, 3) : 0.940544296591
     593        (4, 4) : -0.472896775996
     594        (4, 5) : -0.802940660094
     595        (4, 6) : 0.706536674445
     596        (5, 1) : 0.729153420716
     597        (5, 2) : 0.570983943317
     598        (5, 3) : -0.895298488668
     599        (5, 4) : -0.310469738009
     600        (5, 5) : 0.985639060101
     601        (5, 6) : 0.02366820789
    602602
    6036032 Var Declarations
     
    678678        3
    679679   d :  Size=30         Domain=Reals
    680         (1, 1) : 10.33332
    681         (1, 2) : 18.33331
    682         (1, 3) : 26.3333
    683         (1, 4) : 34.33329
    684         (1, 5) : 42.33328
    685         (1, 6) : 50.33327
    686         (2, 1) : 12.66665
    687         (2, 2) : 20.66664
    688         (2, 3) : 28.66663
    689         (2, 4) : 36.66662
    690         (2, 5) : 44.66661
    691         (2, 6) : 52.6666
    692         (3, 1) : 14.99998
    693         (3, 2) : 22.99997
    694         (3, 3) : 30.99996
    695         (3, 4) : 38.99995
    696         (3, 5) : 46.99994
    697         (3, 6) : 54.99993
    698         (4, 1) : 17.33331
    699         (4, 2) : 25.3333
    700         (4, 3) : 33.33329
    701         (4, 4) : 41.33328
    702         (4, 5) : 49.33327
    703         (4, 6) : 57.33326
    704         (5, 1) : 19.66664
    705         (5, 2) : 27.66663
    706         (5, 3) : 35.66662
    707         (5, 4) : 43.66661
    708         (5, 5) : 51.6666
    709         (5, 6) : 59.66659
     680        (1, 1) : -0.788608083678
     681        (1, 2) : -0.493618782917
     682        (1, 3) : 0.93224141556
     683        (1, 4) : 0.222354914382
     684        (1, 5) : -0.996942310904
     685        (1, 6) : 0.0677356388252
     686        (2, 1) : 0.100111402623
     687        (2, 2) : 0.969824168356
     688        (2, 3) : -0.382311111107
     689        (2, 4) : -0.858579174032
     690        (2, 5) : 0.632140719945
     691        (2, 6) : 0.674638690066
     692        (3, 1) : 0.650303033785
     693        (3, 2) : -0.846204418804
     694        (3, 3) : -0.404074234694
     695        (3, 4) : 0.963782052933
     696        (3, 5) : 0.123632662651
     697        (3, 6) : -0.999756719782
     698        (4, 1) : -0.998512495568
     699        (4, 2) : 0.19921693281
     700        (4, 3) : 0.940544296591
     701        (4, 4) : -0.472896775996
     702        (4, 5) : -0.802940660094
     703        (4, 6) : 0.706536674445
     704        (5, 1) : 0.729153420716
     705        (5, 2) : 0.570983943317
     706        (5, 3) : -0.895298488668
     707        (5, 4) : -0.310469738009
     708        (5, 5) : 0.985639060101
     709        (5, 6) : 0.02366820789
    710710
    7117112 Var Declarations
     
    791791        3
    792792   d :  Size=30         Domain=Reals
    793         (1, 1) : 10.33332
    794         (1, 2) : 18.33331
    795         (1, 3) : 26.3333
    796         (1, 4) : 34.33329
    797         (1, 5) : 42.33328
    798         (1, 6) : 50.33327
    799         (2, 1) : 12.66665
    800         (2, 2) : 20.66664
    801         (2, 3) : 28.66663
    802         (2, 4) : 36.66662
    803         (2, 5) : 44.66661
    804         (2, 6) : 52.6666
    805         (3, 1) : 14.99998
    806         (3, 2) : 22.99997
    807         (3, 3) : 30.99996
    808         (3, 4) : 38.99995
    809         (3, 5) : 46.99994
    810         (3, 6) : 54.99993
    811         (4, 1) : 17.33331
    812         (4, 2) : 25.3333
    813         (4, 3) : 33.33329
    814         (4, 4) : 41.33328
    815         (4, 5) : 49.33327
    816         (4, 6) : 57.33326
    817         (5, 1) : 19.66664
    818         (5, 2) : 27.66663
    819         (5, 3) : 35.66662
    820         (5, 4) : 43.66661
    821         (5, 5) : 51.6666
    822         (5, 6) : 59.66659
     793        (1, 1) : -0.788608083678
     794        (1, 2) : -0.493618782917
     795        (1, 3) : 0.93224141556
     796        (1, 4) : 0.222354914382
     797        (1, 5) : -0.996942310904
     798        (1, 6) : 0.0677356388252
     799        (2, 1) : 0.100111402623
     800        (2, 2) : 0.969824168356
     801        (2, 3) : -0.382311111107
     802        (2, 4) : -0.858579174032
     803        (2, 5) : 0.632140719945
     804        (2, 6) : 0.674638690066
     805        (3, 1) : 0.650303033785
     806        (3, 2) : -0.846204418804
     807        (3, 3) : -0.404074234694
     808        (3, 4) : 0.963782052933
     809        (3, 5) : 0.123632662651
     810        (3, 6) : -0.999756719782
     811        (4, 1) : -0.998512495568
     812        (4, 2) : 0.19921693281
     813        (4, 3) : 0.940544296591
     814        (4, 4) : -0.472896775996
     815        (4, 5) : -0.802940660094
     816        (4, 6) : 0.706536674445
     817        (5, 1) : 0.729153420716
     818        (5, 2) : 0.570983943317
     819        (5, 3) : -0.895298488668
     820        (5, 4) : -0.310469738009
     821        (5, 5) : 0.985639060101
     822        (5, 6) : 0.02366820789
    823823
    8248242 Var Declarations
     
    906906        3
    907907   d :  Size=30         Domain=Reals
    908         (1, 1) : 10.33332
    909         (1, 2) : 18.33331
    910         (1, 3) : 26.3333
    911         (1, 4) : 34.33329
    912         (1, 5) : 42.33328
    913         (1, 6) : 50.33327
    914         (2, 1) : 12.66665
    915         (2, 2) : 20.66664
    916         (2, 3) : 28.66663
    917         (2, 4) : 36.66662
    918         (2, 5) : 44.66661
    919         (2, 6) : 52.6666
    920         (3, 1) : 14.99998
    921         (3, 2) : 22.99997
    922         (3, 3) : 30.99996
    923         (3, 4) : 38.99995
    924         (3, 5) : 46.99994
    925         (3, 6) : 54.99993
    926         (4, 1) : 17.33331
    927         (4, 2) : 25.3333
    928         (4, 3) : 33.33329
    929         (4, 4) : 41.33328
    930         (4, 5) : 49.33327
    931         (4, 6) : 57.33326
    932         (5, 1) : 19.66664
    933         (5, 2) : 27.66663
    934         (5, 3) : 35.66662
    935         (5, 4) : 43.66661
    936         (5, 5) : 51.6666
    937         (5, 6) : 59.66659
     908        (1, 1) : -0.788608083678
     909        (1, 2) : -0.493618782917
     910        (1, 3) : 0.93224141556
     911        (1, 4) : 0.222354914382
     912        (1, 5) : -0.996942310904
     913        (1, 6) : 0.0677356388252
     914        (2, 1) : 0.100111402623
     915        (2, 2) : 0.969824168356
     916        (2, 3) : -0.382311111107
     917        (2, 4) : -0.858579174032
     918        (2, 5) : 0.632140719945
     919        (2, 6) : 0.674638690066
     920        (3, 1) : 0.650303033785
     921        (3, 2) : -0.846204418804
     922        (3, 3) : -0.404074234694
     923        (3, 4) : 0.963782052933
     924        (3, 5) : 0.123632662651
     925        (3, 6) : -0.999756719782
     926        (4, 1) : -0.998512495568
     927        (4, 2) : 0.19921693281
     928        (4, 3) : 0.940544296591
     929        (4, 4) : -0.472896775996
     930        (4, 5) : -0.802940660094
     931        (4, 6) : 0.706536674445
     932        (5, 1) : 0.729153420716
     933        (5, 2) : 0.570983943317
     934        (5, 3) : -0.895298488668
     935        (5, 4) : -0.310469738009
     936        (5, 5) : 0.985639060101
     937        (5, 6) : 0.02366820789
    938938
    9399392 Var Declarations
     
    10571057        3
    10581058   d :  Size=30         Domain=Reals
    1059         (1, 1) : 10.33332
    1060         (1, 2) : 18.33331
    1061         (1, 3) : 26.3333
    1062         (1, 4) : 34.33329
    1063         (1, 5) : 42.33328
    1064         (1, 6) : 50.33327
    1065         (2, 1) : 12.66665
    1066         (2, 2) : 20.66664
    1067         (2, 3) : 28.66663
    1068         (2, 4) : 36.66662
    1069         (2, 5) : 44.66661
    1070         (2, 6) : 52.6666
    1071         (3, 1) : 14.99998
    1072         (3, 2) : 22.99997
    1073         (3, 3) : 30.99996
    1074         (3, 4) : 38.99995
    1075         (3, 5) : 46.99994
    1076         (3, 6) : 54.99993
    1077         (4, 1) : 17.33331
    1078         (4, 2) : 25.3333
    1079         (4, 3) : 33.33329
    1080         (4, 4) : 41.33328
    1081         (4, 5) : 49.33327
    1082         (4, 6) : 57.33326
    1083         (5, 1) : 19.66664
    1084         (5, 2) : 27.66663
    1085         (5, 3) : 35.66662
    1086         (5, 4) : 43.66661
    1087         (5, 5) : 51.6666
    1088         (5, 6) : 59.66659
     1059        (1, 1) : -0.788608083678
     1060        (1, 2) : -0.493618782917
     1061        (1, 3) : 0.93224141556
     1062        (1, 4) : 0.222354914382
     1063        (1, 5) : -0.996942310904
     1064        (1, 6) : 0.0677356388252
     1065        (2, 1) : 0.100111402623
     1066        (2, 2) : 0.969824168356
     1067        (2, 3) : -0.382311111107
     1068        (2, 4) : -0.858579174032
     1069        (2, 5) : 0.632140719945
     1070        (2, 6) : 0.674638690066
     1071        (3, 1) : 0.650303033785
     1072        (3, 2) : -0.846204418804
     1073        (3, 3) : -0.404074234694
     1074        (3, 4) : 0.963782052933
     1075        (3, 5) : 0.123632662651
     1076        (3, 6) : -0.999756719782
     1077        (4, 1) : -0.998512495568
     1078        (4, 2) : 0.19921693281
     1079        (4, 3) : 0.940544296591
     1080        (4, 4) : -0.472896775996
     1081        (4, 5) : -0.802940660094
     1082        (4, 6) : 0.706536674445
     1083        (5, 1) : 0.729153420716
     1084        (5, 2) : 0.570983943317
     1085        (5, 3) : -0.895298488668
     1086        (5, 4) : -0.310469738009
     1087        (5, 5) : 0.985639060101
     1088        (5, 6) : 0.02366820789
    10891089
    109010902 Var Declarations
     
    12081208        3
    12091209   d :  Size=30         Domain=Reals
    1210         (1, 1) : 10.33332
    1211         (1, 2) : 18.33331
    1212         (1, 3) : 26.3333
    1213         (1, 4) : 34.33329
    1214         (1, 5) : 42.33328
    1215         (1, 6) : 50.33327
    1216         (2, 1) : 12.66665
    1217         (2, 2) : 20.66664
    1218         (2, 3) : 28.66663
    1219         (2, 4) : 36.66662
    1220         (2, 5) : 44.66661
    1221         (2, 6) : 52.6666
    1222         (3, 1) : 14.99998
    1223         (3, 2) : 22.99997
    1224         (3, 3) : 30.99996
    1225         (3, 4) : 38.99995
    1226         (3, 5) : 46.99994
    1227         (3, 6) : 54.99993
    1228         (4, 1) : 17.33331
    1229         (4, 2) : 25.3333
    1230         (4, 3) : 33.33329
    1231         (4, 4) : 41.33328
    1232         (4, 5) : 49.33327
    1233         (4, 6) : 57.33326
    1234         (5, 1) : 19.66664
    1235         (5, 2) : 27.66663
    1236         (5, 3) : 35.66662
    1237         (5, 4) : 43.66661
    1238         (5, 5) : 51.6666
    1239         (5, 6) : 59.66659
     1210        (1, 1) : -0.788608083678
     1211        (1, 2) : -0.493618782917
     1212        (1, 3) : 0.93224141556
     1213        (1, 4) : 0.222354914382
     1214        (1, 5) : -0.996942310904
     1215        (1, 6) : 0.0677356388252
     1216        (2, 1) : 0.100111402623
     1217        (2, 2) : 0.969824168356
     1218        (2, 3) : -0.382311111107
     1219        (2, 4) : -0.858579174032
     1220        (2, 5) : 0.632140719945
     1221        (2, 6) : 0.674638690066
     1222        (3, 1) : 0.650303033785
     1223        (3, 2) : -0.846204418804
     1224        (3, 3) : -0.404074234694
     1225        (3, 4) : 0.963782052933
     1226        (3, 5) : 0.123632662651
     1227        (3, 6) : -0.999756719782
     1228        (4, 1) : -0.998512495568
     1229        (4, 2) : 0.19921693281
     1230        (4, 3) : 0.940544296591
     1231        (4, 4) : -0.472896775996
     1232        (4, 5) : -0.802940660094
     1233        (4, 6) : 0.706536674445
     1234        (5, 1) : 0.729153420716
     1235        (5, 2) : 0.570983943317
     1236        (5, 3) : -0.895298488668
     1237        (5, 4) : -0.310469738009
     1238        (5, 5) : 0.985639060101
     1239        (5, 6) : 0.02366820789
    12401240
    124112412 Var Declarations
     
    15171517# ----------------------------------------------------------
    15181518Problem:
    1519 - Lower bound: 181.99977
     1519- Lower bound: -5.015609
    15201520  Upper bound: inf
    15211521  Number of objectives: 1
     
    15311531- Status: ok
    15321532  Termination condition: unknown
     1533  Statistics:
     1534    Branch and bound:
     1535      Number of bounded subproblems: 0
     1536      Number of created subproblems: 0
    15331537  Error rc: 0
    15341538
     
    15441548    f:
    15451549      Id: 0
    1546       Value: 181.99977
     1550      Value: -5.015609
    15471551  Variable:
    1548     x[1,1]:
    1549       Id: 0
     1552    x[3,2]:
     1553      Id: 13
    15501554      Value: 1
    1551     x[1,2]:
    1552       Id: 1
     1555    x[3,6]:
     1556      Id: 17
    15531557      Value: 1
    1554     x[1,3]:
    1555       Id: 2
     1558    x[4,1]:
     1559      Id: 18
    15561560      Value: 1
    1557     x[1,4]:
    1558       Id: 3
     1561    x[4,4]:
     1562      Id: 21
    15591563      Value: 1
    1560     x[1,5]:
    1561       Id: 4
     1564    x[4,5]:
     1565      Id: 22
    15621566      Value: 1
    1563     x[1,6]:
    1564       Id: 5
     1567    x[5,3]:
     1568      Id: 26
    15651569      Value: 1
    1566     y[1]:
    1567       Id: 30
     1570    y[3]:
     1571      Id: 32
    15681572      Value: 1
    1569     y[2]:
    1570       Id: 31
     1573    y[4]:
     1574      Id: 33
    15711575      Value: 1
    15721576    y[5]:
  • coopr.pyomo/stable/2.3/coopr/pyomo/tests/examples/test12.txt

    r2315 r2388  
    88# ----------------------------------------------------------
    99Problem:
    10 - Lower bound: 181.99977
     10- Lower bound: -5.015609
    1111  Upper bound: inf
    1212  Number of objectives: 1
     
    2222- Status: ok
    2323  Termination condition: unknown
     24  Statistics:
     25    Branch and bound:
     26      Number of bounded subproblems: 0
     27      Number of created subproblems: 0
    2428  Error rc: 0
    2529
     
    3539    f:
    3640      Id: 0
    37       Value: 181.99977
     41      Value: -5.015609
    3842  Variable:
    39     x[1,1]:
    40       Id: 0
     43    x[3,2]:
     44      Id: 13
    4145      Value: 1
    42     x[1,2]:
    43       Id: 1
     46    x[3,6]:
     47      Id: 17
    4448      Value: 1
    45     x[1,3]:
    46       Id: 2
     49    x[4,1]:
     50      Id: 18
    4751      Value: 1
    48     x[1,4]:
    49       Id: 3
     52    x[4,4]:
     53      Id: 21
    5054      Value: 1
    51     x[1,5]:
    52       Id: 4
     55    x[4,5]:
     56      Id: 22
    5357      Value: 1
    54     x[1,6]:
    55       Id: 5
     58    x[5,3]:
     59      Id: 26
    5660      Value: 1
    57     y[1]:
    58       Id: 30
     61    y[3]:
     62      Id: 32
    5963      Value: 1
    60     y[2]:
    61       Id: 31
     64    y[4]:
     65      Id: 33
    6266      Value: 1
    6367    y[5]:
  • coopr.pyomo/stable/2.3/coopr/pyomo/tests/unit/test_set.py

    r2360 r2388  
    15251525        OUTPUT.close()
    15261526        def tmp_init(z,model):
    1527             if z==value(model.n) or z == 10:
     1527            if z>value(model.n) or z == 11:
    15281528               return None
    15291529            return z
     
    17371737        OUTPUT.close()
    17381738        def tmp_init(i,z,model):
    1739             if z==value(model.n):
     1739            if z>value(model.n):
    17401740               return None
    17411741            return z
  • coopr.pyomo/stable/2.3/examples/pyomo/tutorials/set.py

    r909 r2388  
    172172#
    173173def U_init(z, model):
    174     if z==5:
     174    if z==6:
    175175       return None
    176     if z==0:
     176    if z==1:
    177177       return 1
    178178    else:
    179        return model.U[z-1]*(z+1)
     179       return model.U[z-1]*z
    180180model.U = Set(ordered=True, initialize=U_init)
    181181#
     
    187187#
    188188def V_init(i, z, model):
    189     if z==5:
     189    if z==6:
    190190       return None
    191191    if i==1:
    192        if z==0:
     192       if z==1:
    193193          return 1
    194194       else:
    195           return (z+1)
    196     return model.V[i-1][z]+z
     195          return z
     196    return model.V[i-1][z]+z-1
    197197model.V = Set(RangeSet(1,4), initialize=V_init, ordered=True)
    198198
Note: See TracChangeset for help on using the changeset viewer.