Optimizasyon

Vikipedi, özgür ansiklopedi
Şuraya atla: kullan, ara

Türkçe anlam karşılığı "Uyumlaşma" veya "uyulaşım" ya da "uyumlaştırma" anlamındadır.

Matematikte matematiksel programlama ya da optimizasyon terimi; bir gerçel fonksiyonu minimize ya da maksimize etmek amacı ile gerçek ya da tamsayı değerlerini tanımlı bir aralıkta seçip fonksiyona yerleştirerek sistematik olarak bir problemi incelemek ya da çözmek işlemlerini ifade eder. Örneğin bu problem şöyle olabilir:

Verilen: f fonksiyonu: A'dan R ye tanımlı. (R:Reel Sayılar)

Aranan : A'da öyle bir x0 var mı ki; tüm x değerleri için f(x0)≤ f(x)ifadesini sağlasın ("minimizasyon") veya f(x0)≥ f(x) ifadesini sağlasın ("maksimizasyon").

Böylesi bir formulasyona optimizasyon problemi ya da matematiksel programlama problemi denir (terimin bilgisayar programlama ile direkt bir ilgisi yoktur, ama yine de lineer programlamada kullanılan bir ifadedir). Pek çok gerçek ve teorik problemler bu genel çerçevede modellenebilir.Bu teknik kullanılarak formüle edilen problemlere fizik bilminin ilgi alanından bir örnek verilecek olursa, bilgisayar monitörlerinin enerji minimizasyonundan söz edilebilir. O halde, yukarıdaki f fonksiyonu modellenen sistemdeki enerjiyi temsil edecekti.

Bu tür problemlerde "A kümesi" genellikle, bir takım daraltıcı kısıtlar, eşitlikler ve eşitsizlikler ile yerine verilecek(denenecek) değerleri sağlayan öklidyen uzayın (Rn) bir alt kümesidir. f fonksiyonundaki A'nın tanım aralığına "arama uzayı", A'nın alacağı değerlerin kümesine ise çözüm adayları ya da olası çözümler denir.

f fonksiyouna objektif (nesnel) ya da paha(maliyet) fonksiyonu denir. İstenilen objeyi minimize ya da maksimize eden(amaca göre) olası A çözümüne ise "optimal çözüm" denir.

Genellikle, problemin olası çözümü ve objektif fonksiyonu dışbükeylik göstermez, birden çok yerel "minimum" ve "maksimum" noktalarına rastlanabilir.

x* da bulunan ve tüm x'ler için δ > 0 iken

epsilon

ifadesi ile

sağlanıyorsa; x* civarında bir yerlerde fonksiyonun tüm değerlerinin, bu noktadaki değerden büyük veya o'na eşit olduğu söylenebilir, o halde bu nokta bir "Yerel Minimum" noktasıdır. (Yerel Maksimum da benzer şekilde ifade edilebilir).

Dışbükey olmayan problemlerin çözümünde pek çok algoritma kullanılmasına rağmen (çoğunlukla ticari amaca yönelik çözüm üreten algoritmalar) yine de yerel optimal noktalar ve gerçek optimal noktaral arasındaki farkların ayırt ve tespit edilmesinde yetersiz kalınmakta ve orijinal probleme bir adım geriden yaklaşılmaktadır. Deterministik algoritmaların gelişimi ile ilgilenip, yakınsayan ve dışbükey olmayan ifadeleri -sınırlı bir zamanda- gerçek bir optimal ifadeye ayrıştırabilen uygulamalı matematik ve nümerik analiz branşlarına global optimizasyon denir.

Başlıca alt dalları[değiştir | kaynağı değiştir]

Altdallara göre farklılık gösterecek şekilde, çeşitli teknikler dizayn edilmiştir:

  • Değişkenler Hesabı Objektif fonksiyonun zaman aralıklarından seçilen değişik noktalara nasıl reaksiyon verdiğinin incelenmesi ile kullanılan yöntemdir.
  • Optimal Kontrol Teorisi değişkenler hesabının çeşitli genellemelerinin toplanmış halidir.
  • Dinamik Programlama Büyük parçaların daha küçük boyutlara indirgenmesi optimizasyon stratejisini yöneten metottur.Bu tür alt problemler ile ilgili olan eşitliklere Bellman eşitliği denir.

Teknikler[değiştir | kaynağı değiştir]

İki kez diferansiyeli alınabilen fonksiyonlar için, kısıt bulundurmayan problemler objektif fonksiyonun gradyan'ının sıfır'a eşit olduğu noktaların (istasyon noktaların) yeri tespit edilip, Hessian matrix ile her noktanın sınıfı belirlenerek çözülebilir.Eğer Hessian pozitif tanımlı ise bu nokta "Yerel Minimum", negatif tanımlı ise "Yerel Maksimum"'dur.Şayet tanımsız ise de bir tür saddle point olduğu söylenebilir.

Ancak, her zaman türev almak olası değildir.Objektif fonksiyonun düzgünlüğüne göre metotların ana sınıflandırması şöyle yapılabilir:

Bazı metotlar özel isimleri ile de yukarıdaki dört gruptan birine denk gelecek şekilde listenebilir:

Kısıt problemleri genellikle Lagrange Çarpanı ile kısıttan bağımsız bir forma getirilir.

Birkaç popüler metod daha:

Kullanım alanları[değiştir | kaynağı değiştir]

Yapı-Araç İskeleti dinamiği'ne ilişkin problemler sıklık ile matematiksel programlama teknikleri gerektirmektedir.Yapı-Araç İskeleti, manifold ile kısıtlanmış bir basit diferansiyel denklem'in çözümüne ihtiyaç duyan bir yönelim olarak değerlendirilebilir.Bu durumda kısıtlar non-lineer olmayan gemotetrik çeşitliliktedir, öneğin "bu iki nokta daima temas etmeli", "bu alan diğerine etki etmemeli" ya da "bu nokta her zaman bu eğri üzerinde olmalı" gibi.Ayrıca temas halindeki kuvvetlere ilişkin problemler de lineer uyumluluk çatısı altında çözüldüğünden, buna da bir tür QP (Kuadratir Programlama) Problemi gözüyle bakılabilir.

Pek çok dizayn problemi de optimizasyon programları ile çözülmektedir.Bu tür uygulamalara dizayn optimizasyonu denir.Bu alanda bilinen ve büyümekte olan bir alt kol çok disiplinli dizayn optimizasyonu'dur.Bu tür, pek çok problemde kullanışlı olduğu gibi aynı zamanda da uzay mühendisliği sahasına uyarlanabilmektedir.

Ekonomi de matematiksel programlamaya ağır bir bağımlılık duyar.Mikroiktisat'da sık karşılaşılan bir problem olan marjinal fayda ve bundan kaynaklanan ikilik olan harcamaları minimize etme problemi iktisadî bir optimizasyon problemidir. Tüketiciler ve firmalar fayda/kar oranlarını maksimize etmek durumundadırlar.Ticaret teorisi de milletler arası ticari ortaklığın izahında optimizasyona sık sık başvurur.

Sabit genel giderli zaman maliyet problemleride önemli bir optimizasyon problemidir. Özellikle inşaat ve endüstri mühendisliğinde bu problemle sıkça karşılaşılır. Doğrusal programlama, sezgisel ve üst sezgisel yöntemler bu problem türünün optimizasyonu için kullanılmaktadır.

Optimizasyon tekniklerinin sıkça kullanıldığı bir diğer alan da operasyon araştırması'dır.

Tarihçe[değiştir | kaynağı değiştir]

Dik İniş adıyla bilinen ilk optimizasyon tekniğinin tarihi Gauss'a dek uzanır. Tarihi olarak, 1940'larda George Dantzig tarafından ortaya atılan lineer Programlama kuramı en yaşlı optimizasyon terimidir. Programlama terimi bu bağlamda Bilgisayar Programcılığı'nı ifade etmez.Program teriminin kullanımı ABD Ordusunun, kendi içtimai ve lojistik takvimini belirlemede konteyner kullandığı "program" terimi ile ilişkilidir.(Daha sonra ise "program" terimi devlet bütçesinin düzenlenmesinde kullanılmış ve günümüzde de yüksek teknolojik araştırmaların sahasına da geçmiştir.)

Optimizasyon Alanına Katkı Sağlayan Diğer Önemli Matematikçiler:

Ayrıca bakınız[değiştir | kaynağı değiştir]

Problem Çözücüler[değiştir | kaynağı değiştir]

Kaynakça[değiştir | kaynağı değiştir]

Dış bağlantılar[değiştir | kaynağı değiştir]

Modeling languages:

Solvers:

  • CONOPT
  • JOpt
  • Moocho - Çok esnek ve açık-kaynak kodlu bir NLP çözücü.
  • SAS OR
  • [1] Stanford Üniversitesi'nin Sistem Optimizasyon Labarotuarı tarafından sunulan ücretsiz optimizasyon yazılımı.
  • TANGO Project Genel Non-Lineer algoritmalar için güvenilir bir yazılım.
  • SmartDO - Mühendislik ile ilgili global optimizasyon yazılımı (ticari)

Kütüphaneler: