BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
user24feb
Barite | Level 11


Hello,

where can I find documentation regarding the "()"-brackets as in the node balancing restriction of example 5.6 (SAS/OR(R) 9.3 User's Guide: Mathematical Programming)?

con balance {i in NODES}:

      sum {<(i),j> in ARCS} Flow[i,j]

      - sum {<j,(i)> in ARCS} Flow[j,i]

      = _sd_;

Why this is necessary is quite clear; but can't find anything on this optmodel syntax.

Thanks & kind regards

1 ACCEPTED SOLUTION

Accepted Solutions
RobPratt
SAS Super FREQ

It is discussed in the "More on Index Sets" section of the PROC OPTMODEL documentation:

SAS/OR(R) 13.2 User's Guide: Mathematical Programming

See also this "Manpower Planning" example that shows three equivalent forms:

SAS/OR(R) 13.2 User's Guide: Mathematical Programming Examples

View solution in original post

2 REPLIES 2
RobPratt
SAS Super FREQ

It is discussed in the "More on Index Sets" section of the PROC OPTMODEL documentation:

SAS/OR(R) 13.2 User's Guide: Mathematical Programming

See also this "Manpower Planning" example that shows three equivalent forms:

SAS/OR(R) 13.2 User's Guide: Mathematical Programming Examples

LeoLopes
SAS Employee

It is a shorthand for the slice operator, often used to make this very common pattern:

    sum{<i,j> in FOO: i = something} x[i,j]

shorter, as in:

   sum{<(something),j> in FOO} x[something,j]