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

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


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

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

Á¦ ¸ñ
[RE][RE][RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ
ÀÛ¼ºÀÚ
Àӽºó
ÀÛ¼ºÀÏ
2007-08-10
Á¶È¸¼ö 2849 È¸
÷ºÎÆÄÀÏ Ã·ºÎµÈ ÆÄÀϾøÀ½.
°­¹«È«´Ô ¾È³çÇϼ¼¿ä.

ÇÑ±Û ÆÄÀÏ·Î º¸³»Áֽй®¼­´Â Çѱۺä¾î¿¡¼­ ¼ö½ÄÀ» ÀÐÁö ¸øÇØ Àо ¼ö°¡ ¾ø¾ú½À´Ï´Ù.

¼ö½ÄÀº º¼ ¼ö ¾ø¾úÁö¸¸, º¸³»ÁֽŠ1010101010_1.lp ÆÄÀÏ·Î °£´ÜÇÏ°Ô ºÐ¼®À» ÇØ º¸¾Ò½À´Ï´Ù.


¿ì¼± Q010101 Áï Q·Î ½ÃÀ۵Ǵ º¯¼öÀÇ Á¤ÀǸ¦ ãÀ» ¼ö°¡ ¾ø¾ú½À´Ï´Ù. ¾Æ¸¶ slack º¯¼ö·Î »ç¿ëÇϱâ À§Çؼ­ ÀÛ¼ºÇϽŠ°Í °°½À´Ï´Ù. ÀÌ Q º¯¼ö°¡ ¸ñÀû½Ä¿¡ ¹Ý¿µµÇ¾î ÀÖÁö ¸øÇÔÀ» ¿ì¼± ¾Ë·Áµå¸®°Ú½À´Ï´Ù.
Áï Q º¯¼ö¸¦ Æ÷ÇÔÇϰí ÀÖ´Â Á¦¾àµéÀº ¸ðµÎ ÀÌÄ÷¸®Æ¼(''=='') Á¦¾àµéÀÎ µ¥¿ä ÇØ´ç Á¦¾àÀ» ¸¸Á·Çϱâ À§ÇÏ¿© Q º¯¼ö°¡ °ªÀ» °¡Áö°Ô µÇ´Â °Í °°½À´Ï´Ù. ½ÇÁ¦·Î Çö ¸ñÀû½Ä¿¡¼­ °ªÀ» °¡Áö´Â º¯¼ö´Â ''O(¿µ¹®)'' º¯¼ö ¹Û¿¡ ¾ø½À´Ï´Ù.

¿¹¸¦ µé¸é

R1001: Q010101 - R010101 = 130
R1002: Q010102 - R010102 + R010101 = 160
R1003: Q010103 - R010103 + R010102 = 120
R1004: Q010104 - R010104 + R010103 = 140
R1005: Q010105 - R010105 + R010104 = 140

lp ÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© ¹®Á¦¸¦ Ç® ¶§, ¼±¾ðµÇÁö ¾ÊÀº º¯¼ö´Â ÀÚµ¿ÀûÀ¸·Î [0, +¹«ÇÑ´ë] °ªÀ» °¡Áö´Â ½Ç¼ö·Î ±× bound°¡ ¼³Á¤µË´Ï´Ù. º» lp ÆÄÀÏ¿¡´Â Q º¯¼ö¿Í R º¯¼ö°¡ ¼±¾ðµÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡ Q º¯¼ö¿Í R º¯¼ö´Â ÀÚµ¿ÀûÀ¸·Î À§ÀÇ bound¸¦ Çü¼ºÇÏ°Ô µË´Ï´Ù. µû¶ó¼­ Q º¯¼ö´Â ¸ñÀû½Ä¿¡ ¿µÇâÀ» ¾È ÁÖ´Â ¹Ý¸é R º¯¼ö´Â ¸ñÀû½ÄÀ» Áõ°¡½ÃŰ´Â ¿µÇâÀ» ÁÖ°í À§ Á¦¾à¿¡¼­´Â R º¯¼ö´Â °ªÀ» °¡Áú ¼ö ¾øÀ¸¹Ç·Î(R:nonegative) ´ç¿¬È÷ R Àº 0°ªÀ¸·Î ¹ÙÀεù µÇ¸ç À§ Á¦¾àÀ» ¸¸Á·½Ã۱â À§ÇÏ¿© Q º¯¼ö°¡ °ªÀ» °¡Áö°Ô µË´Ï´Ù.

Áï, À§ Á¦¾à¿¡¼­ °ªÀ» °¡Áö°Ô µÇ´Â º¯¼ö´Â

Q010101 = 130
Q010102 = 160
Q010103 = 120
.
.
.
ÀÌ·¯ÇÑ °á°ú¸¦ °¡Áö°Ô µË´Ï´Ù.

¶ÇÇÑ Q º¯¼ö¿Í ¿¬°üµÈ Á¦¾àÀÎ,

R1191: Q010101 - 10000O010101 <= 0
R1192: Q010102 - 10000O010102 <= 0
R1193: Q010103 - 10000O010103 <= 0
R1194: Q010104 - 10000O010104 <= 0
R1195: Q010105 - 10000O010105 <= 0
R1196: Q010201 - 10000O010201 <= 0

Á¦¾àÀ¸·Î ÀÎÇÏ¿© Q´Â ''0'' ¶Ç´Â ''<= 10000''ÀÇ °ªÀ» °¡Áö´Â semi-continuous variable ÇüŰ¡ µË´Ï´Ù.

°á·ÐÀûÀ¸·Î º» ¹®Á¦¿¡ ¿µÇâÀ» ÁÖ°Ô µÇ´Â º¯¼ö°¡ Q, O, R º¯¼ö µîÀÌ µÇ´Âµ¥, R º¯¼ö°¡ 0 °ªÀ» °¡Áú ¼ö ¹Û¿¡ ¾ø°í µû¶ó¼­ Q º¯¼ö°¡ °ªÀ» °¡Áö°Ô µÇ¸ç, Q º¯¼ö°¡ °ªÀ» °®±â À§Çؼ­´Â O º¯¼ö°¡ 1°ªÀ» °¡Á®¾ß µË´Ï´Ù. µû¶ó¼­ Objective Value´Â O º¯¼ö¿¡ ÀÇÇØ µµÃâµÈ °á°ú°ª ÀÔ´Ï´Ù.


CPLEX¿¡¼­´Â quaderatic constraint ¿Í objective¸¦ Áö¿øÇÕ´Ï´Ù. x^2 ¶Ç´Â x*y ÇüÅÂÀÇ expressionÀº »ç¿ë°¡´ÉÇÕ´Ï´Ù.
.lp ÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© Á¦¾àÀ» Àû¿ëÇÒ ¶§¿¡´Â,

(1) [x^2] >= 0
(2) [x*y] <= 0

°ú °°ÀÌ [], *, >=, <= ±âÈ£¸¦ »ç¿ëÇÏ½Ã¸é µË´Ï´Ù(''=='' »ç¿ëºÒ°¡).

¶ÇÇÑ .lpÆÄÀÏ¿¡¼­ »ç¿ëµÇ°í ÀÖ´Â M1234 Y1234 ¿Í °°Àº Ç¥ÇöÀº ''M1234Y1234''¿Í °°Àº »õ·Î¿î º¯¼ö·Î ÀνÄÇÏ°Ô µË´Ï´Ù.
µû¶ó¼­ ''M1234Y1234'' ¿Í °ü·ÃµÈ Á¦¾àÀ¸·Î ÀÎÇÏ¿© Q º¯¼ö°¡ °¡Áö´Â °ª°ú µ¿ÀÏÇÑ °ªÀ» °¡Áö°Ô µÇ¸ç, ÀÌ·¯ÇÑ Á¦¾àµéÀº
ÀÖÀ¸³ª ¾øÀ¸³ª º» ¹®Á¦¿¡ ÀüÇô ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. Á¦¾à½Ä(R1021~R1040, R1081~1100)ÀÌ ÀÖÀ» ¶§¿Í ¾øÀ» ¶§ ´Ù¸¥
°á°ú¸¦ ¾ò°Ô µÇ½Å´Ù°í Çϼ̴µ¥ ´Ù½Ã Çѹø Å×½ºÆ® ÇØ Áֽñ⠹ٶø´Ï´Ù.

1010101010_new.lp ÆÄÀÏÀ» ÀÐÀº ¼ö ¾ø´Â ÀÌÀ¯´Â º¯¼ö ¼±¾ð ºÎºÐÀÇ °¡·Î ¶óÀÎÀÌ ³Ê¹« ±æ¾î¼­ ÀÎ°Í °°½À´Ï´Ù. Áï Binaries, Genarals µîÀÇ
¼±¾ðºÎºÐÀ» ¼¼·Î·Î Á¤·ÄÇϽøé ÀÐÀ» ¼ö ¾ø´Â ¹®Á¦°¡ ÇØ°áµÉ °ÍÀÔ´Ï´Ù. ÆÄÀÏÀ» c++, ¶Ç´Â java µîÀ¸·Î ÀÐÀ» ¶§´Â ÇÑÁÙ ÇÑÁÙ ÀÐ°Ô µÇ´Âµ¥
°¡·Î ¹üÀ§¸¦ Àд ¹öÆÛ»çÀÌÁî°¡ Á¸ÀçÇϱ⠶§¹®¿¡ ÀÌ ¹üÀ§¸¦ ³Ñ¾î¼­¸é ÇØ´ç ¶óÀÎÀ» ÀÐÀ» ¼ö ¾ø°Ô µË´Ï´Ù. µû¶ó¼­ °¡·Î º¸´Ù´Â ¼¼·Î·Î
Á¤·ÄÀ» ÇÏ½Ã¸é ¶óÀÎÀ» Àдµ¥ ¹®Á¦°¡ ¾øÀ» °ÍÀÔ´Ï´Ù.

°¨»çÇÕ´Ï´Ù.

°ü·Ã±Û º¸±â
"[RE][RE][RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ"¿Í(°ú) °ü·ÃµÈ ±ÛÀÌ  5°Ç ÀÖ½À´Ï´Ù.
Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ °­¹«È« 2007-08-09
[RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ À̺¸Çå 2007-08-10
   [RE][RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ °­¹«È« 2007-08-10
    [RE][RE][RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ Àӽºó 2007-08-10
     [RE][RE][RE][RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ °­¹«È« 2007-08-13
      [RE][RE][RE][RE][RE]Á¦¾à½ÄÀÌ ºñ¼±ÇüÀ϶§ Cplex Áö¿ø¿©ºÎ Àӽºó 2007-08-16