Topic
2 replies Latest Post - ‏2012-12-20T13:00:33Z by SystemAdmin
SystemAdmin
SystemAdmin
554 Posts
ACCEPTED ANSWER

Pinned topic Intensity and intervals

‏2012-12-20T09:53:24Z |
Hello,

I am trying to use the intensity feature like this:



//80% during the the whole window stepfunction fDataLinkEff[w in Nws] = stepwise
{0->WstartInt[w]; 80->WendInt[w]; 0
};   dvar interval itvs[i in Nfs] optional in WstartMinInt..WendMaxInt size DvInt[i];   dvar interval altItvChannels[i in Nfs][sa in Sas][c in Ncs] optional in  WstartMinInt..WendMaxInt size DvInt[i];   dvar interval altItvWindows[i in Nfs][w in Nws] optional in WstartInt[w]..WendInt[w] size DvInt[i] intensity fDataLinkEff[w];


In the constraints, I have the following :

alternative(itvs[i], all(w in Nws)  altItvWindows[i][w]); alternative(itvs[i], all(s in Sas,c in Ncs ) altItvChannels[i][s][c]);


All my tasks are of size 1000 (DvInt[i] = 1000 for all i). I want to model the intensity on the windows (altItvWindows), not on the channels (because it makes no sense) but they are linked I guess because of the "alternative" (itvs is chosen in altItvChannels AND altItvWindows). The size of a window is between 2000 and 4000 (WendInt[w]-WstartInt[w] for all w).

The model gives only empty intervals as a solution. If I put a value of 100 in the stepfunction during the whole interval, everything works.

If I understand well, because of the stepfunction, I should get intervals of more than 1000 (duration of a task), is that right ? Why is it not working ?

Thank you very much
Updated on 2012-12-20T13:00:33Z at 2012-12-20T13:00:33Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    554 Posts
    ACCEPTED ANSWER

    Re: Intensity and intervals

    ‏2012-12-20T10:34:34Z  in response to SystemAdmin
    Hello,

    I think it is not working because you post a size constraint both on the itvs intervals (which by default have an intensity function always equal to 100%) and on the altItvWindows intervals. In this situation, a solution should satisfy both intensity constraints and as the intensity function fDataLinkEff is always strictly lower than the 100% intensity function of itvs intervals, the only solution is to have all interval variables absent.

    I think what you want to do is something like this where the size of interval variables itvs and altItvChannels is free (their length will be decided by altItvWindows):

    
    
    //80% during the the whole window stepfunction fDataLinkEff[w in Nws] = stepwise
    {0->WstartInt[w]; 80->WendInt[w]; 0
    }; dvar interval itvs[i in Nfs] optional in WstartMinInt..WendMaxInt; dvar interval altItvChannels[i in Nfs][sa in Sas][c in Ncs] optional in  WstartMinInt..WendMaxInt; dvar interval altItvWindows[i in Nfs][w in Nws] optional in WstartInt[w]..WendInt[w] size DvInt[i] intensity fDataLinkEff[w];
    


    Philippe
  • SystemAdmin
    SystemAdmin
    554 Posts
    ACCEPTED ANSWER

    Re: Intensity and intervals

    ‏2012-12-20T13:00:33Z  in response to SystemAdmin
    It works. Thank you very much.