Originally posted by: **skyskyhuanghuang**

Hi all,

I am a newbie in using OPL,i have written like this:

int M=...;

float P2=...;

float H1[1..M][1..M]=...;

float B0=...;

float n0=...;

dvar float+ Yji1[1..M][1..M]in 0..1 ;

//dvar int Yji1[1..M][1..M] in 0..1 ;

maximize

B0*sum(i in 1..M)(

log(1+sum(j in 1..M)(

P2*H1[j][i]*Yji1[j][i]/

(n0+sum(n,q in 1..M)P2*H1[n][i]*Yji1[n][q]

-P2*H1[j][i]*sum(k in 1..M)Yji1[j][k])

)

)/log(2)

);

When I run the code i get errors like:

CPLEX(default) cannot extract expression: maximize (sum(i in 1..3) (ln(sum(j in 1..3) ((H1[j][i]*0.126)*Yji1[j][i]) / (sum(n in 1..3, q in 1..3) (H1[n][i]*0.126)*Yji1[n][q]+((H1[j][i]*0.126)*(sum(k in 1..3) Yji1[j][k]))*(-1)+6.3e-13)+1) / 2.30258509299405) / (ln(2) / 2.30258509299405))*20000000. 20180120.mod /Solve 20:1-30:5 /home/sky/opl/Solve/20180120.mod OPL Problem Marker

When I remove the sum of noise power behind, the procedure is right, and this is why

maximize

B0*sum(i in 1..M)(

log(1+sum(j in 1..M)(

P2*H1[j][i]*Yji1[j][i]/n0

//(n0+sum(n,q in 1..M)P2*H1[n][i]*Yji1[n][q]

//-P2*H1[j][i]*sum(k in 1..M)Yji1[j][k])

)

)/log(2)

);

I dont know how to fix this or other problems in the code.