SORU
11 Ocak 2013, Cuma


Nasıl pi benim hesaplama doğru olup olmadığını belirlemek için?

Çeşitli yöntemler pi sayısının rakamlarını sıralı olarak veren bir program uygulamaya çalışıyordum. Taylor series yöntemi denedim, ama çok yavaş yakınsama bir süre sonra online değerleri ile benim sonuç ben karşılaştırıldığında) kanıtladı. Her neyse, daha iyi algoritmalar çalışıyorum.

Bu yüzden, tüm algoritmalar ile program bir sorun üzerinde takılıp kaldım yazarken, Nasıl hesapladım o n basamak doğru olduğunu nereden bileceğim?

CEVAP
11 Ocak 2013, Cuma


Pi sayısının en çok basamağını için geçerli dünya rekoru sahibi ben olduğuma göre, benim two cents eklerim:

Aslında yeni bir dünya rekoru ayarı değilsen, yaygın bir uygulama sadece bilinen değerlere karşı hesaplanan rakamı doğrulamak için. Bu kadar basit yani.

Aslında, onlara karşı hesaplamaların doğrulanması için basamak parçacıkları listeleyen bir web sayfası var: http://www.numberworld.org/digits/Pi/


Ama dünya rekoru topraklarına vardığında, karşı karşılaştırmak için bir şey yok.

Tarihsel olarak, hesaplanan rakam doğru olduğunu doğrulamak için standart yaklaşım basamak ikinci bir algoritma kullanarak yeniden. Eğer hesaplama da kötü giderse, sonunda rakam uyuşmaz.

Bu genellikle zaman iki katından daha fazla miktarda ihtiyaç duyulan ikinci algoritma genellikle daha yavaş olmasıdır). Ama daha önce hesaplanan basamak keşfedilmemiş toprakları ve yeni bir dünya rekoru merak ettik hesaplanan rakamı doğrulamak için tek yolu bu.


Süper kayıtları ayarı olduğu günlerde, AGM algorithms iki farklı yaygın olarak kullanılmıştır:

Bu uygulamak oldukça kolay olduğunu O(N log(N)^2) Her iki algoritmaları vardır.

Ancak günümüzde işler biraz daha farklı. İki hesaplamaları gerçekleştirmek yerine, son üç dünya rekoru, sadece bir hesaplama olarak bilinen en hızlı formülü (Chudnovsky Formula) kullanıldı:

Enter image description here

Bu algoritma çok daha zor uygulamaktır, ama çok AGM algoritmaları daha hızlı.

Sonra biz ikili basamak BBP formulas for digit extraction kullanarak doğrulayın.

Enter image description here

Bu formül keyfi ikili basamak hesaplamak için izin verirolmadanbilgisayar önce tüm rakamları. Son birkaç hesaplanan ikili rakamları doğrulamak için kullanılır. Bu nedenleçoktam bir hesaplama daha hızlı.

Bunun avantajı:

  1. Sadece pahalı bir hesaplama gerekli değildir.

Dezavantajı:

  1. Bailey–Borwein–Plouffe (BBP) formül uygulaması gerekiyor.
  2. Ek bir adım ondalık ikili sayı tabanı dönüştürme doğrulamak için gereklidir.

Neden doğrulama son birkaç basamak basamak tüm doğru olduğunu ima bazı ayrıntılar bi oldum. Ama kolay herhangi bir hesaplama hatası son basamağa yaymak beri bu.


Şimdi bu son adım (dönüşüm doğrulama) aslında oldukça önemlidir. Önceki dünya rekoru kıran biriaslında bizi aradıbaşlangıçta, çünkü bu, işe yaradı nasıl yeterli bir açıklama vermedim.

Blogumun bu kod parçası buldum:

N = # of decimal digits desired
p = 64-bit prime number

Enter image description here

Aritmetik ve B kullanarak temel 10 ikili Bir aritmetik hesaplama.

enter image description here

A = B, Daha sonra ise "çok yüksek olasılık", dönüşüm doğru değildir.


Daha fazla okumak için, blog benim yazı bakınPi - 5 Trillion Digits.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Random Act of Kindness Video Contest

    Random Act o

    18 EYLÜL 2012
  • Muse

    Muse

    28 EYLÜL 2006
  • Peyton

    Peyton

    28 Aralık 2008