Matematiksel optimizasyon problemlerinde gradyan yöntemlerinin gözden geçirilmesi. Gradyan yöntemleri

Gradyan yöntemleri

Gradyan kısıtlamasız optimizasyon yöntemleri, amaç fonksiyonunun yalnızca ilk türevlerini kullanır ve her adımda doğrusal yaklaşım yöntemleridir; her adımdaki amaç fonksiyonu, geçerli noktadaki grafiğine teğet bir hiperdüzlem ile değiştirilir.

Gradyan yöntemlerinin k. aşamasında Xk noktasından Xk+1 noktasına geçiş şu bağıntı ile tanımlanmaktadır:

burada k adım büyüklüğüdür, k ise Xk+1-Xk yönündeki vektördür.

En Dik İniş Yöntemleri

Bu yöntem ilk olarak 18. yüzyılda O. Cauchy tarafından düşünülmüş ve uygulanmıştır. Fikri basittir: f(X) amaç fonksiyonunun herhangi bir noktadaki gradyanı, fonksiyonun değerindeki en büyük artışın yönünde bir vektördür. Sonuç olarak, antigradyan fonksiyondaki en büyük azalmaya doğru yönlendirilecek ve en dik iniş yönü olacaktır. Antigradyan (ve gradyan), X noktasındaki f(X) düz yüzeyine diktir. Eğer yönü (1.2)'de tanıtırsak

o zaman bu, Xk noktasındaki en dik inişin yönü olacaktır.

Xk'den Xk+1'e geçiş formülünü elde ederiz:

Antigradyan yalnızca inişin yönünü verir, adımın büyüklüğünü vermez. Genel olarak bir adım minimum puanı vermez, dolayısıyla iniş prosedürünün birkaç kez uygulanması gerekir. Minimum noktada tüm gradyan bileşenleri sıfıra eşittir.

Tüm gradyan yöntemleri belirtilen fikri kullanır ve teknik ayrıntılar açısından birbirinden farklıdır: analitik bir formül veya sonlu fark yaklaşımı kullanılarak türevlerin hesaplanması; adım boyutu sabit olabilir, bazı kurallara göre değişebilir veya antigradyan yönde tek boyutlu optimizasyon yöntemleri uygulandıktan sonra seçilebilir vb. ve benzeri.

Detaylara girmeyeceğiz çünkü... En dik iniş yöntemi genellikle ciddi bir optimizasyon prosedürü olarak önerilmez.

Bu yöntemin dezavantajlarından biri de semer noktası da dahil olmak üzere herhangi bir sabit noktaya yakınsaması ve çözüm olamamasıdır.

Ancak en önemli şey, genel durumda en dik inişin çok yavaş bir şekilde yakınlaşmasıdır. Mesele şu ki, iniş yerel anlamda “en hızlı”. Arama hiperuzayı güçlü bir şekilde uzatılmışsa ("dağ geçidi"), o zaman antigradyan neredeyse dik olarak "dağ geçidinin" tabanına yönlendirilir. Minimuma ulaşmak için en iyi yön. Bu anlamda İngilizce "en dik iniş" teriminin doğrudan çevirisi, yani. en dik yokuş boyunca iniş, Rus dili uzmanlık literatüründe benimsenen "en hızlı" teriminden ziyade durumla daha tutarlıdır. Bu durumda çıkış yollarından biri ikinci kısmi türevlerin sağladığı bilgiyi kullanmaktır. Başka bir çıkış yolu da değişkenlerin ölçeklerini değiştirmektir.

doğrusal yaklaşım türev gradyanı

Fletcher-Reeves eşlenik gradyan yöntemi

Eşlenik gradyan yönteminde, en dik inişin mevcut yönü ile önceki arama yönlerinin doğrusal kombinasyonları olan bir arama yönleri dizisi oluşturulur;

Ayrıca katsayılar, arama yönlerini eşlenik hale getirecek şekilde seçilir. Kanıtlanmıştır ki

bu da hızlı ve etkili bir optimizasyon algoritması oluşturmanıza olanak tanıyan çok değerli bir sonuçtur.

Fletcher-Reeves algoritması

1. X0'da hesaplanır.

2. K. adımda, yönde tek boyutlu arama kullanılarak Xk+1 noktasını belirleyen minimum f(X) bulunur.

  • 3. f(Xk+1) ile hesaplanır.
  • 4. Yön ilişkiden belirlenir:
  • 5. (n+1)'inci yinelemeden sonra (yani k=n olduğunda), yeniden başlatma yapılır: X0=Xn+1 varsayılır ve 1. adıma geçiş gerçekleştirilir.
  • 6. Algoritma şu durumlarda durur:

burada keyfi bir sabit var.

Fletcher-Reeves algoritmasının avantajı, Newton yöntemlerinde kullanılan matrislere ihtiyaç duymadığı için matris ters çevirme gerektirmemesi ve bilgisayar belleğinden tasarruf sağlaması, ancak aynı zamanda neredeyse yarı Newton algoritmaları kadar verimli olmasıdır. Çünkü arama yönleri karşılıklı olarak eşlenik ise, ikinci dereceden fonksiyon n'den fazla olmayan adımlarla en aza indirilecektir. Genel durumda, sonucu almanızı sağlayan yeniden başlatma kullanılır.

Fletcher-Reeves algoritması tek boyutlu aramanın hassasiyetine duyarlı olduğundan oluşabilecek yuvarlama hatalarını ortadan kaldırmak için kullanılması gerekir. Ek olarak, Hessian'ın koşulsuz hale geldiği durumlarda algoritma başarısız olabilir. Uygulama, algoritmanın neredeyse her zaman sonuç ürettiğini göstermesine rağmen, algoritmanın her zaman ve her yerde yakınsama garantisi yoktur.

Newton yöntemleri

En dik inişe karşılık gelen arama yönü, amaç fonksiyonunun doğrusal bir yaklaşımıyla ilişkilidir. İkinci türevleri kullanan yöntemler, amaç fonksiyonunun ikinci dereceden yaklaşımından doğmuştur, yani, fonksiyonu bir Taylor serisinde genişletirken, üçüncü ve daha yüksek dereceli terimler atılır.

Hessian matrisi nerede.

Sağ tarafın minimumu (varsa), ikinci dereceden formun minimumuyla aynı yerde elde edilir. Arama yönünü belirlemek için formülü yazalım:

Minimum seviyeye ulaşıldı

Arama yönünün bu ilişkiden belirlendiği bir optimizasyon algoritmasına Newton yöntemi, yönüne ise Newton yönü adı verilir.

İkinci dereceden türevlerin pozitif matrisiyle keyfi bir ikinci dereceden fonksiyonun minimumunu bulma problemlerinde, Newton yöntemi, başlangıç ​​​​noktasının seçimine bakılmaksızın bir yinelemede bir çözüm verir.

Newton yöntemlerinin sınıflandırılması

Newton'un yönteminin kendisi, ikinci dereceden bir fonksiyonu optimize etmek için Newton yönünü bir kez uygulamaktan oluşur. Eğer fonksiyon ikinci dereceden değilse aşağıdaki teorem doğrudur.

Teorem 1.4. Minimum X* noktasında genel formdaki doğrusal olmayan bir f fonksiyonunun Hessian matrisi pozitif tanımlı ise, başlangıç ​​noktası X*'a yeterince yakın seçilirse ve adım uzunlukları doğru seçilirse, bu durumda Newton'un yöntemi ikinci dereceden bir denklemle X*'a yakınsar. oran.

Newton'un yöntemi bir referans yöntem olarak kabul edilir; geliştirilen tüm optimizasyon prosedürleri onunla karşılaştırılır. Bununla birlikte, Newton'un yöntemi yalnızca pozitif tanımlı ve iyi koşullandırılmış bir Hessian matrisi için etkilidir (determinantının sıfırdan önemli ölçüde büyük olması veya daha doğrusu, en büyük ve en küçük özdeğerlerin oranının bire yakın olması gerekir). Bu eksikliğin üstesinden gelmek için, mümkün olduğunda Newton yönlerini kullanan ve yalnızca gerektiğinde onlardan sapan, değiştirilmiş Newton yöntemleri kullanılır.

Newton yöntemindeki değişikliklerin genel prensibi şu şekildedir: her yinelemede, ilk olarak "ilişkili" belirli bir pozitif tanımlı matris oluşturulur ve ardından aşağıdaki formül kullanılarak hesaplanır.

Pozitif tanımlı olduğundan, o zaman - zorunlu olarak iniş yönü olacaktır. Oluşturma prosedürü, eğer pozitif tanımlı ise Hessian matrisiyle çakışacak şekilde düzenlenmiştir. Bu prosedürler belirli matris ayrıştırmalarına dayanmaktadır.

Pratik olarak Newton'un yönteminden daha düşük hıza sahip olmayan başka bir yöntem grubu, Hessian matrisinin sonlu farklar kullanılarak yaklaşıklaştırılmasına dayanmaktadır, çünkü Optimizasyon için türevlerin tam değerlerini kullanmak gerekli değildir. Bu yöntemler, türevlerin analitik hesaplanmasının zor veya imkansız olduğu durumlarda faydalıdır. Bu tür yöntemlere ayrık Newton yöntemleri denir.

Newton tipi yöntemlerin etkinliğinin anahtarı, Hessian matrisinde yer alan küçültülmüş fonksiyonun eğriliği hakkındaki bilgileri dikkate almak ve amaç fonksiyonunun yerel olarak doğru ikinci dereceden modellerinin oluşturulmasına izin vermektir. Ancak iniş yinelemeleri sırasında gradyandaki değişikliği gözlemlemeye dayalı olarak bir fonksiyonun eğriliği hakkında bilgi toplamak ve biriktirmek mümkündür.

Doğrusal olmayan bir fonksiyonun eğriliğini, Hessian matrisini açıkça oluşturmadan yaklaşık olarak tahmin etme olasılığına dayanan karşılık gelen yöntemlere yarı-Newton yöntemleri denir.

Newton tipi (yarı-Newton tipi dahil) bir optimizasyon prosedürü oluştururken, bir eyer noktasının ortaya çıkma olasılığını hesaba katmak gerektiğini unutmayın. Bu durumda, en iyi arama yönünün vektörü her zaman eyer noktasına doğru yönlendirilecek, bunun yerine aşağıya doğru hareket edecektir.

Newton-Raphson yöntemi

Bu yöntem, ikinci dereceden olmayan fonksiyonları optimize ederken Newton yönünün tekrar tekrar kullanılmasından oluşur.

Çok boyutlu optimizasyon için temel yinelemeli formül

Bu yöntemde ilişkiden optimizasyon yönü seçilirken kullanılır

Gerçek adım uzunluğu normalleştirilmemiş Newton yönünde gizlidir.

Bu yöntem, amaç fonksiyonunun geçerli noktadaki değerini gerektirmediğinden bazen dolaylı veya analitik optimizasyon yöntemi olarak da adlandırılır. Tek bir hesaplamada ikinci dereceden bir fonksiyonun minimumunu belirleme yeteneği, ilk bakışta son derece çekici görünüyor. Ancak bu "tek hesaplama" ciddi maliyetler gerektirir. Öncelikle birinci dereceden n kısmi türevi ve ikinci dereceden n(n+1)/2 -'yi hesaplamak gerekir. Ayrıca Hessian matrisinin de ters çevrilmesi gerekir. Bu yaklaşık n3 hesaplamalı işlem gerektirir. Aynı maliyetle eşlenik yön yöntemleri veya eşlenik gradyan yöntemleri yaklaşık n adım alabilir; neredeyse aynı sonucu elde edin. Dolayısıyla Newton-Raphson yönteminin yinelenmesi ikinci dereceden bir fonksiyon durumunda avantaj sağlamaz.

Eğer fonksiyon ikinci dereceden değilse, o zaman

  • - genel anlamda başlangıç ​​yönü artık gerçek minimum noktayı göstermez, bu da yinelemelerin birkaç kez tekrarlanması gerektiği anlamına gelir;
  • - birim uzunluktaki bir adım, amaç fonksiyonunda daha kötü bir değere sahip bir noktaya yol açabilir ve örneğin Hessian pozitif tanımlı değilse arama yanlış yön verebilir;
  • - Hessian'ın durumu kötüleşebilir, bu da onu tersine çevirmeyi imkansız hale getirebilir, ör. Bir sonraki yinelemenin yönünü belirlemek.

Stratejinin kendisi, aramanın hangi durağan noktaya (minimum, maksimum, eyer noktası) yaklaştığını ayırt etmez ve fonksiyonun artıp artmadığını takip etmek için kullanılabilecek amaç fonksiyonu değerlerinin hesaplamaları yapılmaz. Bu, her şeyin, aramanın başlangıç ​​noktasının çekim bölgesinde hangi sabit nokta olduğuna bağlı olduğu anlamına gelir. Newton-Raphson stratejisi herhangi bir değişiklik yapılmadan tek başına nadiren kullanılır.

Pearson yöntemleri

Pearson, ikinci türevleri açıkça hesaplamadan ters Hessian'a yaklaşan birkaç yöntem önerdi; antigradyan yönündeki değişiklikleri gözlemleyerek. Bu durumda eşlenik yönler elde edilir. Bu algoritmalar yalnızca ayrıntılarda farklılık gösterir. Uygulamalı alanlarda en yaygın kullanılanları sunuyoruz.

Pearson Algoritması No.2.

Bu algoritmada, ters Hessian, her adımda aşağıdaki formül kullanılarak hesaplanan Hk matrisiyle yaklaşık olarak hesaplanır.

Başlangıç ​​matrisi H0 olarak keyfi bir pozitif tanımlı simetrik matris seçilir.

Bu Pearson algoritması genellikle Hk matrisinin koşulsuz hale geldiği durumlara yol açar, yani matrisin determinantı sıfıra yakınken pozitif tanımlı ve pozitif olmayan tanımlı arasında salınmaya başlar. Bu durumdan kaçınmak için matrisi her n adımda bir H0'a eşitleyerek yeniden tanımlamak gerekir.

Pearson Algoritması No.3.

Bu algoritmada Hk+1 matrisi aşağıdaki formülden belirlenir:

Hk+1 = Hk+

Algoritma tarafından oluşturulan iniş yörüngesi Davidon-Fletcher-Powell algoritmasının davranışına benzer, ancak adımlar biraz daha kısadır. Pearson ayrıca bu algoritmanın döngüsel matris sıfırlamalı bir varyasyonunu da önerdi.

Projektif Newton-Raphson algoritması

Pearson, matrisin ilişkiden hesaplandığı bir algoritma fikrini önerdi

H0=R0, burada R0 matrisi önceki algoritmalardaki başlangıç ​​matrisleriyle aynıdır.

k, bağımsız değişken sayısı n'nin katı olduğunda, Hk matrisi, toplam olarak hesaplanan Rk+1 matrisiyle değiştirilir.

Hk(f(Xk+1) - f(Xk)) miktarı, önceki adımlarda tüm gradyan artış vektörlerine dik olan gradyan artış vektörünün (f(Xk+1) - f(Xk)) izdüşümüdür. Her n adımdan sonra, Rk, ters Hessian H-1(Xk)'nin bir yaklaşımıdır, dolayısıyla aslında (yaklaşık) bir Newton araştırması gerçekleştirilir.

Davidon-Fletcher-Powell yöntemi

Bu yöntemin başka isimleri de vardır; değişken metrik yöntem, yarı-Newton yöntemi, çünkü bu yaklaşımların her ikisini de kullanıyor.

Davidon-Fletcher-Powell (DFP) yöntemi Newton yönlerinin kullanımına dayanır, ancak her adımda ters Hessian'ın hesaplanmasını gerektirmez.

k adımındaki arama yönü yöndür

burada Hi her adımda güncellenen pozitif tanımlı simetrik bir matristir ve limitte ters Hessian'a eşit olur. Kimlik matrisi genellikle başlangıç ​​matrisi H olarak seçilir. Yinelemeli DFT prosedürü aşağıdaki gibi temsil edilebilir:

  • 1. k adımında bir Xk noktası ve pozitif tanımlı bir Hk matrisi vardır.
  • 2. Yeni arama yönü olarak seçin

3. Yön boyunca tek boyutlu bir arama (genellikle kübik enterpolasyon), fonksiyonu en aza indiren k'yi belirler.

4. Güvenir.

5. Güvenir.

6. Kararlıdır. Vk veya yeterince küçükse prosedür sona erer.

  • 7. Uk = f(Xk+1) - f(Xk) olduğu varsayılmaktadır.
  • 8. Matrix Hk aşağıdaki formüle göre güncellenir

9. k'yi birer artırın ve 2. adıma dönün.

Yöntem, gradyan hesaplamalarındaki hatanın küçük olması ve Hk matrisinin koşulsuz hale gelmemesi durumunda pratikte etkilidir.

Ak matrisi Hk'nin G-1'e yakınlaşmasını sağlar, Bk matrisi ise Hk+1'in tüm aşamalarda pozitif kesinliğini sağlar ve H0'ı limitte hariç tutar.

İkinci dereceden bir fonksiyon durumunda

onlar. DFP algoritması eşlenik yönleri kullanır.

Bu nedenle, DFT yöntemi hem Newton yaklaşımının fikirlerini hem de eşlenik yönlerin özelliklerini kullanır ve ikinci dereceden fonksiyonu en aza indirirken, n'den fazla yinelemede yakınsamaz. Optimize edilmiş fonksiyon ikinci dereceden bir fonksiyona yakın bir forma sahipse, o zaman DFT yöntemi, G-1'e (Newton yöntemi) iyi yaklaşımı nedeniyle etkilidir. Amaç fonksiyonunun genel bir formu varsa, o zaman DFT yöntemi eşlenik yönlerin kullanılması nedeniyle etkilidir.

Gradyan optimizasyon yöntemleri

Optimizasyon kriterlerini ve kısıtlamalarını tanımlayan, doğrusal olmayan veya hesaplanması zor ilişkiler içeren optimizasyon problemleri, doğrusal olmayan programlamanın konusudur. Kural olarak, doğrusal olmayan programlama problemlerinin çözümleri yalnızca bilgisayar teknolojisini kullanan sayısal yöntemlerle bulunabilir. Bunlar arasında en sık kullanılanlar gradyan yöntemleri (gevşeme, gradyan, en dik iniş ve çıkış yöntemleri), deterministik aramanın gradyan içermeyen yöntemleri (tarama yöntemleri, simpleks vb.) ve rastgele arama yöntemleridir. Tüm bu yöntemler, optimumun sayısal olarak belirlenmesinde kullanılır ve özel literatürde geniş ölçüde yer alır.

Genel olarak optimizasyon kriterinin değeri R bir fonksiyon olarak düşünülebilir R(xb xx..., xn), n boyutlu uzayda tanımlıdır. N boyutlu uzayın görsel grafik temsili olmadığından, iki boyutlu uzay durumunu kullanacağız.

Eğer R(1 pound = 0.45 kg x 2) Bölgede sürekli D, daha sonra optimal nokta civarında M°(xi°, x g°) belirli bir düzlemde kapalı bir çizgi çizmek mümkündür; bu çizgi boyunca değer R= sabit Eşit seviyeli çizgiler olarak adlandırılan bu tür çizgilerin çoğu, en uygun noktanın etrafına çizilebilir (adıma bağlı olarak).

Doğrusal olmayan programlama problemlerini çözmek için kullanılan yöntemler arasında, optimize edilen fonksiyonun yönüne göre türevin analizine dayalı çözüm bulma yöntemleri önemli bir yer tutmaktadır. Uzaydaki her noktada, çeşitli değişkenlerden oluşan bir skaler fonksiyon iyi tanımlanmış değerler alıyorsa, o zaman bu durumda bir skaler alanla (sıcaklık alanı, basınç alanı, yoğunluk alanı vb.) ilgileniyoruz. Vektör alanı (kuvvetler alanı, hızlar vb.) benzer şekilde tanımlanır. İzotermler, izobarlar, izokronlar vb. - bunların hepsi eşit seviyelerde çizgiler (yüzeyler), fonksiyonun eşit değerleri (sıcaklık, basınç, hacim vb.). Bir fonksiyonun değeri uzayda noktadan noktaya değiştiği için fonksiyonun uzaydaki değişim hızının yani yöndeki türevinin belirlenmesi gerekli hale gelir.

Gradyan kavramı, mühendislik hesaplamalarında doğrusal olmayan fonksiyonların ekstremumlarını bulurken yaygın olarak kullanılır. Gradyan yöntemleri sayısal arama yöntemleridir. Bunlar evrenseldir ve özellikle kısıtlamalarla doğrusal olmayan fonksiyonların ekstrem değerlerinin arandığı durumlarda ve analitik fonksiyonun tamamen bilinmediği durumlarda etkilidir. Bu yöntemlerin özü, gradyan boyunca hareket ederek (arama yaparken) hedef fonksiyonunun ekstremumunu sağlayan değişkenlerin değerlerini belirlemektir. maksimum) veya ters yönde (dakika).Çeşitli gradyan yöntemleri, optimuma doğru hareketi belirleme açısından birbirinden farklılık gösterir. Sonuç olarak, eğer çizgiler eşit seviyedeyse R(xu x i) bağımlılığı grafiksel olarak karakterize edin R(x\jc?), daha sonra en uygun noktanın aranması farklı şekillerde yapılabilir. Örneğin, bir düzlem üzerine bir ağ çizin x\, xr değerleri belirten Rızgara düğümlerinde (Şekil 2.13).

Daha sonra düğüm değerlerinden uç değeri seçebilirsiniz. Bu yol rasyonel değildir, çok sayıda hesaplamayla ilişkilidir ve adıma bağlı olduğundan doğruluğu düşüktür ve optimum düğümler arasında olabilir.

Sayısal yöntemler

Matematiksel modeller, üzerinde çalışılan veya işlem deneyleri (veri tabloları, grafikler) sonucunda elde edilen süreçlerin teorik analizine dayanarak derlenen ilişkileri içerir. Her durumda, matematiksel model gerçek süreci yalnızca yaklaşık olarak tanımlar. Bu nedenle modelin doğruluğu ve yeterliliği konusu en önemli husustur. Denklemlerin çözümü sırasında da yaklaşıklık ihtiyacı ortaya çıkar. Yakın zamana kadar doğrusal olmayan diferansiyel denklemler veya kısmi diferansiyel denklemler içeren modeller analitik yöntemlerle çözülemiyordu. Aynı durum çok sayıda gökyüzü integrali sınıfı için de geçerlidir. Ancak sayısal analiz yöntemlerinin gelişmesi, matematiksel modellerin analiz olanaklarının sınırlarının sonsuza kadar genişletilmesini mümkün kılmış, özellikle bilgisayarların kullanılmasıyla bu mümkün olmuştur.

Sayısal yöntemler, fonksiyonlara yaklaşmak, diferansiyel denklemleri ve sistemlerini çözmek, integral almak ve türev almak ve sayısal ifadeleri hesaplamak için kullanılır.

Fonksiyon analitik olarak tablo veya grafik olarak belirtilebilir. Araştırma yaparken ortak bir görev, belirtilen koşulları karşılayan analitik bir ifadeyle bir fonksiyona yaklaşmaktır. Bu dört sorunu çözer:

Düğüm noktalarının seçilmesi, bağımsız değişkenlerin belirli değerlerinde (seviyelerinde) deneyler yapılması (bir faktörü değiştirme adımı yanlış seçilirse, ya incelenen sürecin karakteristik bir özelliğini "özleyeceğiz" ya da prosedürü uzatacağız ve bir model aramanın karmaşıklığını arttırmak);

Belirli bir problemin içeriğine bağlı olarak polinomlar, ampirik formüller biçiminde yaklaşık fonksiyonların seçimi (yaklaşım fonksiyonlarını mümkün olduğunca basitleştirmeye çalışılmalıdır);

Yaklaşık fonksiyonların parametrelerinin bulunduğu anlaşma kriterlerinin seçimi ve kullanımı;

Bir yaklaşım fonksiyonunun seçimi için belirli bir doğruluk gerekliliklerinin karşılanması.

Fonksiyonlara polinomlarla yaklaşma problemlerinde üç sınıf kullanılır

Kuvvet fonksiyonlarının doğrusal birleşimi (Taylor serileri, Lagrange, Newton polinomları, vb.);

Fonksiyonların kombinasyonu soz ph, onlarla(Fourier serisi);

Fonksiyonların oluşturduğu polinom tecrübe(-a, d).

Yaklaşım fonksiyonunu bulurken deneysel verilerle uyum için çeşitli kriterler kullanılır.

Gradyan yöntemiyle optimizasyon yapılırken, incelenen nesnenin optimumu, çıktı değişkeninin en hızlı artışı (azalışı) yönünde aranır, yani. gradyan yönünde. Ancak eğime doğru bir adım atmadan önce onu hesaplamanız gerekir. Gradyan mevcut bir model kullanılarak hesaplanabilir

dinamik gradyan polinomunun modellenmesi

i'inci faktöre göre kısmi türev nerede;

i, j, k - faktör uzayının koordinat eksenleri yönünde veya koordinat eksenleri yönünde n deneme hareketinin sonuçlarına göre birim vektörler.

İstatistiksel bir sürecin matematiksel modeli doğrusal bir polinom biçimindeyse, regresyon katsayıları b i, y = f(X) fonksiyonunun x i kuvvetleri cinsinden Taylor serisine genişletilmesinin kısmi türevleridir, o zaman optimum belirli bir adım h i ile gradyan yönünde aranır:

pkfv n(H)= ve 1 r 1 +ve 2 r 2 +…+ve t r t

Yön her adımdan sonra ayarlanır.

Gradyan yöntemi, sayısız modifikasyonuyla birlikte, incelenen nesnelerin optimumunu aramak için yaygın ve etkili bir yöntemdir. Gradyan yönteminin modifikasyonlarından birini - dik tırmanma yöntemini ele alalım.

Dik tırmanış yöntemi veya Box-Wilson yöntemi, doğrusal bir matematiksel model elde etmenin bir yolu olarak üç yöntemin (Gauss-Seidel yöntemi, gradyan yöntemi ve tam (veya kesirli) faktöriyel deney yöntemi) avantajlarını birleştirir. . Dik tırmanış yönteminin görevi, çıkış değişkeninin en hızlı artışı (veya azalması) yönünde, yani y(X) eğimi boyunca adım adım hareket gerçekleştirmektir. Gradyan yönteminden farklı olarak, yön, her bir sonraki adımdan sonra değil, Gauss-Seidel yönteminde yapıldığı gibi, belirli bir yönde belirli bir noktada amaç fonksiyonunun belirli bir uç noktasına ulaşıldığında ayarlanır. Belirli bir ekstremum noktasında yeni bir faktöriyel deney yapılır, matematiksel bir model belirlenir ve tekrar dik bir yükseliş gerçekleştirilir. Belirtilen yöntemi kullanarak optimuma doğru ilerleme sürecinde, ara arama sonuçlarının istatistiksel analizi düzenli olarak yapılır. Regresyon denklemindeki ikinci dereceden etkiler anlamlı hale geldiğinde arama durdurulur. Bu, optimum bölgeye ulaşıldığı anlamına gelir.

İki değişkenli bir fonksiyon örneğini kullanarak gradyan yöntemlerinin kullanım prensibini açıklayalım.

iki ek koşula tabidir:

Bu prensip (değiştirilmeden) herhangi bir sayıda değişkene ve ek koşullara uygulanabilir. x 1 , x 2 düzlemini düşünün (Şekil 1). Formül (8)'e göre her nokta belirli bir F değerine karşılık gelir. Şekil 1'de bu düzleme ait F = const çizgileri, F'nin minimum olduğu M* noktasını çevreleyen kapalı eğrilerle temsil edilir. İlk anda x 1 ve x 2 değerlerinin M 0 noktasına karşılık gelmesine izin verin. Hesaplama döngüsü bir dizi deneme adımıyla başlar. Öncelikle x 1 değerine küçük bir artış verilir; bu sırada x 2'nin değeri değişmez. Daha sonra F'nin değerinde ortaya çıkan artış belirlenir ve bu, kısmi türevin değeriyle orantılı olarak kabul edilebilir.

(eğer değer her zaman aynıysa).

Kısmi türevlerin (10) ve (11) tanımı, koordinatları olan ve F değerinin gradyanı olarak adlandırılan ve aşağıdaki şekilde gösterilen bir vektörün bulunduğu anlamına gelir:

Bu vektörün yönünün F değerindeki en dik artış yönüne denk geldiği bilinmektedir. Bunun tersi yön ise “en kısa iniş” yani F değerindeki en dik düşüş yönüdür.

Degradenin bileşenleri bulunduktan sonra deneme hareketleri durdurulur ve degrade yönünün tersi yönde çalışma adımları gerçekleştirilir ve grad F vektörünün mutlak değeri ne kadar büyük olursa adım boyutu da o kadar büyük olur. çalışma adımlarının değerleri kısmi türevlerin önceden elde edilen değerleriyle orantılı ise karşılanır:

burada b pozitif bir sabittir.

Her çalışma adımından sonra F değerindeki artış tahmin edilir, negatif çıkarsa hareket doğru yönde gerçekleşir ve aynı M 0 M 1 yönünde ilerlemeniz gerekir. M 1 noktasında ölçüm sonucu bunu gösteriyorsa çalışma hareketleri durur ve yeni bir dizi deneme hareketi başlar. Bu durumda, gradF gradyanı yeni M 1 noktasında belirlenir, ardından çalışma hareketi yeni bulunan en dik iniş yönü boyunca, yani M 1 M 2 çizgisi boyunca vb. devam eder. Bu yönteme en dik iniş/en dik çıkış yöntemi denir.

Sistem minimuma yakın olduğunda, bu küçük bir değerle gösterilir.

Gradyan yöntemi adı verilen daha "temkinli" bir arama yöntemine geçiş var. En dik iniş yönteminden farkı, eğim derecesinin belirlenmesinden sonra yalnızca bir çalışma adımının atılması ve ardından yeni bir noktada bir dizi deneme hareketinin yeniden başlamasıdır. Bu arama yöntemi, en dik iniş yöntemiyle karşılaştırıldığında minimumun daha doğru belirlenmesini sağlarken, ikincisi minimuma hızla yaklaşmanıza olanak tanır. Arama sırasında M noktası kabul edilebilir bölgenin sınırına ulaşırsa ve M 1, M 2 büyüklüklerinden en az birinin işareti değişirse, yöntem değişir ve M noktası bölgenin sınırı boyunca hareket etmeye başlar.

Dik tırmanış yönteminin etkinliği, değişkenlerin ölçeğinin seçimine ve tepki yüzeyinin türüne bağlıdır. Küresel konturlara sahip yüzey, optimum seviyeye kadar hızlı bir daralma sağlar.

Dik tırmanış yönteminin dezavantajları şunlardır:

1. Ekstrapolasyonun sınırlamaları. Gradyan boyunca hareket ederek, amaç fonksiyonunun kısmi türevlerinin karşılık gelen değişkenlere göre ekstrapolasyonuna güveniriz. Ancak yanıt yüzeyinin şekli değişebilir ve arama yönünün değiştirilmesi gerekir. Başka bir deyişle düzlemdeki hareket sürekli olamaz.

2. Küresel optimumu bulmanın zorluğu. Yöntem yalnızca yerel optimumların bulunmasına uygulanabilir.

Gradyan vektörü, belirli bir noktada fonksiyondaki en hızlı artış yönünde yönlendirilir. -grad(/(x)) gradyanının karşısındaki vektöre antigradyan denir ve fonksiyondaki en hızlı azalma yönünde yönlendirilir. Minimum noktada fonksiyonun gradyanı sıfırdır. Gradyan yöntemleri olarak da adlandırılan birinci dereceden yöntemler, gradyanların özelliklerine dayanır. Ek bilgi yoksa, o zaman x (0 > başlangıç ​​noktasından antigradyan yönünde uzanan x (1) noktasına gitmek daha iyidir - fonksiyonun en hızlı azalması. Antigradyan seçimi -grad(/( x (^)) noktasında iniş yönü olarak x(k formun yinelemeli bir sürecini elde ederiz

Koordinat formunda bu süreç şu şekilde yazılır:

Yinelemeli süreci durdurmanın bir kriteri olarak, (10.2) koşulunu veya küçük bir gradyan koşulunun yerine getirilmesini kullanabilirsiniz.

Belirtilen koşulların eşzamanlı olarak yerine getirilmesinden oluşan birleşik bir kriter de mümkündür.

Gradyan yöntemleri adım boyutunu seçme şekli bakımından birbirinden farklılık gösterir A Sabit adımlı yöntemde tüm yinelemeler için belirli bir sabit adım değeri seçilir. Oldukça küçük bir adım bir^ fonksiyonun azalmasını sağlar, yani. eşitsizliğin giderilmesi

Ancak bu, minimum noktaya ulaşmak için oldukça fazla sayıda yineleme yapılması ihtiyacını doğurabilir. Öte yandan çok büyük bir adım, fonksiyonun büyümesine veya minimum nokta etrafında dalgalanmalara neden olabilir. Adım boyutunu seçmek için ek bilgi gereklidir, bu nedenle sabit adımlı yöntemler pratikte nadiren kullanılır.

Değişken adımlı gradyan yöntemleri, elde edilen yaklaşıma bağlı olarak adım boyutunun bir şekilde değiştiği durumlarda daha güvenilir ve ekonomiktir (yineleme sayısı açısından). Böyle bir yönteme örnek olarak en dik iniş yöntemini düşünün. Bu yöntemde, her yinelemede, adım boyutu i*, f(x) fonksiyonunun iniş yönündeki minimum koşulundan seçilir;

Bu durum, /(x) fonksiyonunun değeri azaldıkça antigradyan boyunca hareketin meydana geldiği anlamına gelir. Bu nedenle, her yinelemede, φ(τ) =/(x(/r) - - agrad^x^)) fonksiyonunun φ'sine göre tek boyutlu minimizasyon problemini çözmek gerekir. En dik iniş yönteminin algoritması aşağıdaki gibidir.

  • 1. Başlangıç ​​noktası x^°'nin koordinatlarını ve r yaklaşık çözümünün doğruluğunu ayarlayalım. k = 0.
  • 2. x (/r) noktasında gradyan(/(x (^)) değerini hesaplıyoruz.
  • 3. Adım boyutunu belirleyin bir^ cp(i) fonksiyonunun i'ye göre tek boyutlu minimizasyonuyla.
  • 4. (10.4) formülünü kullanarak minimum x (* +1 >) noktasına yeni bir yaklaşım belirleyelim.
  • 5. Yinelemeli süreci durdurma koşullarını kontrol edelim. Bunlar yerine getirilirse hesaplamalar durur. Aksi halde varsayıyoruz k k+1 ve 2. adıma gidin.

En dik iniş yönteminde x (*) noktasından itibaren hareket yönü x (* +1) noktasındaki seviye çizgisine dokunur. İniş yolu zikzaktır ve bitişik zikzak bağlantıları birbirine diktir. Aslında bir adım bir^ küçültülerek seçilir A işlevler ( A). Önkoşul

fonksiyonun minimumu - = 0. Türevi hesapladıktan sonra

karmaşık fonksiyonla, iniş yönleri vektörlerinin komşu noktalarda diklik koşulunu elde ederiz:

φ(π) fonksiyonunu en aza indirme problemi, tek değişkenli bir fonksiyonun kökünü hesaplama problemine indirgenebilir. g(a) =

Gradyan yöntemleri, düzgün dışbükey fonksiyonlar için geometrik ilerleme hızında minimuma yakınsar. Bu tür fonksiyonlar, ikinci türevler matrisinin (Hessian matrisi) en büyük ve en küçük özdeğerlerine sahiptir.

birbirinden çok az farklılık gösterir, yani H(x) matrisi iyi koşullandırılmıştır. Bununla birlikte, pratikte, minimize edilen fonksiyonlar sıklıkla ikinci türevlerin kötü koşullandırılmış matrislerine sahiptir. Bu tür fonksiyonların değerleri bazı yönlerde diğer yönlere göre çok daha hızlı değişir. Gradyan yöntemlerinin yakınsama oranı aynı zamanda gradyan hesaplamalarının doğruluğuna da önemli ölçüde bağlıdır. Genellikle minimum noktaların yakınında meydana gelen hassasiyet kaybı, genellikle gradyan iniş sürecinin yakınsamasını bozabilir. Bu nedenle, gradyan yöntemleri genellikle bir problemin çözümünün ilk aşamasında diğer daha etkili yöntemlerle birlikte kullanılır. Bu durumda x (0) noktası minimum noktadan uzaktadır ve antigradyan yönünde atılan adımlar fonksiyonda önemli bir azalma elde edilmesini mümkün kılar.

Kısıtsız optimizasyon probleminde herhangi bir kısıtlama yoktur.

Çok boyutlu bir fonksiyonun gradyanının, kısmi türevlerin geometrik toplamı ile analitik olarak ifade edilen bir vektör olduğunu hatırlayın.

Bir skaler fonksiyonun gradyanı F(X) bir noktada fonksiyondaki en hızlı artış yönünde yönlendirilir ve seviye çizgisine diktir (sabit değerli bir yüzey). F(X), bir noktadan geçmek X k). Gradyan  antigradyan 'nin karşısındaki vektör, fonksiyonun en hızlı azalmasına doğru yönlendirilir F(X). Ekstrem noktada mezun F(X)= 0.

Gradyan yöntemlerinde, amaç fonksiyonunun minimumunu ararken bir noktanın hareketi yinelemeli formülle tanımlanır.

Nerede k  adım parametresi k antigradyan boyunca yineleme. Artan yöntemler için (maksimumu aramak), degrade boyunca hareket etmeniz gerekir.

Gradyan yöntemlerinin çeşitli çeşitleri, adım parametresini seçme şekli ve önceki adımdaki hareket yönünü dikkate alma şekli açısından birbirinden farklılık gösterir. Gradyan yöntemleri için şu seçenekleri ele alalım: sabit adımlı, değişken adım parametreli (adım bölümü), en dik iniş yöntemi ve eşlenik gradyan yöntemi.

Sabit adım parametreli yöntem. Bu yöntemde adım parametresi her yinelemede sabittir. Şu soru ortaya çıkıyor: adım parametresinin değeri pratik olarak nasıl seçilir? Yeterince küçük bir adım parametresi, minimum noktaya ulaşmak için kabul edilemeyecek kadar fazla sayıda yinelemenin gerekli olmasına neden olabilir. Öte yandan, çok büyük bir adım parametresi minimum noktanın aşılmasına ve bu nokta etrafında salınımlı bir hesaplama sürecine yol açabilir. Bu durumlar yöntemin dezavantajlarıdır. Adım parametresinin kabul edilebilir değerini önceden tahmin etmek imkansız olduğundan k ise değişken adım parametresi ile gradyan yöntemini kullanmaya ihtiyaç vardır.

Optimum değere yaklaştıkça gradyan vektörünün değeri azalır ve sıfıra doğru yönelir. k = sabit adım uzunluğu giderek azalır. Optimuma yakın bir yerde, gradyan vektörünün uzunluğu sıfıra doğru yönelir. Vektör uzunluğu veya normu N boyutlu Öklid uzayı formülle belirlenir

, Nerede N- değişken sayısı.

Optimum arama sürecini durdurma seçenekleri:


Pratik açıdan bakıldığında, 3. durdurma kriterini kullanmak daha uygundur (çünkü tasarım parametrelerinin değerleri ilgi çekicidir), ancak uç noktanın yakınlığını belirlemek için 2. durma kriterine odaklanmanız gerekir. kriter. Hesaplama sürecini durdurmak için çeşitli kriterler kullanılabilir.

Bir örneğe bakalım. Amaç fonksiyonunun minimumunu bulun F(X) = (X 1  2) 2 + (X 2  4) 2 . Sorunun kesin çözümü X*= (2,0;4,0). Kısmi türevler için ifadeler

,
.

Bir adım seçme k = 0.1. Başlangıç ​​noktasından itibaren arayalım X 1 = . Çözümü tablo şeklinde sunalım.

Adım parametresini bölen gradyan yöntemi. Bu durumda, optimizasyon işlemi sırasında, bir sonraki adımdan sonra amaç fonksiyonu artarsa ​​​​(minimum ararken) adım parametresi  k azalır. Bu durumda adım uzunluğu genellikle ikiye bölünür (bölünür) ve adım bir önceki noktadan itibaren tekrarlanır. Bu, uç noktaya daha doğru bir yaklaşım sağlar.

En dik iniş yöntemi. Değişken adımlı yöntemler yineleme sayısı açısından daha ekonomiktir. Antigradyan yön boyunca optimal adım uzunluğu  k, tek boyutlu bir minimizasyon probleminin çözümü ise bu yönteme en dik iniş yöntemi denir. Bu yöntemde her yinelemede tek boyutlu minimizasyon problemi çözülür:

F(X k+1 )=F(X k k S k )=dak F( k ), S k = F(X);

k >0

.

Bu yöntemde antigradyan yönünde hareket, amaç fonksiyonunun minimumuna ulaşılana kadar (amaç fonksiyonunun değeri azalırken) devam eder. Bir örnek kullanarak, bilinmeyen bir parametreye bağlı olarak her adımda amaç fonksiyonunun analitik olarak nasıl yazılabileceğini düşünelim.

Örnek. dk. F(X 1 , X 2 ) = 2X 1 2 + 4X 2 3 3. Daha sonra F(X)= [ 4X 1 ; 12X 2 2 ]. Bırakın nokta X k = , buradan F(X)= [ 8; 12], F(X k S k ) =

2(2  8) 2 + 4(1  12) 3  3. Bu fonksiyon için minimumu sağlayan ’yi bulmak gerekir.

En dik iniş yöntemi için algoritma (minimum değeri bulmak için)

İlk adım.   bir durma sabiti olsun. Başlangıç ​​noktasını seçin X 1 , koymak k = 1 ve ana adıma gidin.

Temel adım. Eğer || dereceliF(X)||< , ardından aramayı sonlandırın, aksi takdirde F(X k ) ve bul k  minimizasyon problemine optimal çözüm F(X k k S k ) en k 0. Koymak X k +1 = X k k S k, atamak k =

k + 1 ve ana adımı tekrarlayın.

En dik iniş yönteminde bir değişkenin bir fonksiyonunun minimumunu bulmak için tek modlu optimizasyon yöntemlerini kullanabilirsiniz. Geniş bir yöntem grubundan ikilik (ikiye bölme) yöntemini ve altın bölümü ele alacağız. Tek modlu optimizasyon yöntemlerinin özü, ekstremumun konumundaki belirsizlik aralığını daraltmaktır.

İkilik yöntemi (ikiye bölme)İlk adım. Ayırt edilebilirlik sabitini  ve belirsizlik aralığının sonlu uzunluğunu seçin ben.  değeri mümkün olduğu kadar küçük olmalı ancak yine de fonksiyonun değerleri arasında ayrım yapılmasına izin verilmelidir. F() Ve F() . İzin vermek [ A 1 , B 1 ] - başlangıç ​​belirsizlik aralığı. Koymak k =

Ana aşama aynı türden sınırlı sayıda yinelemeden oluşur.

k'inci yineleme.

Aşama 1. Eğer B k A k ben, ardından hesaplamalar sona erer. Çözüm X * = (A k + B k )/2. Aksi takdirde

,
.

Adım 2. Eğer F( k ) < F( k ), koymak A k +1 = A k ; B k +1 = k. Aksi takdirde A k +1 = k Ve B k +1 = B k. Atamak k = k + 1 ve 1. adıma gidin.

Altın bölüm yöntemi. Dikotomi yönteminden daha etkili bir yöntem. Belirsizlik aralığının belirli bir değerini daha az yinelemeyle elde etmenize olanak tanır ve amaç fonksiyonuna ilişkin daha az hesaplama gerektirir. Bu yöntemde belirsizlik aralığının yeni bölüm noktası bir kez hesaplanır. Uzaklığa yeni bir nokta yerleştirilir

 = 0,618034 aralığın sonundan itibaren.

Altın bölüm yönteminin algoritması

İlk adım. Belirsizlik aralığının izin verilen sonlu uzunluğunu seçin ben > 0. İzin vermek [ A 1 , B 1 ] - başlangıç ​​belirsizlik aralığı. Koymak 1 = A 1 +(1 )(B 1 A 1 ) Ve 1 = A 1 + (B 1 A 1 ) , Nerede = 0,618 . Hesaplamak F( 1 ) Ve F( 1 ) , koymak k = 1 ve ana sahneye gidin.

Aşama 1. Eğer B k A k ben sonra hesaplamalar biter X * = (A k + B k )/ 2. Aksi halde F( k ) > F( k ) ardından 2. adıma geçin; Eğer F( k ) F( k ) , 3. adıma gidin.

Adım 2. Koymak A k +1 = k , B k +1 = B k , k +1 = k , k +1 = A k +1 + (B k +1 A k +1 ). Hesaplamak F( k +1 ), 4. adıma gidin.

Aşama 3. Koymak A k +1 = A k , B k +1 = k , k +1 = k , k +1 = A k +1 + (1 )(B k +1 A k +1 ). Hesaplamak F( k +1 ).

Adım 4. Atamak k = k + 1, 1. adıma gidin.

İlk yinelemede iki fonksiyon hesaplaması gerekir, sonraki tüm yinelemelerde ise yalnızca bir tane.

Eşlenik gradyan yöntemi (Fletcher-Reeves). Bu yöntemde hareket yönünün seçilmesi k+ Adım 1, yön değişikliğini dikkate alır k adım. İniş yönü vektörü antigradyan yön ile önceki arama yönünün doğrusal bir birleşimidir. Bu durumda, oluk fonksiyonlarını en aza indirirken (dar uzun çöküntülerle), arama vadiye dik değil, onun boyunca yapılır, bu da minimum seviyeye hızlı bir şekilde ulaşmayı sağlar. Eşlenik gradyan yöntemini kullanarak bir ekstremumu ararken bir noktanın koordinatları şu ifade kullanılarak hesaplanır: X k +1 = X k V k +1 , Nerede V k +1 – aşağıdaki ifade kullanılarak hesaplanan vektör:

.

İlk yineleme genellikle V = 0 ve en dik iniş yönteminde olduğu gibi antigradyan boyunca bir arama gerçekleştirilir. Daha sonra hareketin yönü antigradyan yönünden sapar, son yinelemede gradyan vektörünün uzunluğu ne kadar çok değişirse o kadar belirgin olur. Sonrasında N Algoritmanın çalışmasını düzeltmeye yönelik adımlar, olağan anti-gradyan adımı kullanılarak gerçekleştirilir.

Eşlenik gradyan yönteminin algoritması

Aşama 1. Başlangıç ​​noktasını girin X 0 , kesinlik , boyut N.

Adım 2. Koymak k = 1.

Aşama 3. Vektörü koy V k = 0.

Adım 4. Hesaplamak mezun F(X k ).

Adım 5. Vektörü hesapla V k +1.

Adım 6. Tek boyutlu bir vektör araması gerçekleştirin V k +1.

Adım 7 Eğer k < N, koymak k = k + 1'e gidin ve 4. adıma gidin, aksi halde 8. adıma gidin.

Adım 8 Vektör uzunluğu ise V'den küçükse aramayı sonlandırın, aksi takdirde 2. adıma gidin.

Eşlenik yönler yöntemi, minimizasyon problemlerinin çözümünde en etkili yöntemlerden biridir. Yöntem, tek boyutlu aramayla birlikte CAD'de sıklıkla pratik olarak kullanılır. Ancak sayma işlemi sırasında meydana gelen hatalara karşı hassas olduğunu belirtmek gerekir.

Gradyan yöntemlerinin dezavantajları

    Çok sayıda değişkenin olduğu problemlerde analitik fonksiyonlar şeklinde türevlerin elde edilmesi zor veya imkansızdır.

    Fark şemaları kullanılarak türevler hesaplanırken, özellikle ekstremum civarında ortaya çıkan hata, bu tür bir yaklaşımın olanaklarını sınırlar.

KATEGORİLER

POPÜLER MAKALELER

2023 “kingad.ru” - insan organlarının ultrason muayenesi