Yaklaşım Algoritmaları için Teorik Uygulamalar


21

Son zamanlarda NP zor problemler için yaklaşıklık algoritmaları aramaya başladım ve onları incelemenin teorik nedenlerini merak ediyordum . (Soru iltihaplı değildir - sadece merak ediyorum).

Bazı gerçekten güzel teori, yaklaşım algoritmaları - PCP teoremi ve yaklaşımın sertliği, UGC varsayımı, Goeman-Williamson yaklaşım algoritması, vb.

Gezgin Satıcı, Asimetrik Gezgin Satıcı ve diğer değişkenler, mekanizma tasarımındaki çeşitli problemler (örneğin kombinasyonlu açık artırmalarda), vb. Gibi problemler için yaklaşım algoritmalarını inceleme noktası hakkında merak ediyordum. Bu tür yaklaşım algoritmaları teorinin diğer bölümlerinde de faydalı oldu mu? Geçmişte mi yoksa tamamen kendi iyiliği için mi okuyorlar?

Not: Bildiğim kadarıyla herhangi bir pratik uygulama hakkında soru sormuyorum, çünkü bildiğim kadarıyla, gerçek dünyada, çoğunlukla yaklaşım algoritmaları yerine uygulanan buluşsal araştırmalar ve sezgisel araştırmalar için yaklaşık algoritmalar incelendiğinde elde edilen herhangi bir görüş tarafından nadiren bilgilendiriliyor. sorun.


4
Soruyu anladığımdan emin değilim. Herhangi bir teorik konuyu incelemek için "teorik nedenler" nelerdir?
Jeffε

1
Sanırım "doldur vb." Demek. paragraf 2'de
Huck Bennett

2
Yaptığım şey buysa ve yanlış soruyu kendime sormadım mı? Ben sadece Yaklaşım Algoritmaları serin görünüyor olsa bile!
Gopi

1
Bence motivasyon yaklaşma zorluğunu çalışmak için motivasyonla aynıdır: çeşitli problemlerin tam karmaşıklığını anlamak. Goemans-Williamson algoritması, GW yaklaşım faktöründen daha iyisini yapmanın benzersiz oyun sertliği ile el ele gider.
Aaron Roth,

1
Son paragrafınızın adil olup olmadığından emin değilim. Yaklaşım algoritmaları ilginçtir çünkü TSP gibi sorunların kararsızlığıyla başa çıkmak için önerilen bir yoldur. Birçoğunun pratikte doğrudan orijinal formda kullanılmaması, ancak ne deneneceğini bilmek faydalı olabilir. Kesin algoritmalar hakkında aynı şeyi söyleyebilirsiniz, çoğu pratikte asla doğrudan kullanılmaz, pratikte herhangi bir algoritmayı kullanırken dikkat edilmesi gereken birçok mühendislik sorunu vardır. Uygulamadaki birçok problem kesin algoritmalara ihtiyaç duymaz ve kullanıcılar tamamen mutlu olur
Kaveh

Yanıtlar:


21

Son paragrafa kesinlikle katılmıyorum. Bunun gibi Battaniye ifadeleri kullanışlı değildir. Ağ, veri tabanları, AI ve benzeri birçok sistem alanındaki makalelere bakarsanız, pratikte pek çok yaklaşık algoritma kullanıldığını göreceksiniz. Kişinin çok kesin cevaplar istediği bazı sorunlar var; örneğin filo planlamasını optimize etmede ilginç bir havayolu şirketi. Bu gibi durumlarda, insanlar önemli hesaplama zamanları alan ancak genel bir yaklaşım algoritmasının sağlayabileceğinden daha iyi sonuçlar alan çeşitli buluşsal yöntemleri kullanırlar.

Şimdi yaklaşım algoritmaları çalışmak için bazı teorik nedenlerden dolayı. Birincisi, grafik boyama oldukça zor olsa da sırt çantasının pratikte çok kolay olduğu gerçeğini açıklayan nedir? Her ikisi de NP Sertdir ve birbirine zaman zaman indirgenebilir. İkincisi, bir problemin özel durumları için yaklaşıklık algoritmalarını inceleyerek, hangi örnek sınıflarının kolay ya da zor olabileceğini tam olarak belirleyebilirsiniz. Örneğin, birçok sorunun düzlemsel ve küçük olmayan grafiklerde bir PTAS kabul ettiğini, genel grafiklerde ise çok daha zor olduğunu biliyoruz. Yaklaşım fikri, modern algoritma tasarımını etkilemektedir. Örneğin, insanlar veri akışı algoritmaları kullanırlar ve yaklaşım merceği olmadan algoritmaları anlamak / tasarlamak zordur çünkü basit problemler bile tam olarak çözülemez.



9

Ayrıca, en azından bu genellikte belirtilen "not" ile aynı fikirde değilim. Bununla ilgili, David Johnson'ın Kanellakis ödül konuşmasının bir yerde olup olmadığını bilen var mı?

Ayrıca, tüm NP-zorlu sorunların kesin çözümlerin en kötü durum karmaşıklığına göre eşdeğer olduğunu fark ettiğimizde, yaklaşık çözümler bulmanın karmaşıklığını araştırmak çok doğaldır. Ve Chandra, yaklaşım algoritmalarının algoritma tasarımına getirdiği bakış açısının değişmesi konusunda da büyük önem veriyor.

O(günlükn)


8

En iyi sezgisel tarama gerçekten yaklaşım algoritmalarıdır. En güzel yaklaşım algoritmaları işe yarayan sadece "aptal" sezgilerdir. Örneğin, kümelenme için yerel arama, açgözlü kümeleme (Gonzalez), biri iki fiyatına, çeşitli açgözlü algoritmalara vb. Vb.

Bu yüzden yaklaşım algoritmalarını incelemek gerçekten sezgisel taramaların garanti algoritmalarının ne olduğunu anlamaktır. Umut, yaklaşım algoritmaları üzerine yapılan araştırmaların iki çeşit çapraz gübreleme oluşturmasıdır:

  • Sezgilerden çalışan fikirleri algoritma tasarım araçlarına taşıyın. Benzer şekilde, fikirleri algoritma tasarımından pratikte işe yarayan sezgisel / algoritmalara taşıyın.
  • Mezun olan bir kişi ile bir pozisyon arasında döllenme.

Kısacası, dünya kesin değildir, girdiler kesin değildir, çeşitli algoritma problemleri ile optimize edilmiş hedef fonksiyonlar kesin değildir ve en iyi ihtimalle birinin istediğine dair bulanık bir yaklaşımı temsil eder ve hesaplamalar kesin değildir. Neden birileri kesin algoritmalar öğrensin? (Cevap: Çünkü kesin algoritmalar gerçekten çok iyi yaklaşım algoritmalarıdır.)

Gerçek dünyada, çok az kesin algoritma vardır - uzaktan ilgili olmak için yaklaşık kullanmanız gerekir ...


4

Sürekli değişkenli problemlerle uğraşmak kesin algoritmalarla çok can sıkıcıdır. Örneğin, bir TSP örneğinin uç ağırlıklarını kesin gerçek sayılarla belirlemek ne demektir?

Bu problemler için FPTAS algoritmalarına izin verdiğimizde, bu parametreleri tam sayılara göre ölçebiliriz. Bu, sorunu çok daha iyi davranılmasını sağlar (standart Turing makinelerini kullanabilir), ancak küçük bir hataya yol açar.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.