Saya perlu menerapkan pendekatan ke kebalikan dari , yaitu fungsi kuadrat super root (ssrt). Misalnya, s s r t ( 2 ) ≈ 1,56 berarti bahwa 1,56 1,56 ≈ 2 . Saya tidak tertarik pada akurasi / bit-kedalaman tertentu karena saya memahami apa pilihan saya berbeda dengan pendekatan yang lebih mudah menggunakan seri daya.
Wolfram Alpha memberikan solusi simbolik yang bagus dalam hal fungsi Lambert W (yaitu ). Wikipedia memberikan rumus yang sama , serta persamaan e W ( ln ( x ) ) . Mengingat ada cukup banyak informasi tentang komputasi W ( x ) [1] [2], secara teknis itu semua yang diperlukan untuk mengimplementasikan sesuatuuntuk berbagai persyaratan. Aku tahu setidaknya dua buku yang masuk ke detail luas tentang mendekati [3] [4], sehingga bahkan ada banyak ruang untuk mengoptimalkan dari arah itu.
Namun, saya punya dua pertanyaan:
- Sudahkah teknik pendekatan khusus untuk fungsi ini dipublikasikan di mana saja?
- Apakah itu pergi dengan nama lain selain "kuadrat-root" yang akan membuat mencari referensi sedikit lebih mudah?
Wikipedia / Google telah muncul beberapa referensi yang didedikasikan untuk lebih umum "tetration" fungsi yang meliputi sebagai kasus khusus, tetapi kebanyakan dari mereka tampaknya akan lebih diarahkan untuk menjelajahi / mendefinisikan kasus umum.
-
- Tanpa biji, R .; Gonnet, G.; Hare, D .; Jeffrey, D .; Knuth, Donald (1996), "Pada fungsi Lambert W" http://www.apmaths.uwo.ca/~djeffrey/Offprints/W-adv-cm.pdf
- Perpustakaan Digital Fungsi Matematika . http://dlmf.nist.gov/4.13
- Crenshaw, Jack W. (2000), Toolkit Matematika untuk Pemrograman Real-Time.
- Hart, John F. (1978), Perkiraan Komputer.
- Chapeau-Blondeau, F. dan Monir, A. (2002). Evaluasi numerik fungsi Lambert W dan aplikasi untuk menghasilkan derau Gaussian umum dengan eksponen 1/2. Transaksi IEEE pada Pemrosesan Sinyal 50, 2160-2165. http://www.istia.univ-angers.fr/~chapeau/papers/lambertw.pdf
- Minero, Paul. Cepat perkiraan Lambert W . http://www.machinedlearnings.com/2011/07/fast-approximate-lambert-w.html
-
Memperbarui
Setelah melakukan penelitian lebih lanjut dalam beberapa hari terakhir, saya masih belum menemukan jenis hands-on "Crenshaw gaya" pengobatan s s r t ( x ) aku berharap untuk, tapi aku menemukan baru referensi layak didokumentasikan di sini. Pada halaman tiga dalam [ 5 ] , ada bagian berjudul "Aproksimasi Cepat" yang menjelaskan secara detail tentang aproksimasi W ( x ) dalam konteks menghasilkan derau. Sebagai tambahan yang menarik, kepadatan probabilitas "Gaussian noise dengan eksponen 1/2" [di koran] terlihat sangat mirip dengan histogram dalam jawaban Kellenjb untukpertanyaan ini tentang mendeteksi kliping sinyal .
Selain itu, tautan yang diberikan oleh rwong dalam komentar adalah sumber yang bagus untuk benar-benar mengimplementasikan W ( x ) , dan bahkan tautan ke proyek berlisensi BSD penulis yang disebut fastapprox , yang mencakup implementasi yang dijelaskan.
sumber
Jawaban:
Beberapa penusukan numerik dalam gelap menghasilkan yang berikut untuk pendekatan berulang:
Kami sedang mencari solusi y = f (x) di mana y ^ y = x.
Nilai untuk adalah titik tetap dari persamaan di atas, dan secara empiris tampaknya konvergen untuk beberapa nilai x , tetapi untuk nilai x yang lebih besar berosilasi atau menyimpang.y x x
Lalu saya mencoba pendekatan yang mirip dengan iterative square-root Newton:
di mana y * seharusnya mewakili jawaban yang tidak konvergen tetapi optimis yang menjaga akurasi jika Anda menebak nilai awal yang akurat (dalam akar kuadrat y 2 = x, itu y * = x / y).
Jadi saya pikir mungkin ada solusi konvergen yang lebih baik:
Kemudian saya menemukan sesuatu yang menarik.
(Seseorang mungkin bisa menunjukkan bahwa ini setara dengan Newton-Raphson dalam beberapa hal, tapi saya pikir itu di luar kemampuan saya.)
sumber