ILOG logo
KSTEC ȸ¿øÀ¸·Î °¡ÀÔÇϼ¼¿ä¤Ó»õ¼Ò½Ä | ·Î±×ÀÎ
 
title element1
License
- ¶óÀ̼¾½º
- ¶óÀ̼¾½º °ü¸®
Maintenance
Training
FAQ
Q&A

Q & A ... °Ô½ÃÆÇ  (Optimization)


¡Ø ¾È³çÇϽʴϱî..?
    ÀúÈñ KSTECÀÇ Á¦Ç°À̳ª ¼­ºñ½º¿¡ ´ëÇØ ±Ã±ÝÇϽŠÁ¡À̳ª ±â¼úÁö¿øÀ» ¿øÇϽô °í°´´ÔÀº ȸ»ç¸í,
    ºÎ¼­¸í, ¼º¸í, »ç¿ëÁ¦Ç°¸í, Á¦Ç° VERSIONÀ» ¸í½ÃÇÏ¿© Áֽñ⠹ٶø´Ï´Ù.

¡Ø °Ô½ÃÇϽг»¿ë¿¡ ´ëÇØ¼­´Â ½Å¼ÓÇÏ°Ô ´äº¯ÇØ µå¸®°Ú½À´Ï´Ù.
¡Ø ÇØ´çµÇ´Â Á¦Ç°±ºÀ» ¼±ÅÃÇϽŠÈÄ ÇÏ°í ½ÍÀ¸½Å ¸»¾¸À» Àû¾î ÁֽʽÿÀ.

Á¦ ¸ñ
[RE][RE]Àǵµ´ë·Î ±¸ÇöµÇ¾ú´ÂÁö °ËÅä°¡ ÇÊ¿äÇÕ´Ï´Ù
ÀÛ¼ºÀÚ
Àӽºó
ÀÛ¼ºÀÏ
2008-03-13
Á¶È¸¼ö 1377 È¸
÷ºÎÆÄÀÏ Ã·ºÎµÈ ÆÄÀϾøÀ½.
¾È³çÇϼ¼¿ä.

º¸³»ÁֽŠ¼Ò½º¿¡ array ÂüÁ¶ ¿¡·¯°¡ ÀÖ½À´Ï´Ù.

void createGraph(IloEnv env, char * nodeFileName); ¸Þ¼­µå ºÎºÐ¿¡ ÇÊ¿¬ÀûÀ¸·Î ¿¡·¯°¡ ¹ß»ýÇÏ°Ô ±¸¼ºµÇ¾îÀÖ½À´Ï´Ù.

///////////////////////////////////////////
// Generate Distance between Nodes

for(IloInt i=0; i < nbNodes ; i++){
node[i].distance = IloNumArray(env, nbNodes);
for(IloInt j =0; j <= nbNodes ; j++){
double dist = (node[i].x - node[j].x )*(node[i].x - node[j].x )
+ (node[i].y - node[j].y )*(node[i].y - node[j].y ) ;
node[i].distance[j] = sqrt(dist);

}
}

ºÎºÐÀ» º¸½Ã¸é,

node[i].distance = IloNumArray(env, nbNodes);

distance °¹¼ö¸¦ nbNodes ¸¸Å­ »ý¼ºÇ϶ó°í ¼±¾ðµÇ¾î ÀÖÀ½¿¡µµ ºÒ±¸Çϰí,

node[i].distance[j] = sqrt(dist);

ÂüÁ¶´Â nbNodes+1 ÀÌ µÇ¾îÀÖ½À´Ï´Ù.

node[i].distance = IloNumArray(env, nbNodes); ºÎºÐÀ»

node[i].distance = IloNumArray(env, nbNodes+1); ·Î ¼öÁ¤ÇϽøé ÇØ°áµÉ °Í °°½À´Ï´Ù.


ÀÌ¿Í °ü·ÃµÈ ¿¡·¯°¡ ¶Ç ÀÖ½À´Ï´Ù.

void firstRoute(IloEnv env,
IloArray & firstroute,
IloNumArray& objCoef);

ºÎºÐ¿¡ º¸½Ã¸é,

// heuristic ÀÌ¿ëÇÏ¿© ÃʱâÇØ °áÁ¤ ...> ÃʱâÇØ°¡ ÁÁÀ» ¼ö·Ï Ǫ´Â ¼Óµµ°¡ »¡¶óÁø´Ù.

IloArray > RouteLabel(env, nbNodes+1) ;
IloNumArray label(env, nbNodes + 4);

IloIntArray nodeque(env);
nodeque.add(0);
IloArray successor(env, nbNodes) ;

for(IloInt i=0; i< nbNodes+1 ; i++){
RouteLabel[i] = IloArray (env);
if(i==0) RouteLabel[i].add(label);

successor[i] = IloIntArray(env);
for(IloInt j=1; j< nbNodes+1; j++){
if(i ==0 && j == nbNodes ) continue;
if(i!=j) successor[i].add(j);
}
}

IloArray successor(env, nbNodes) ;

successorµµ array ÂüÁ¶¿¡·¯°¡ ³¯ ¼ö ¹Û¿¡ ¾ø½À´Ï´Ù.

ÀÌ ¹Û¿¡µµ °è¼Ó ÀûÀ¸·Î array ÂüÁ¶ ¿¡·¯°¡ Àִµ¥ ¸ðµÎ ¼öÁ¤À» ÇØ ÁÖ¼Å¾ß ÇÕ´Ï´Ù.

ÀüüÀûÀ¸·Î º»ÀÎÀÇ Àǵµ¿Í array size°¡ Á¤»óÀûÀ¸·Î ¸ÅÄ¡°¡ µÇ¾ú´ÂÁö È®ÀÎÀÌ ÇÊ¿äÇÒ µí ½Í³×¿ä.

±× ÈÄ¿¡ °á°ú ºÐ¼®À» ÇÏ½Ã´Â°Ô ÁÁÀ» µí ½Í½À´Ï´Ù.


»ç¿ëÇÏ´Â ÄÄÆÄÀÏ·¯¿¡ µû¶ó ÂüÁ¶¿¡·¯¸¦ ¹«½ÃÇÏ°Ô µÇ´Â °æ¿ìµµ ÀÖ±ä ÇÏÁö¸¸, ÀÌ·± °æ¿ì Á¤»óÀûÀÎ °á°ú¸¦ ¾ò±â Èûµé °ÍÀ¸·Î ¿¹»óµË´Ï´Ù.


°¨»çÇÕ´Ï´Ù.
°ü·Ã±Û º¸±â
"[RE][RE]Àǵµ´ë·Î ±¸ÇöµÇ¾ú´ÂÁö °ËÅä°¡ ÇÊ¿äÇÕ´Ï´Ù"¿Í(°ú) °ü·ÃµÈ ±ÛÀÌ  3°Ç ÀÖ½À´Ï´Ù.
LP°¡ bound ÀÌ¿ÜÀÇ ÇØ°¡ ³ª¿À´Â ¿À·ù ... ±èÈñ¹® 2008-03-11
Àǵµ´ë·Î ±¸ÇöµÇ¾ú´ÂÁö °ËÅä°¡ ÇÊ¿äÇÕ´Ï´Ù À¯È¯ÁÖ 2008-03-11
   [RE]Àǵµ´ë·Î ±¸ÇöµÇ¾ú´ÂÁö °ËÅä°¡ ÇÊ¿äÇÕ´Ï´Ù ±èÈñ¹® 2008-03-12
    [RE][RE]Àǵµ´ë·Î ±¸ÇöµÇ¾ú´ÂÁö °ËÅä°¡ ÇÊ¿äÇÕ´Ï´Ù Àӽºó 2008-03-13