“Modern” bilgisayar bilimi ortaya çıkmadan önce olasılıksal (randomize) algoritmalar


27

Düzenleme: 06 Aralık 2012 itibariyle en yüksek puana sahip cevabı seçiyorum.

Bu yumuşak bir soru.

(Deterministik) algoritmalar kavramı M.Ö. Olasılık algoritmaları ne olacak?

Olarak bu sayfasını ziyaret , hesaplama geometride yakın çift sorunu için Rabin'in algoritma, ilk önce, randomize algoritması olarak verildi (yıl ???). Rasgele algoritmalar Modern çağın başlangıç olarak Lipton Rabin'in algoritması tanıtıldı burada ama ilk olarak. Ayrıca 1960'larda keşfedilen olasılıklı sonlu otomata (çok basit bir hesaplama modeli) için birçok algoritma biliyorum.

1960'lardan önce bile herhangi bir olasılık / rastgele algoritma (veya yöntem) biliyor musunuz?

veya

Hangi olasılık ilk olasılıksal / randomize algoritma olarak görülebilir?


25
Asır tadı doğru olup olmadığını kontrol etmek için bir kaşık kaynar çorba tadımı asırlık fikir, esasen rastlantısal örneklemedir, kanıtlanabilir garantileri olan olasılıklı bir algoritmadır.
arnab

3
Rabin'in algoritması, 1976'da, "modern" bilgisayar bilimlerinin kurulmasından çok sonra yayınlandı.
Jeffε

Örneğin, insanlığın milyarlarca yıl öncesini öne çıkaran doğal olayların bazı algoritmalar tarafından önerildiği gibi “algoritmaları” temsil ettiğini düşünmek için “algoritmalara” uygulamak istediğiniz herhangi bir kriter olup olmadığını netleştirebilir misiniz? altında?
Niel de Beaudrap

@NieldeBeaudrap: Aklımda ne matematiksel olarak iyi tanımlanmış algoritmalar vardı. (Fakat, şahsen, gibi arnab 'ın cevabı çok :))
Abuzer Yakaryilmaz

Yanıtlar:


33

Bu makalemde biraz konuştum, HC Williams, "Bilgisayardan Önce Faktoring"

1917 tarihli bir makalede, HC Pocklington, belirli bir formun durdurulamaması için rasgele eleman seçmeye bağlı olan sqrt (a), modulo p'yi bulmak için bir algoritmayı tartıştı. İçinde, “Bunu yapmamız gerekiyor [özdeyişini bulmak zorundayız], yöntemde bir kusur olan Kuadratik Karşılıklılık Yasası'nı kullanarak deneme yaparak yapmalıyız. birini bulmakta hiçbir zorluk olmamalıdır. "

Yani bu, randomize bir algoritmanın ilk açık sözlerinden biridir.


3
Bu gerçekten güzel bir referans. Pocklington'un Algoritması bu yana iptal edildi mi? Teğetsel olarak, özellikle CS'nin içinde ve dışında - işinizi çok seviyorum - özellikle Bachet'in varsayımına yönelik algoritmanız (makalenin bir kopyasını bulmak zordu!) Ama aynı zamanda medeni özgürlükleriniz de işe yarıyor. Errol Morris'in "Bay Ölümünü" izlediniz mi?
Ross Snider

ilginç. bu randomize ilkellik testini hatırlatıyor
Sasho Nikolov 13:12

3
Ve ayrıca bir Las Vegas algoritması! Güzel referans.
David Eppstein

Çok güzel referans.
Jérémie,

bilgisayarların önce faktoring konuşma, herkes biliyorum neyi yok Lehmer Lehmer aslında hiç onun üzerine uygulanan olsun Pocklington algoritması veya başka herhangi bir randomize algoritmaları hakkında bildiği veya elek faktoring bilgisayara ? iki görünüşe göre wikipedia için acc Pocklington-Lehmer ilkelliği testi ile bazı bağlantı var
vzn

28

Buffons iğne algoritması tahmin etmek için , temelde bir Monte Carlo yöntemi , ABD "Manhattan" atom bombası projesi & 1940'larda için Monte Carlo yöntemleri tarih Ulam Von Neumann ve Metropolis tarafından coinvented olduğunu 1777 notta yayına tarihleri.π


8
Aslında bu sorduğum bir soru ile ilgili . Bugünlerde pek çok insanın Buffon'un iğnesi olarak aldığı algoritmayı kimin geliştirdiğini kimse bilmiyor.
Jérémie

daha kesin ifade edersek - şeritler üzerine iğnelerin düşürülmesini içeren bir Clearon Buffon iğnesi algoritması ve bazı kişilerin yanlış bir şekilde Buffon'a atfedilen gibi göründüğü farklı bir şekilde, daha farklı bir şekilde Buffon'a atfedilmiş gibi görünen bu soruda bahsettiğiniz gibi belirgin bir şekilde farklı "rastgele noktaya karşı" algoritması var modern, ancak belirsiz kökenler.
vzn


11

Gauss normal eğri / dağıtım istatistiklerin pek çok basit fiziksel işlemlerle "bilgisayarlı" olabilir. En basitlerinden biri, üçgen bir ızgarada ( 1800'lere tarihlenen "Galton kutusu" olarak da bilinir) bir pim dizisine sahip olan ve pimlerin alternatif sıralar üzerinde 1/2 kare mesafeyle kaydırıldığı bir tahtadır. Aynı pozisyondan tekrar tekrar topları bırakarak, toplar rastgele 0.5 olasılıkla sola veya sağa yer değiştirir. Alt konumlarda kaydedilen kümülatif dağılım, Gauss eğrisini / normal olarak verir.


+1, çünkü şu anda istatistik araştırma grubumuz için bir logo tasarlıyorum ve Galton Box ilk fikrimizdi (ancak bir logo için çok karmaşık olduğu ortaya çıktı).
Konrad Rudolph

10

Benim düşünceme göre, doğal evrim iyi ve oldukça eski bir olasılıksal algoritmadır :-)


1
+1 olmasına rağmen sürecin olası bir tanımı olarak bize çok daha yakın. ;-)
Konrad Rudolph

7
"Algoritma", çözmeye çalıştığı bir sorun olduğunu öne sürer; ama değil. Hayatta kalmak için daha iyi olan hayvanları üretmeye bile "çalışmak" değildir; çevresine adapte olan hayvanlar yaratmak sadece bir yan üründür (nesli tükenme ve kitlesel tükenme olayları belirginleştiği için her zaman elde edilemeyen). Bu bakımdan, evrim yerçekiminden daha fazla bir algoritma değildir; Sadece böyle bir şey oluyor.
Niel de Beaudrap 13:12

MDB öldü! evrim, evrimsel zindeliği seçen genetik bir algoritmadır ve bilim hala bunun tüm etkileriyle yetişmektedir ... yani aktif bir araştırma alanıdır. Çok fazla ya da çok fazla beğenilmemiştir, ancak CS'deki GA'ların olağanüstü başarısı, aslında biyolojik evrim teorisinin gerçekliğinin güçlü matematiksel / bilimsel kanıtıdır. ancak, bazı anahtar yollardan kesinlikle diğer "algoritmalardan" farklı olduğunu kabul edin.
vzn

2
@vzn: Bir "genetik algoritma", her şeyden önce, belirli bir amaç için dayattığımız bir fitnes işlevi seçer. Bu durumda bir şey yapmak için evrimi bir araç olarak kullanıyoruz. Ancak bu biyolojik evrimin her şeyi yapmak için bir algoritma olduğu anlamına gelmez. Yerçekimi analojisini tekrar kullanmak, tüm şelalelerin algoritmalar olduğu anlamında bir anlam ifade ediyor mu?
Niel de Beaudrap 13:12

4
@vzn: Ben sadece "bir algoritmanın" iyi tanımlanmış bir başarı olasılığı parametreleri içermesi gerektiğini iddia ettim, bunu yerine getiren bir ajan olması gerektiğinden bahsetmiyorum . "Evrim" gerçekleştirdiği söylenen tek “ajan” bütün bir ekosistem olacaktır. Ekosistemin başarmaya "çalıştığını" söylemeli miyiz? Antropomorphising yapan bir doğa olduğunuzu kolayca söyleyebilirim . Sadece "bir algoritma uygulamanın" insanlar tarafından uygulanan ya da olmayanlar için bir miktar hedef odaklı niyet gerektirdiğini talep ediyorum. Hedefi olmayan bir süreç hangi anlamda "algoritmayı" temsil edebilir?
Niel de Beaudrap

6

'İlkel' kültürlerde rastgele algoritmalar hakkında bir makale var .

Nerede avlanacağına karar vermek için kulak kepçeleri (örn. Tavuk kemiği, taşlar) kullanılarak randomize bir algoritma görülebilir. Avlanma alanlarının randomize edilmesinin oyun adaptasyonunu ve aşırı avlanmayı önlediği söylenebilir.


0

Einsteins 1905 "mucize" kâğıtlarından biri, rasgele bir yürüyüşün klasik bir fiziksel örneği olan kahverengileşmiş bir hareketti ve partikülün (molekülün) tahmin edilmesi / hesaplanması için bir formül (yani, fiziksel işlem "bilgisayar" ise temelde bir algoritma) verir. Bilinen diğer fiziksel sabitleri verilen çap ve zaman içindeki (rastgele) parçacık yer değiştirmesinin gözlemlenmesi / ölçülmesi. Bu makale aynı zamanda maddenin atom teorisi için erken teorik / deneysel / temel kanıt olarak hizmet etti.


4
Yine evrimde olduğu gibi: hareket rastgele olsa ve rastgele bir yürüyüşle modellenebilse de, bu hangi algoritmayı temsil ediyor? Bazı algoritmalar rastgele yürüyüşler kullanırken, bu tüm rastgele yürüyüşlerin algoritmaları temsil ettiği anlamına gelmez (İngilizce'deki herhangi bir kelime dizisinden daha fazlası, sadece tüm İngilizce nesirleri İngilizce sözcüklerden oluştuğu için, nesirleri temsil eder) anlamına gelmez.
Niel de Beaudrap 13:12

-4

nbennben ve geçerli Çinli kalanlar thm . daha büyük sayılar için, faktoring de dahil olmak üzere sayı teorisi sorularına olası cevapları hesaplar. Her ne kadar o zaman terminoloji "olasılıksal algoritmalar" olarak adlandırılmamış olabilir, ancak bazı durumlarda bu şekilde kullanılıyordu. (bu şekilde, Fermat olasılıksal ana testine de benzerliği vardır.)

Makine aynı zamanda Babbage diferansiyel motoruna (~ 1830'larda) biraz benzerlik gösteriyor . Babbage veya Lovelace'in olasılıksal algoritmalara benzer bir şey öngördüğü tamamen düşünülemez. Makine kesinlikle olabilir kullanılan modern bir teori ödünç ve geçmişte üzerinde atma, olasılık algoritmaları uygulamak.

[1] Lehmer faktoring makinesi

[2] Babbage motoru


Lehmer mod n ve faktoring makinesi


1
Büyük sayılar için olasılıksal cevapları hesapladığı duyguyu açıklayabilir misiniz? Hızlı bir arama, çevrimiçi ortamda hiçbir referans bulamıyor gibi gözükmüyor.
Niel de Beaudrap 15:12

Anladığım kadarıyla, diğer amaçların yanı sıra, eratostenlerin eleklerine benzer büyük test sayılarının daha küçük faktörlerini bulmak için kullanıldı. eğer büyük sayı geçmişse, "muhtemelen bileşik değil" veya "muhtemelen asal" veya "asal aday" dır. ne yazık ki internet tarihsel referanslar ve kökenler [hatta wikipedia] ile çok iyi değil, kitaplar daha iyi. Bu sayfanın alt kısmında , "Lehmer'in çözmeye çalıştığı türden sorunlar ", CA bilgisayar tarih müzesinin baş küratörü Dr. mike williams tarafından
vzn

1
Makine (ler) kesinlikle olasılık algoritmaları uygulamak için kullanılabilir So? - Yapamayan diğer makinelerin aksine?
Jeffε

2
zamanda terminoloji "olasılık algoritmaları" muhtemelen bazı durumlarda bu şekilde kullanıldı atıfta olmayabilir rağmen Varsa [kaynak belirtilmeli] - kanıt "belki asal" sadece olasılık hakkında resmi bir açıklama olduğunu ve değil Sezgisel açıklama, lütfen alıntı yapın. Aksi takdirde, lütfen spekülasyonları durdurun.
Jeffε

Lehmers makalelerinin tam içeriğine sahip değil (ne yayınladığından emin bile olmasanız da), ancak pocklington randomize ref kağıtlarından birinin tek bir satırı tarafından destekleniyor . kriterler nedir Lehmer'in makineyi bir numaradan daha fazla çalıştırması için gerekli olan her şey görünüyor.n1*n2*n3*nx en büyüğü için xmakinede ve sonuç hakkında bir takım makul gözlemler yapın, mutlaka yazılı olarak yazılmamalı .... bana mantıklı geliyor ...
vzn

-6

Burada rastgele algoritmalar ile ilgili kavramların erken ve hatta eski / tarih öncesi başlangıçları bazı durumlar.

  • 2 millenia yaşlı , Eratosthenes Eleklerini düşünün . Algoritmada bir şekilde örtük olan, tüm aralıklara kadar olan ana aralıkları işaretlemek için "erken durma" fikri olacaktır.n/2işaretlendi. "Sonra" uzun aralıkların, söz konusu belirli bir numarayı işaretlemesinin daha az muhtemel olduğu açıktır. Başka bir deyişle, temel sayı teorisinin kabaca görselleştirilmesi, "çoğu bileşik sayının küçük faktörlere sahip olduğu" gerçeğini ve bir grup küçük faktörü test etmenin birçok bileşik sayıyı dışlamak için yeterlidir. Bu kavram muhtemelen Yunanlılar tarafından anlaşılacaktır.

  • şans oyunları ve kumar oyunları çok eskidir. Modern teoride, algoritmalara doğrudan bağlantı yoksa oyunlar da benzerliklere sahiptir. kumar / oyun zarlarının en az beş millenia yaşlı olduğu bilinmektedir .

  • Yunanlılar ve Romalılar da kavramını vardı çizim payet kısa saman çizim kişi kaybetti. zarlara benzer şekilde, bir anlamda tek bir rastgele seçim yapmak için mümkün olan en basit algoritma.

  • tam açıklama, kanlı tarih ve bağlantı bir belirti var. diğer cevapta MDB evrimden bahseder . evrimin bir kısmı da insan savaşına paralel olan doğal seçilimdir - görünüşe göre insan şehirlerinin / toplumlarının evriminin özüdür. Bir anlamda bir savaş, sosyologların ve tarihçilerin hala kesin sebepler üzerinde tartıştıkları "bir şey" için kullanılan yarı yarı algoritma algoritmasıdır. hırsızlık / yağma? kaynakları tahsis etme? bölgeniz değil mi? Politik güç? köle? (vs) Romalılar da adlandırılan bir tüyler ürpertici uygulama vardı kırım(modern kelime gerçekte eskime dayanıyor!) isyan veya korkaklık için ceza olarak rastgele seçilen her 10 askerin kalan askerler tarafından idam edilmesi. unutulmuş ve atavistik bir uygulama gibi görünebilir, ancak intihar için "modern" rastgele bir yarı-oyun olan, modern rus ruleti ile bir miktar paralel gibi görünüyor .


1
İstediğim şey bu değil; Açıkladığınız şekilde bileşik sayıların göreceli sıklığı hakkında mı mantıklı olduklarını soruyorum.
Niel de Beaudrap

1
Korkarım belirsiz genellerle ilgilenmiyorum ve temelde bir "algoritma" nın ne olduğu konusunda hemfikir olduğumuz oldukça açık görünüyor. Sadece "fenomen" den daha fazla ilgileniyorum. Aksi halde, Büyük Patlamadan sonraki tüm kuantum mekaniksel olayları tüm konuyu önemsiz kılan "randomize algoritmalar" örnekleri olarak gösterebiliriz.
Niel de Beaudrap 13:12

1
“yumuşak soru”, sınırsız esnek sınırları olan bir soru anlamına gelmez; "tarihsel bakış", tarihsel revizyonizmle aynı değildir.
Niel de Beaudrap 13:12

2
Bana evrimle ilgili “ipucunuz” ne de beni sevmediğim bir soruya zaman harcıyorsun, ne de önceki sorumdan kaçınmanız saygılıydı. Ve aslında, Yunanlıların muhtemelen neden bahsettiğiniz hakkında bir şey bildiğini, ancak bunun hakkında yazmaya zahmet etmediğini iddia etmeniz, tam olarak "tarihi revizyonizmin" başvurabileceği şeylerden biri. (Belki Arşimed ondalık gösterimi icat etti, ancak herhangi bir kayıt yapmak için zahmet etmedi; sonuçta, Sand Reckoner notasyona oldukça yakındı ve Yunanlılar 10 tabanlı bir sistemi kullandılar. Fakat bu fikri ciddiye almalı mıyız? ? No.)
Niel de Beaudrap 13:12

1
Muhtemeldir ve Yunancalar ile ilgili kendi olasılıklarından bahseden hiçbir kayda sahip olmadığımız gerçeğinden öte, elbette ki çok da zorlanmamıştır. Ancak gerçek bir kaydı varsa, gerçekten belirtebilmelisiniz. Aksi halde, spekülasyon, tarih değil.
Niel de Beaudrap 13:12

-7

JS, sayı teorisinden bahseder. Fermat, 1600'lere dayanan ve Solovay-Strassen ve Miller-Rabin gibi daha modern primallik testlerinin öncüsü olarak hizmet veren olasılıklı bir algoritma olan Fermat primallik testi ile yatırılmaktadır . [Fermat'ın onun hakkında bildiği şeyleri tam olarak saptamaya çalışmak için matematik ve sayı teorisinde uzmanlaşmış bir tarihçiye ihtiyacımız var; sahte bilgisinin yapısı (sahte pozitif) vb.


2
Fermat'ı testini rastgele seçilen tamsayıları asal olmayanlar olarak filtrelemek için bir yöntem olarak kullandığını söyleyebilir misiniz (sadece asalların sahip olduğu ilginç bir özelliğin aksine)? Ya da belki de bunu öneren erken bir yazardan bahseder misiniz?
Niel de Beaudrap 13:12

Belirtildiği gibi, kesin detaylar profesyonel bir tarihçiye bırakılmalıdır. ancak not [zeyilname; bundan söz etmeliydim] fermat'ın olasılık teorisinin kurucu madalyonu olarak kabul edildiğine dair basit tarihsel gerçek , temelleri 1600'lerin ortalarında bir dizi harfe yerleştirdi.
vzn

2
başkasının gösterebileceğine inandığınız şeye dayanarak cevaplar önermek doğru değildir. Yine, bu spekülasyon.
Niel de Beaudrap

3
@vzn: Fermat, Fermat'ın Küçük Teoreminin iyi bir asallık testi olduğunu anlasaydı, 5. Fermat sayısının asal olmadığını hesaplardı . Bu, Euler Fermat'ın ölümünden 60 yıl sonra çarpanlara kadar yapılmamıştı.
Peter Shor

2
@vzn: [kaynak belirtilmeli]
Jeffε
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.