Bilim adamlarına asimptotik en kötü durum analizini gerekçelendirmek


22

Ben tanıtan üzerinde çalıştığım bazı sonuçlar teorik biyoloji, özellikle içine hesaplama karmaşıklığı gelen evrim ve ekoloji ilginç / biyologlar için yararlı olma hedefi ile. Karşılaştığım en büyük zorluklardan biri, düşük sınırlar için asimptotik en kötü durum analizinin kullanışlılığını haklı çıkarmak. Bilimsel bir izleyiciye alt sınırları ve asimptotik en kötü durum analizini haklı gösteren makale uzunluğu referansları var mı?

Elimdeki sınırlı alanda haklı gerekçelerden geçmek zorunda kalmak yerine yazımımda erteleyebileceğim iyi bir referans arıyorum (çünkü bu makalenin merkezi noktası değildir). Ben de farkındayım diğer tür ve paradigmaların yüzden, analizin ben am değil en kötü durum "en iyi" analizidir diyor referans isteyen (çünkü orada çok fazla değilken ayarları), ancak olmadığını Tamamen işe yaramaz: hala gerçek algoritmaların gerçek girdiler üzerindeki davranışına dair teorik olarak yararlı bilgiler verebilir . Yazının genel bilim adamlarına yönelik olması da önemlidir. ve sadece mühendisler, matematikçiler veya bilgisayar bilimcileri değil.

Örnek olarak, Tim Roughgarden'in karmaşıklık teorisini ekonomistlere tanıtan makalesi istediğim şey için doğru yolda. Bununla birlikte, sadece 1. ve 2. bölümler geçerlidir (geri kalanlar da ekonomiye özgüdür) ve hedef kitle teorem-lemmaya dayanıklı düşünme konusunda çoğu bilim insanından biraz daha rahattır [1] .


ayrıntılar

Evrimdeki adaptif dinamikler bağlamında, teorik biyologlardan iki spesifik direnç türü ile karşılaştım:

[A] “Neden keyfi davranışını önemsemeliyim ? Genomun n = 3 10 9 baz çifti (ya da belki n = 2 10 4 gen) olduğunu ve daha fazlasının olmadığını zaten biliyorum .”nn=3109n=2104

Bu, " saniye beklediğimizi düşünebiliriz ama 2 10 9 değil " argümanıyla fırçalamak nispeten kolaydır . Ancak, daha karmaşık bir argüman diyebilir ki "kesin, sadece belirli bir n umursadığını söylüyorsun , ama teorileriniz bu gerçeği asla kullanmıyor, sadece büyük ama sonlu olduğunu kullanıyorlar ve üzerinde çalıştığımız teoriniz bu asimptotik analiz ".1092109n

[B] "Ancak, bu özel manzarayı bu aygıtlarla oluşturarak bunun zor olduğunu gösterdiniz. Ortalama yerine bunu neden umursamalıyım?"

Bu, ele alınması daha zor bir eleştiri, çünkü insanların bu alanda yaygın olarak kullandıkları araçların çoğu, tek tip (veya başka bir belirli basit) dağılımın varsayılmasının genellikle güvenli olduğu istatistik fiziğinden geliyor. Ancak biyoloji "tarihi olan bir fiziktir" ve neredeyse her şey dengede ya da 'tipik' değildir ve ampirik bilgi yetersizdirGirdi üzerindeki dağılımlarla ilgili varsayımları doğrulamak. Başka bir deyişle, yazılım mühendisliğinde tekdüze dağılım ortalama durum analizine karşı kullanılana benzer bir argüman istiyorum: "algoritmayı modelliyoruz, kullanıcının algoritma ile nasıl etkileşime gireceği veya dağılımının ne olduğu konusunda makul bir model oluşturamıyoruz Girdilerin sayısı şöyle olacaktır; bu, psikologlar veya son kullanıcılar içindir, biz değil. Bu durum dışında, bilim, “psikologların veya son kullanıcıların” eşdeğerinin, temel dağılımları bulmak için var olduğu (ya da bunun anlamlı olması durumunda) olduğu bir konumda değildir.

Notlar ve ilgili sorular

  1. Bağlantı bilişsel bilimleri tartışıyor, ancak zihniyet biyolojide benzer. Evrim veya Teorik Biyoloji Dergisi'ne göz atarsanız, nadiren teorem-lemmaya dayanıklı görürsünüz ve bunu yaptığınızda tipik olarak varoluş kanıtı veya karmaşık yapı gibi bir şey yerine sadece bir hesaplama olur.
  2. Algoritmaların karmaşıklık analizi için paradigmalar
  3. En kötü durum, ortalama durum vb. Dışında diğer çalışma süresi analizi türleri?
  4. Algoritmik lens aracılığıyla ekoloji ve evrim
  5. Ekonomistler neden işlemsel karmaşıklığı önemsemeliler?

23
En kötü durum davranışını haklılaştırmak imkansız… simpleks algoritması daha kötü bir kötü davranış davranışına sahiptir ve şimdiye kadar umursayan tek kişi teorisyendir. Tartışmanız gereken şudur: (a) ortalama durumdaki asimptotik davranış önemlidir; (b) ortalama durumdaki asimptotik davranış ve en kötü durumdaki asimptotik davranış oldukça benzerdir; (c) en kötü durumdaki asimptotik davranışın hesaplanması, ortalama durumdaki asimptotik davranışınkinden çok daha kolaydır (özellikle de ilgili olasılık dağılımının ne olduğunu kimse bilmediği için).
Peter Shor

5
Asimptotikler zaten sorunlu bir özelliktir. Hepimiz biliyoruz ki matris çarpım algoritmaları (asimptotik üst sınırlar pratikte anlamsızdır) ve belki de kriptografide parametrelerin seçilmesi ile ilgili hikaye (asimptotik alt sınırlar pratikte anlamsızdır; üstel algoritmalar bazen uygulanabilirdir [DES]). Analizinizin gerçek sabitleri varsa, o zaman daha ikna edicidir.
Yuval Filmus

6
Giriş sağlayıcısı ve algoritma arasında bir oyun (yani savaş) olarak hesaplamayı düşünüyorsanız, en kötü durum analizi standart bir askeri yaklaşımdır - ne kadar kötü olabileceğini bilmek istersiniz. İkincisi, ve daha da önemlisi, en kötü durum analizi entelektüel olarak tembel olmanıza izin vermez ve dünyanın ne olduğuna (ve gerçekte ne olduğuna değil) inandığınız şeye iyi olabilecek çözümleri kabul etmez. Son olarak ve belki de en önemlisi, algoritmaları umutla anlamlı bir şekilde karşılaştırmak için tek tip bir yol sağlar. Kısacası, diğerleri hariç, en kötü yaklaşım budur.
Sariel Har-Peled,

6
Bence en kötü durumdan küçük bir sınır, topu tekrar sahalarına sokmak olarak görülmeli. Makul bir zaman dilimi içerisinde tüm durumlarda problemlerini çözebilecek bir algoritma olmadığını gösterdiniz. Durumlarının kolay olduğuna inanıyor olabilirler - ancak, eğer öyleyse, önemsiz bir gerçek olduğunu gösterdiniz. Bu nedenle onların modeli, bunun neden böyle bir açıklama yapamadıkça eksiktir.
Aaron Roth

3
(Oyun teorisyenleri ile konuşurken işe yarayan yaklaşım budur. Sorunu gündeme getirmektedir - eğer piyasalar hızlı bir şekilde dengelenirse - gerçek piyasaların en kötü durum zorluğunu aşan ne gibi özel mülkiyeti vardır? böyle bir mülk ve alt sınırlar sadece bunu yapmanın önemli bir araştırma yönü olduğunu gösteriyor)
Aaron Roth

Yanıtlar:


8

Benim kişisel (ve önyargılı) benim asimptotik en kötü durum analizinin, pratikte daha faydalı analiz türlerine yönelik tarihsel bir adım taşı olduğu yönünde. Bu nedenle uygulayıcıları haklı çıkarmak zor görünüyor.

En kötü durum için sınırları kanıtlamak, genellikle ortalama durumun "güzel" tanımları için sınırları kanıtlamaktan daha kolaydır. Asimptotik analizler de oldukça dar sınırları kanıtlamaktan çok daha kolaydır. En kötü durumdaki asimptotik analiz bu nedenle başlamak için harika bir yer.

Daniel Spielman ve Shanghua Teng'in Simplex'in düzgünleştirilmiş analizi üzerine çalışması bana bir sorunun şeklini daha iyi anlamaya başladığımızda neler olabileceğinin bir habercisi gibi görünüyor: En kötü durumda ilk önce mücadele etmek, daha nüansal bir anlayışı mümkün kılıyor gelişmiş. Ayrıca, Aaron Roth'ın yorumlarda önerdiği gibi, bir sistemin "olağan" davranışı en kötü durumundan önemli ölçüde farklıysa, sistem henüz tam olarak belirtilmemiştir ve modeli geliştirmek için daha fazla çalışmaya ihtiyaç duyulmaktadır. Dolayısıyla, en kötü durumun ötesine geçmek, genellikle uzun vadeli bir hedef olarak önemli görünmektedir.

Asimptotik analizler söz konusu olduğunda, uzun ve dağınık bir kanıtı rahatsız edici ayrıntılardan uzak tutmaya yarar. Maalesef şu anda ayrıntıların doldurulmasının sıkıcı çalışmasını asıl sabitleri elde etmek için ödüllendirmenin bir yolu görünmüyor, bu yüzden nadiren gerçekleşiyor gibi görünüyor. (Sayfa sınırları da buna karşı çalışır.) Asimptotik bir sınırın ayrıntılarının dikkatlice analizi, sabitler üzerinde iyi sınırlar olan gerçek algoritmalara neden oldu, bu yüzden şahsen bu türden daha fazla çalışma görmek istiyorum. Belki de kanıt asistan sistemleri kullanılarak daha fazla kanıt resmileştirilmişse, sabitler daha az ek çaba ile tahmin edilebilir. (Veya Szemerédi Regularity Lemma için bağlanan Gowers çizgileri boyunca sabitler üzerindeki sınırlar daha rutin hale gelebilir.) Ayrıca sabit olmayan daha düşük sınırları kanıtlamanın yolları da vardır. daha belirgin makina modelleri kullanarak (deterministik sonlu durum otomatları gibi). Bununla birlikte, daha genel hesaplama modelleri için bu (neredeyse) kesin alt sınırlar çok fazla çalışma gerektirebilir veya tamamen erişilemez olabilir. Bu, 1958-73 yıllarında, otomat teorisinin ilk yirmi günü boyunca sürdürülmüş gözüküyor, fakat söyleyebileceğim kadarıyla, büyük ölçüde yalnız bırakılmıştı.

O(nk)


Asimtotiklerin kesin sabitler lehine kesin sınırlar lehine kesilmesi konusundaki hevesini paylaşmam. Asimptotikler kesin olmayabilir - ancak bunlar yararlı değildir. Aynı makine modeli için uygulama farklarını soyutlarlar. Örneğin, 1950'lerin donanımında ikinci dereceden bir sıralama algoritması bugünün donanımında ikinci dereceden olacaktır. Ayrıca, asimptotik formüller güzel bir şekilde oluşur. Örneğin, lineer ve polinomlar kompozisyon altında kapatılmıştır. (Ortalama davada en kötü durumla karşılaştırıldığında daha iyi sınırlar için tartışmanın asimptotiklere karşı tartışmanın ortogonal
olduğuna dikkat edin

Genel olarak haklısınız, ancak küçük bir sabit ile bir ilgili parametrenin temel olmayan bir işlevi olan büyük bir fark var.
András Salamon

Bu cevabı genel olarak beğeniyorum ancak @brandjon ile sabitleri saklamanın çok önemli olduğunu kabul ediyorum. Benim için, TCS'nin biyolojide faydalı olmasının nedeni, mikro dinamikler hakkında fizikten daha az varsayımlar yapması gerektiğidir. Ancak, mikro dinamiklerle ilgili varsayımlarda bulunmazsanız (yani hesaplama modelinin tam olarak belirtilmesi), o zaman sabit faktörleri çıkaramazsınız. TCS'nin diğer faydalı özelliği, titiz niteliksel ikiliklerdir (biyo'daki daha niteliksel gözlemlerle karşılaştırmak daha kolay olan bir şey), genellikle bunları elde etmek için sabitleri de atmanız gerekir.
Artem Kaznatcheev

O~(nO~(1/ϵ))

1
Bir yandan not olarak, en kötü durum analizinin anlamlı olduğu örnekler vardır. Örneğin, bir genel amaçlı alt yordamlar kütüphanesi geliştirdiğinizde ve hangi uygulama alanlarında yararlı olacaklarını bilmediğinizde: Örneğin, birinin ne zaman ve neden bir minimum maliyet çift taraflı eşleşmesi hesaplamak isteyeceği ile ilgili tüm durumları tahmin edemezsiniz. Kriptografi gibi olumsuz ayarlar daha da net bir şekilde kesilir (kriptoda güvenlik parametreleri söz konusu olduğunda sabitleri bilmek istersiniz).
Sasho Nikolov

4

Düşük sınırlar ve en kötü durum analizi genellikle bir arada gitmez. Bir algoritmanın en kötü durumda en azından üstel zaman alacağını söylemiyorsunuz, bu yüzden kötü. En kötü durumda en doğrusal zamanda alabileceğini ve bu nedenle iyi olduğunu söylüyorsunuz. İlki, algoritmanızı yalnızca tüm girdiler üzerinde çalıştıracaksanız kullanışlıdır, sadece ortalama bir girdi değildir.

Kötülüğü göstermek için daha düşük sınırlar kullanmak istiyorsanız, en iyi durum analizi veya ortalama durum analizi istersiniz. @ PeterShor'un en kötü ve ortalamanın çoğu zaman çok benzer olduğu noktasını temel alarak işleri basitleştirebilirsiniz ve bunun doğru olduğu algoritmaların bir çamaşırhane listesini verebilirsiniz. (Örn: quicksort dışındaki tüm klasik sıralama.)

Asimptotiklerin sürekli girdiler ve sabit faktörlerle karşılaştırıldığında önemli olduğunu göstermek için konuyla ilgili en sevdiğim makale Jon Bentley'nin "Programlama incileri: algoritma tasarım teknikleri" dir. Basit bir dizi problemine dört farklı çözüm sunar ve lineer yaklaşımın kübik olanı nasıl yok ettiğini gösterir. Roket denkleminin kırılganlığı için fizikçiler tarafından kullanılan terimden sonra "Asimptotiklerin Zekası" adlı masasını çağırıyor. Bu örneği, üniversite öncesi öğrenciler için daha iyi algoritmalar aramaya motive etmek için kullanıyorum.

Bilgisayar bilmeyen bir bilim adamı, kod içeren bir makaleyi okur mu ve büyük resmi elde etmek için düşük seviyeli ayrıntıları atlamayı bilir mi? Bilmiyorum. Belki başka bir yerde daha iyi bir sunum var. Ama bunun alıntı olarak uygun bir kaynak olduğunu düşünüyorum.

Ve keyfi olarak büyük n'yi umursamadıklarını iddia ederlerse, 3 * 10 9 baz çiftlerinde özyinelemeli notlandırılmamış Fibonacci'yi çalıştırmalarını ve DNA dizisinin büyüklüğü sabit olduğu için onlara O (1) olduğunu söyleyin. ;)


1
Fibonacci örneğini beğendim :)
Suresh Venkat

3
Re: ilk paragrafınız: aslında, pek çok karmaşıklık teorisinin yaptığı tam olarak budur. Bir sorun EXP tamamlandıysa, bu en kötü durum girişlerinde üssel zaman gerektireceği anlamına gelir. Bu, genel olarak, genel zorluklarının bir göstergesi olarak kabul edilir (ki, uygulamada adil olmak gerekirse, genellikle genel bir gösterge kadar kötü değildir). Bu, "sonsuz sıklıkta" veya daha düşük bir sınır olarak adlandırılan fiili standarttır; Ortalama durum veya hemen hemen her yerde daha düşük sınırlar (yani, çok sayıda girdi hariç herkes için) elde etmek bazen takip edilen bir amaçtır, ancak çoğu zaman daha düşük sınırlara kıyasla ulaşılmazdır.
Joshua Grochow

2
Sadece en kötü durum ve ortalama durum analizinin aynı olduğu bir algoritma listesi değil, aynı zamanda çok farklı oldukları birçok örnek verebilirsiniz (simpleks algoritması sadece en ünlü olanı) bunların). Bir şekilde, kendi uygulamanız için aynı olduklarını iddia etmeniz gerekiyor; deneysel test bunu yapmak için iyi bir yoldur.
Peter Shor

1
@JoshuaGrochow Fuar yeterince. Açıklamayı aşağıdaki gibi revize etmemize ne dersiniz: Kötü niyetli olmamanın matematiksel garantisinin olmadığını göstermek istediğinizde, en kötü durumlarda düşük sınırlar önemlidir. ;)
brandjon

-3

çok anket / kapsayacak kadar önemli bir konu olduğu konusunda hemfikirdi, ancak henüz çok olmadı. değişen stil / kapsama / izleyici / birkaç hakemler formalite değil tam (umut daha iyi olanlar daha da duymak iyi görüldüğü çevrimiçi bugüne kadar orta aramada; aşağıda daha notları) olarak istenen ama biraz yakın:

  • Algoritmaların karmaşıklığı Atkinson (makalede biyolojiye yalnızca bir tek referans olması, ancak daha genel bilim / mühendislik terimleri için yeterli olabilir)

    Modern algoritmalar teorisi, asimptotik yürütme zaman ölçümü metodunun kullanılmaya başlandığı 1960'lı yılların sonlarına dayanmaktadır. Konunun hem mühendislik hem de bilim kanadına sahip olduğu iddia ediliyor. Mühendislik kanadı iyi anlaşılmış tasarım metodolojilerinden oluşurken, bilimsel kanat teorik temellerle ilgilidir. Her iki kanadı kilit konular araştırılır. Sonunda, konunun daha sonra nereye gideceği ile ilgili bazı kişisel görüşler açıklandı.

  • Karmaşıklık ve Algoritmalar J. Diaz. 100 slayt. geniş; Biri, özellikle ilgili olanları elden çıkarabilir.

  • Algoritma Karmaşıklık Analizine Nazik Bir Giriş Dionysis "dionyziz" Zindros

Başka bir deyişle, karmaşıklık teorik merceğinin yakın bir birleşimi / konjonktür / arkadaşı ile bilimde gelişen algoritmik mercekle bir çeşit giriş / anket / genel bakış, "Bilim adamları, mühendisler ve araştırmacılar için karmaşıklık teorisi" gibi bir şey var mı?

eski "algoritmik lens" Eğer örneğin atıfta bulunmuş iyi hakemler var Papadimitriou ama ikincisi "karmaşıklık lens" konulu yazılmıştır alanda bir uzman tarafından son derece tatmin edici ref görünmüyor ... henüz (belki bazı "elit " Bu sitenin üyesi, bir sonraki kitabı veya ödevi olarak değerlendirecek."

Ayrıca, karmaşıklık teorisi dışında ve bu amaç için bir şekilde kullanılabilecek diğer bilimsel alanlarda P'ye göre NP'ye ilgisi hakkında çok fazla referans vardır. Herhangi bir ilgi varsa bunları yorumlara ekleyecektir.


3
Bunun soruyu gerçekten cevapladığını sanmıyorum.
Huck Bennett,

1
huh, herhangi bir referansa baktın mı? benim cevabımın bir kısmı (henüz) herhangi bir ideal / mükemmel cevabın olmadığı:
vzn

1
Gerekçelendirmeye odaklanmak yerine asimptotik ve en kötü durum analizini tanımlamış görünüyorlar, ama belki bir şeyleri özledim?
Huck Bennett,

7
Aslında, TCS dışındaki araştırmacıların “en pratikte asla ortaya çıkmayacak yapay olarak inşa edilmiş örnekler” olarak en kötü olayı kolaylıkla reddedebileceğini ve (başka türlü güçlü inandırıcı olmadan) ortalama durumla çok daha fazla ilgileneceklerini (bunun net olmadığı gerçeğine rağmen) olacağını düşünüyorum. ortalama durum, gerçek dünyadaki örneklere o kadar yakındır).
Joshua Grochow

1
@vzn: Asimptotik (örneğin büyük-Oh) ve en kötü durum biraz diktir. Bir kişi asimptotik en kötü durum analizi, asimptotik ortalama durum analizi veya hatta asimptotik en kolay durum analizi yapabilir (ikincisinin biraz sapık gözükse de). Bir yerine yapabileceğini kesin kötü durum analizi veya tam bu çok daha modeli bağımlı ve daha az sağlam, buna rağmen böyle devam ortalama durum analizi ve. Asimptotik kullanımının gerekçelendirilmesi (ve sabit faktörler gibi şeylerin gizlenmesi), en kötü durum karşısında ortalama durum veya "gerçek" durumunun haklılaştırılmasından tamamen farklıdır (her ne demekse…).
Joshua Grochow
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.