╨╧рб▒с>■  ■                                                                                                                                                                                                                                                                                                                                                                                                                                                   @FOR(ITEM(I): @FOR(MARKET(J): X( I) + S(J) >= R(J, I))); !Compute the achieved surplus; @FOR(MARKET(I): @SUM(ITEM(J): P(I, J) - R(I, J) * Y(I, J)) + S(I) = 0); ! Each product variable Pij must be.. ; ! <= Xj ; ! <= Rij * Yij ; ! >= Xj M + M * Yij ; M = 600; !Max price of any bundle; @FOR(CROSS(I, J): P(I, J) <= X(J); P(I, J) <= Y(I, J) * R(I, J); R(I, J) >= X(J) - M + M * Y(I, J);); ! Price of bundle should be < sum of component prices; X( @INDEX( BOTH)) <= X( @INDEX( SO)) + X( @INDEX( WO)); ! Price of bundle should be > any one component; X( @INDEX( BOTH)) >= X( @INDEX( SO)); X( @INDEX( BOTH)) >= X( @INDEX( WO)); END MODEL: SETS: MARKET/B, L, E, H/:S, N; ITEM/NONE, SO, WO, BOTH/:X; CROSS(MARKET, ITEM):R, Y, P; ENDSETS DATA: N = 7, 5, 6, 4.5; R = 0 450 110 530 0 75 430 480 0 290 250 410 0 220 380 390; ENDDATA MAX = @SUM(CROSS(I, J): P(I, J) * N(I)); !Make the PICK variables 0/1; @FOR(CROSS:@BIN(PICK)); !Each customer buys exactly one bundle; @FOR(MARKET(I): @SUM(ITEM(J): Y(I, J)) = 1); !Each customer's achieved surplus, SURP, must be at least as good from every possible bundle; ■   ¤   ■   ■                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           Root Entry        │CONTENTS            │                         ■                                                                                                                                                                                                                                                                                                                                                                                                                                                       Root Entry        *0_Ъю╧╗Є└Ё^ау╦kf■─ └Contents            а                                                ■   ¤   ■   ■                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 ■                                                                                                                                                                                                                                                                                                                                                                                                       - M + M * Y(I, J);); \par \cf3 ! Price of bundle should be < sum of component prices;\cf2 \par X( \cf1 @INDEX\cf2 ( BOTH)) <= X( \cf1 @INDEX\cf2 ( SO)) + X( \cf1 @INDEX\cf2 ( WO)); \par \cf3 ! Price of bundle should be > any one component;\cf2 \par X( \cf1 @INDEX\cf2 ( BOTH)) >= X( \cf1 @INDEX\cf2 ( SO)); \par X( \cf1 @INDEX\cf2 ( BOTH)) >= X( \cf1 @INDEX\cf2 ( WO)); \par \cf1 END\cf2 \par \par } ьЛ{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil\fcharset0 Courier New;}} {\colortbl ;\red0\green0\blue255;\red0\green0\blue0;\red0\green175\blue0;} \viewkind4\uc1\pard\cf1\f0\fs20 MODEL\cf2 : \par \cf1 SETS\cf2 : \par MARKET/B, L, E, H/:S, N; \par ITEM/NONE, SO, WO, BOTH/:X; \par CROSS(MARKET, ITEM):R, Y, P; \par \cf1 ENDSETS\cf2 \par \cf1 DATA\cf2 : \par N = 7, 5, 6, 4.5; \par R = 0 450 110 530 \par 0 75 430 480 \par 0 290 250 410 \par 0 220 380 390; \par \cf1 ENDDATA\cf2 \par \cf1 MAX\cf2 = \cf1 @SUM\cf2 (CROSS(I, J): P(I, J) * N(I)); \par \cf3 !Make the PICK variables 0/1;\cf2 \par \cf1 @FOR\cf2 (CROSS:\cf1 @BIN\cf2 (PICK)); \par \cf3 !Each customer buys exactly one bundle;\cf2 \par \cf1 @FOR\cf2 (MARKET(I): \cf1 @SUM\cf2 (ITEM(J): Y(I, J)) = 1); \par \cf3 !Each customer's achieved surplus, SURP, must be at least \par as good from every possible bundle;\cf2 \par \cf1 @FOR\cf2 (ITEM(I): \cf1 @FOR\cf2 (MARKET(J): X( I) + S(J) \par >= R(J, I))); \par \cf3 !Compute the achieved surplus;\cf2 \par \cf1 @FOR\cf2 (MARKET(I): \cf1 @SUM\cf2 (ITEM(J): P(I, J) \par - R(I, J) * Y(I, J)) + S(I) = 0); \par \cf3 ! Each product variable Pij must be.. ;\cf2 \par \cf3 ! <= Xj ;\cf2 \par \cf3 ! <= Rij * Yij ;\cf2 \par \cf3 ! >= Xj M + M * Yij ;\cf2 \par M = 600; \cf3 !Max price of any bundle;\cf2 \par \cf1 @FOR\cf2 (CROSS(I, J): P(I, J) <= X(J); \par P(I, J) <= Y(I, J) * R(I, J); \par R(I, J) >= X(J)