Кіріспе

Математикалық оңтайландыру алгоритмі

Математикада конъюгатты градиент әдісі – белгілі бір сызықтық теңдеулер жүйесін сандық түрде шешуге арналған алгоритм, атап айтқанда, матрицасы оң жартылай белгілі болатын жүйелер үшін. Конъюгатты градиент әдісі көбінесе итеративтік алгоритм ретінде іске асырылады, ол тікелей есептеулермен немесе Чолески ыдырауы сияқты басқа тікелей әдістермен шешуге тым үлкен болатын сирек жүйелерге қолданылады. Үлкен сирек жүйелер көбінесе дербес дифференциалдық теңдеулерді немесе оңтайландыру мәселелерін сандық түрде шешу кезінде туындайды. Конъюгатты градиент әдісі энергияны азайту сияқты шектеусіз оңтайландыру мәселелерін шешу үшін де қолданылуы мүмкін. Бұл әдіс Магнус Хестенес пен Эдуард Стифельге жатқызылады, олар оны Z4 компьютерінде бағдарламалап, жан-жақты зерттеген. Биконъюгатты градиент әдісі симметриялық емес матрицалар үшін жалпылауды ұсынады. Әртүрлі сызықтық емес конъюгатты градиент әдістері сызықтық емес оңтайландыру мәселелерінің минимумдарын табуға бағытталған.

Қайта бастау

Біз, егер градиенттік төмен түсу әдісі қолданылса, есептелетінін атап өтеміз. Сол сияқты, егер орнатылса, онда да градиенттік төмен түсу әдісі арқылы есептелер еді, яғни конъюгат градиент қайталауларын қайта бастаудың қарапайым іске асырылуы ретінде пайдаланылуы мүмкін. Қалдық нормасы әдетте тоқтату критерийлері үшін қолданылады. Нақты арифметикада да, дөңгелектеу қателері болған жағдайда да, қалдық нормасы конвергенция табиғи түрде тоқтағанда дәлдік деңгейін кепілдендіреді. Керісінше, имплицитті қалдық амплитудасы дөңгелектеу қателері деңгейінен әлдеқайда төмендеп, сондықтан конвергенцияның тоқтауын анықтау үшін қолданыла алмайды.

Конвергенция қасиеттері

Конъюгатты градиент әдісін теориялық тұрғыдан тікелей әдіс ретінде қарастыруға болады, себебі дөңгелектеу қатесі болмаған жағдайда, ол шекті сандағы итерациялардан кейін нақты шешімді шығарады, бұл сан матрицаның өлшемінен аспайды. Бірақ іс жүзінде нақты шешімге жете алмаймыз, өйткені конъюгатты градиент әдісі тіпті кішкентай бұрмалауларға да сезімтал, мысалы, көптеген бағыттар іс жүзінде конъюгатты болмайды, себебі Крылов кеңістіктерін құру процесінің дегенеративті сипаты бар. Итеративтік әдіс ретінде, конъюгатты градиент әдісі нақты шешімге жуықтауды монотонды түрде (энергиялық нормада) жақсартады және салыстырмалы түрде аз (мәселенің көлеміне қарағанда) итерациядан кейін қажетті дәлдікке жете алады. Жақсарту әдетте сызықтық және оның жылдамдығы жүйелік матрицаның шартты санымен анықталады: шартты саны неғұрлым үлкен болса, жақсарту соғұрлым баяу болады. Егер шартты саны үлкен болса, бастапқы жүйені ауыстыру үшін алдын ала шарттау қолданылады, яғни -ты -мен алмастырады, мұндағы -ның мәні -дан кіші болады, қараңыз төменде.

Жергілікті оптималдық ең тік түсу әдісімен салыстырғанда

Бастапқы және алдын ала шартталған конъюгат градиент әдістерінде оларды жергілікті түрде оптималды ету үшін сызықтық іздеу және ең тік түсу әдістерін қолдану үшін ғана орнату қажет. Осылайша, "p" векторлары әрқашан "z" векторларымен сәйкес келеді, сондықтан "p" векторларын сақтау қажет емес. Осының нәтижесінде, осы ең тік түсу әдістерінің әрбір итерациясы конъюгат градиент әдістеріне қарағанда аз шығынды болады. Дегенмен, соңғылары (қатты) өзгермелі немесе SPD емес алдын ала шарттауыш қолданылмаса, одан тез жинақталады, жоғарыда көрсетілгендей.

Қосарланған градиент әдісі қос интегратор үшін оңтайлы кері байланыс контроллері ретінде

Конъюгатты градиент әдісін оптималды басқару теориясын қолдану арқылы да шығаруға болады. Бұл тәсілде конъюгатты градиент әдісі қос интегратор жүйесі үшін оңтайлы кері байланыс басқарушысы ретінде көрінеді, ал шамалар – өзгермелі кері байланыс коэффициенттері болып табылады.