Topic
  • 5 replies
  • Latest Post - ‏2013-02-19T21:36:28Z by SystemAdmin
SystemAdmin
SystemAdmin
7929 Posts

Pinned topic need help~ a maxband arterial signal control coordination problem

‏2013-02-13T17:06:15Z |
I am trying to code the maxband problem in CPLEX. the .mod are as follows.

int SNodes= ...; // signal nodes
int FSNodes= ...; // first n-1 signal nodes

range Signals=1..SNodes;
range FSignals=1..FSNodes;
range LSignals=2..SNodes;

float ROSignals= ...; // red time for signalized nodes of outbound
float RISignals= ...; // red time for signalized nodes of inbound
float TOFSignals= ...; // travel time of outbound
float TIFSignals= ...; // travel time of inbound
float tOSignals= ...; // queue clearance time for nodes of outbound
float tISignals= ...; // queue clearance time for nodes of inbound
float DelSignals= ...; // intranode offsets

// define decision variables
dvar float+ WOSignals in 0..1; // interference variable at nodes of outbound
dvar float+ WISignals in 0..1; // interference varibale at nodes of inbound
dvar int MFSignals; // loop integer variable
dvar float+ BO in 0..1; // bandwidth of outbound
dvar float+ BI in 0..1; // bandwidth of inbound

// objective function
maximize BO+BI;

// constraints
subject to {
forall (i in Signals){
WO[i]+BO<= 1-RO[i];
}

forall (i in Signals){
WI[i]+BI<= 1-RI[i];
}

BO==BI;

forall (i in FSignals, j in LSignals){
j>= i;
j-i== 1;
WO[i]+WI[i]-(WO[j]+WI[j])+(TO[i]+TI[i])+Del[i]-Del[j]
+0.5*(RO[i]+RI[i])-0.5*(RO[j]+RI[j])-(tI[i]+tO[j])-M[i]==0;
}
}

the .dat is shown below

SNodes=10;
FSNodes=9;

RO=http://0.7500,0.4854,0.5602,0.4277,0.5783,0.5951,0.5127,0.6117,0.2000,0.3990; // in cycles
RI=http://0.4435,0.4854,0.5459,0.5477,0.5783,0.6113,0.5127,0.6502,0.2000,0.7456; // in cycles
TO=http://21.82,11.36,11.36,10.91,32.73,21.82,10.91,37.09,9.82; // in seconds
TI=http://21.82,11.36,11.36,10.91,32.73,21.82,10.91,37.09,9.82; // in seconds
tO=http://0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0; // in cycles
tI=http://0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0; // in cycles
Del=http://-10.7,-47.1,-24.4,-1.6,20.2,5.6,-30.7,-8.9,65.3,4.9;

ran the simulation several times, but "NO VALUE" generated for the results. I am a beginner in cplex programming. please kindly help me. thank you very much!!!!
Updated on 2013-02-19T21:36:28Z at 2013-02-19T21:36:28Z by SystemAdmin
  • SystemAdmin
    SystemAdmin
    7929 Posts

    Re: need help~ a maxband arterial signal control coordination problem

    ‏2013-02-13T17:17:20Z  
    the files are attached.
  • SystemAdmin
    SystemAdmin
    7929 Posts

    Re: need help~ a maxband arterial signal control coordination problem

    ‏2013-02-13T20:21:40Z  
    the files are attached.
    need help now. happy valentine's day. everyone.
  • SystemAdmin
    SystemAdmin
    7929 Posts

    Re: need help~ a maxband arterial signal control coordination problem

    ‏2013-02-15T08:19:39Z  
    need help now. happy valentine's day. everyone.
    Your problem is infeasible. You can see this in the engine log:
    Infeasibility row 'c26':  0  = -1.
    

    That is why you don't get any values for your decision variables.
    There are two chapters in the user manual that deal with analyzing and handling infeasible models: Relaxing infeasible models and Infeasibility and unboundedness. Please refer to them to learn what you can do.
    Updated on 2014-03-24T22:40:01Z at 2014-03-24T22:40:01Z by iron-man
  • SystemAdmin
    SystemAdmin
    7929 Posts

    Re: need help~ a maxband arterial signal control coordination problem

    ‏2013-02-15T08:25:12Z  
    Your problem is infeasible. You can see this in the engine log:
    <pre class="java dw" data-editor-lang="java" data-pbcklang="java" dir="ltr">Infeasibility row 'c26': 0 = -1. </pre>
    That is why you don't get any values for your decision variables.
    There are two chapters in the user manual that deal with analyzing and handling infeasible models: Relaxing infeasible models and Infeasibility and unboundedness. Please refer to them to learn what you can do.
    Actually, your model is trivially infeasible by this constraint
    forall (i in FSignals,  j in LSignals){
      ...
      j-i == 1;
      ...
    }
    

    How is this supposed to be satisfied for j=5 and i=3, for example? i and j are constants (data) and their difference will never be equal to 1.
    Updated on 2014-03-24T22:39:57Z at 2014-03-24T22:39:57Z by iron-man
  • SystemAdmin
    SystemAdmin
    7929 Posts

    Re: need help~ a maxband arterial signal control coordination problem

    ‏2013-02-19T21:36:28Z  
    Actually, your model is trivially infeasible by this constraint
    <pre class="java dw" data-editor-lang="java" data-pbcklang="java" dir="ltr">forall (i in FSignals, j in LSignals){ ... j-i == 1; ... } </pre>
    How is this supposed to be satisfied for j=5 and i=3, for example? i and j are constants (data) and their difference will never be equal to 1.
    Thank you very much. you helped me a lot. best regards.