Кіріспе
Математикалық оңтайландырудағы принцип. Математикалық оңтайландыру теориясында, дуалдық немесе дуалдық принцип – оптимизациялау мәселелерін екі тұрғыдан қарастыруға мүмкіндік беретін принцип, яғни бастапқы мәселе немесе дуалдық мәселе. Егер бастапқы мәселе – азайту мәселесі болса, онда дуалдық мәселе – максимизациялау мәселесі болады (және керісінше). Бастапқы (азайту) мәселенің кез келген мүмкін шешімі, дуалдық (максимизациялау) мәселенің кез келген мүмкін шешімінен кем болмайды. Сондықтан, бастапқы мәселенің шешімі – дуалдық мәселенің шешімінің жоғарғы шегі, ал дуалдық мәселенің шешімі – бастапқы мәселенің шешімінің төменгі шегі болып табылады. Бұл факт әлсіз дуалдық деп аталады. Жалпы жағдайда, бастапқы және дуалдық мәселелердің оңтайлы мәндері тең болуы міндетті емес. Олардың арасындағы айырмашылық – дуалдық алшақтық деп аталады. Дөңес оптимизациялау мәселелері үшін, дуалдық алшақтық шектеу талабы орындалған жағдайда нөлге тең болады. Бұл факт күшті дуалдық деп аталады.
In mathematical optimization theory, duality or the duality principle is the principle that optimization problems may be viewed from either of two perspectives, the primal problem or the dual problem. If the primal is a minimization problem then the dual is a maximization problem (and vice versa). Any feasible solution to the primal (minimization) problem is at least as large as any feasible solution to the dual (maximization) problem. Therefore, the solution to the primal is an upper bound to the solution of the dual, and the solution of the dual is a lower bound to the solution of the primal. This fact is called weak duality. In general, the optimal values of the primal and dual problems need not be equal. Their difference is called the duality gap. For convex optimization problems, the duality gap is zero under a constraint qualification condition. This fact is called strong duality.
Дуальдық алшақтық
Дуальдық алшақтық – кез келген бастапқы және дуальдық шешімдердің мәндері арасындағы айырмашылық. Егер оптималды дуальдық мән болса және оптималды бастапқы мән болса, онда дуальдық алшақтық тең болады. Бұл мән әрқашан 0-ден үлкен немесе тең болады (минимизациялау мәселелері үшін). Дуальдық алшақтық нөлге тең болса және тек қана мықты дуальдық орындалса. Әйтпесе, алшақтық қатаң оң болады және әлсіз дуальдық орындалады. Есептеулік оптимизацияда, тағы бір "дуальдық алшақтық" жиі хабарланады, ол кез келген дуальдық шешім мен бастапқы мәселенің мүмкін, бірақ оңтайлы емес итерациясының мәні арасындағы айырмашылықты білдіреді. Бұл баламалы "дуальдық алшақтық" бастапқы мәселенің ағымдағы мүмкін, бірақ оңтайлы емес итерациясының мәні мен дуальдық мәселенің мәні арасындағы айырмашылықты өлшейді; дуальдық мәселенің мәні, реттелілік шарттары орындалғанда, бастапқы мәселенің дөңгелектеуінің мәніне тең болады: Дөңгелектеу – бұл дөңгелек емес мүмкін жиынтықты оның жабық дөңгелек қабығымен және дөңгелек емес функцияны оның дөңгелек жабылуымен алмастыру арқылы туындайтын мәселе, яғни бастапқы мақсатты функцияның эпиграфы жабық дөңгелек қабық болатын функция.
Сызықтық жағдай
Сызықтық бағдарламалау мәселелері – мақсатты функциясы мен шектеулерінің барлығы сызықтық болатын оптимизация мәселелері. Бастапқы мәселеде мақсатты функция n айнымалының сызықтық комбинациясы болып табылады. m шектеу бар, олардың әрқайсысы n айнымалының сызықтық комбинациясына жоғарғы шек қояды. Мақсат – шектеулерді сақтай отырып, мақсатты функцияның мәнін максималдау. Шешім – мақсатты функцияның максималды мәніне жететін n мәннің векторы (тізімі). Дуальды мәселеде мақсатты функция – бастапқы мәселенің m шектеулеріндегі шектері болып табылатын m мәннің сызықтық комбинациясы. n дуальды шектеу бар, олардың әрқайсысы m дуальды айнымалының сызықтық комбинациясына төменгі шек қояды.
Бастапқы проблема мен қос проблема арасындағы байланыс
Сызықтық жағдайда, бастапқы мәселеде, барлық шектеулерді қанағаттандыратын әрбір жақын оңтайлы нүктеден мақсаттық функцияны арттыратын бағыт немесе бағыттардың кеңістігі табылады. Мұндай бағытта жылжу кандидаттық шешім мен бір немесе бірнеше шектеу арасындағы бос кеңістікті азайтады. Кандидаттық шешімнің орындалмаған мәні – бұл бір немесе бірнеше шектеулерді бұзу. Дуальды мәселеде, дуальдық вектор бастапқы мәселедегі шектеулердің орналасуын анықтайтын шектеулерге көбейтіледі. Дуальды мәселедегі дуальдық векторын өзгерту бастапқы мәселедегі жоғарғы шектерді жаңартумен тең. Ең төменгі жоғарғы шек ізделеді. Яғни, дуальдық вектор шектеулердің кандидаттық орналасуы мен нақты оңтайлы арасындағы бос кеңістікті азайту үшін кемітіледі. Дуальдық вектордың орындалмаған мәні тым төмен болады. Ол бір немесе бірнеше шектеулердің кандидаттық орналасуын нақты оңтайлыны жоққа шығаратын жағдайға келтіреді. Бұл түсінік Сызықтық бағдарламалау: Дуальділік теңдеулері арқылы формалды түрде бейнеленеді.
Сызықтық емес кейс
Сызықтық емес бағдарламалауда шектеулер міндетті түрде сызықтық болмайды. Дегенмен, көптеген қағидалар сақталады. Сызықтық емес мәселенің жаһандық максимумын оңай анықтау үшін, мәселенің формулировкасы көбінесе функциялардың дөңес болуын және ықшам төменгі деңгейлі жиынға ие болуын талап етеді. Осының маңызы – Каруш-Кун-Такер шарттарында. Олар сызықтық емес бағдарламалау мәселелерінің жергілікті оптимумдарын анықтау үшін қажетті шарттарды ұсынады. Оңтайлы шешімге бағытты анықтау мүмкін болуы үшін қосымша шарттар (шектеу талаптары) да қажет. Оңтайлы шешім – бұл жергілікті оптимум, бірақ жаһандық оптимум болуы мүмкін емес.
Тарих
Джордж Данцигтің айтуынша, сызықтық оңтайландырудың дуалдық теоремасын Джон фон Нейман Данциг сызықтық бағдарламалау мәселесін ұсынғаннан кейін бірден болжаған. Фон Нейман өзінің ойын теориясынан алынған ақпаратты қолданғанын айтты және екі ойыншыдан тұратын, қорытындысы нөлге тең матрицалық ойын сызықтық бағдарламалауға эквивалентті екенін болжады. Қатаң дәлелдемелерді алғаш рет 1948 жылы Альберт В. Таккер және оның тобы жариялады. (Данцигтің Неринг пен Таккерге арналған алғы сөзі, 1993)
Қолданбалар
Қолдау векторлық машиналарда (SVM), SVM-нің бастапқы мәселесін дуалды мәселе ретінде формулирлеу Kernel тәсілін қолдануға мүмкіндік береді, бірақ бұл тәсіл тарихи жағдайларда көбірек уақытты қажет етеді.
Мақалалар
Линейлік бағдарламалаудағы дуалдық Гари Д. Кнотт