Atractor Aneh (Strange Attractors)
(blog.shashanktomar.com)- Proyek yang memvisualisasikan Strange Attractors dengan memanfaatkan Three.js, memperlihatkan proses bagaimana pola yang kompleks dan indah dihasilkan dari persamaan matematika yang sederhana
- Menjelaskan konsep dasar Dynamical Systems dan Chaos Theory, dengan fokus pada keadaan sistem yang berubah seiring waktu dan aturan yang menentukan evolusinya
- Strange attractor didefinisikan oleh empat ciri: struktur fraktal, sensitivitas terhadap kondisi awal, lintasan nonperiodik, dan keteraturan di dalam kekacauan
- Menunjukkan efek kupu-kupu melalui visualisasi Thomas Attractor, serta memperlihatkan bagaimana perubahan sangat kecil pada parameter
amenghasilkan pola yang sepenuhnya berbeda - Mewujudkan visualisasi real-time dengan menghitung dan merender ribuan partikel secara efisien menggunakan teknik ping-pong rendering berbasis GPU
Sistem Dinamis dan Teori Chaos
-
Sistem dinamis adalah cara memodelkan fenomena yang berubah seiring waktu secara matematis, mencakup berbagai contoh seperti pergerakan planet, pertumbuhan populasi, dan pasar saham
- Terdiri dari phase space yang merepresentasikan semua kemungkinan keadaan sistem, serta dynamics yang memindahkan sistem dari satu keadaan ke keadaan berikutnya
- Misalnya pada model pertumbuhan populasi, skala populasi dan laju pertumbuhan membentuk keadaan dalam phase space, sementara tingkat kelahiran, kematian, dan daya dukung lingkungan menentukan dynamics
-
Chaos theory adalah bidang yang mempelajari sistem yang tidak dapat diprediksi, dan banyak fenomena alam termasuk dalam kategori sistem nonlinier yang sensitif seperti ini
- Menjelaskan fenomena ketika aturan tetap ada, tetapi prediksi menjadi mustahil karena informasi yang tidak lengkap
- Ciri yang paling representatif adalah efek kupu-kupu, di mana perbedaan kecil pada kondisi awal dapat mengubah hasil secara drastis
Attractor dan Strange Attractor
-
Attractor adalah himpunan keadaan yang menjadi tempat sistem berkumpul seiring waktu, misalnya titik diam pada pendulum
- Konvergensi menuju attractor terjadi karena faktor seperti stabilitas, dissipation, dan contraction
-
Strange attractor adalah attractor yang menunjukkan lintasan tak terduga akibat persamaan nonlinier yang kompleks, dengan ciri-ciri berikut
- Struktur fraktal: pola kompleks yang berulang pada berbagai skala
- Sensitivitas terhadap kondisi awal: perubahan kecil menghasilkan hasil yang sama sekali berbeda
- Lintasan nonperiodik: tidak mengulangi jalur yang sama
- Keteraturan di dalam kekacauan: tampak acak, tetapi memiliki struktur tertentu di dalamnya
Efek Kupu-Kupu dan Visualisasi Thomas Attractor
- Efek kupu-kupu adalah fenomena ketika perubahan kecil menciptakan perbedaan besar dalam jangka panjang, sering dijelaskan dengan analogi “kepakan sayap kupu-kupu di Tiongkok memicu badai di Karibia”
- Jika nilai parameter
apada Thomas Attractor diubah menjadi 0.10, 0.13, 0.19, 0.21, dan seterusnya, lintasan partikel dan bentuk keseluruhan berubah sepenuhnya - Jika keadaan awal diubah menjadi
cubedansphere surface, partikel mengikuti jalur yang berbeda, tetapi pada akhirnya tetap berkumpul ke keadaan attractor yang sama
Detail Implementasi
- Visualisasi menggunakan Three.js untuk menghitung dan merender banyak partikel langsung di GPU
- Teknik ping-pong rendering digunakan untuk meminimalkan transfer data antara CPU dan GPU, dengan dua frame buffer object (FBO) yang dipakai secara bergantian
- Buffer
pingdanpongmasing-masing menyimpan keadaan saat ini dan keadaan berikutnya - Program shader memperbarui posisi setiap partikel sesuai persamaan attractor
- Pada setiap frame, buffer ditukar sambil merender keadaan partikel yang baru
- Buffer
Referensi dan Materi Tambahan
- Materi terkait yang dikutip mencakup visualisasi attractor Maxim, Wikipedia: Attractor, List of Chaotic Maps, dan WebGLFundamentals: Ping Pong Rendering
- Sebagai contoh tambahan, disajikan kasus visualisasi attractor 3D dari chaoticatmospheres.com, dynamicmath.xyz, dan Reddit r/generative
- Umpan balik dikumpulkan melalui halaman GitHub Discussion blog tersebut, dengan rencana integrasi ke blog di masa mendatang
1 komentar
Komentar Hacker News
Visualisasi ruang fase 3D seperti ini benar-benar menunjukkan betapa banyak informasi yang bisa kita peroleh
Tapi pada saat yang sama juga terasa betapa banyak kekayaan yang kita lewatkan di dunia berdimensi lebih dari tiga
Saya jadi penasaran apakah dimensi 4 ke atas bisa divisualisasikan, misalnya dengan melihat irisan 3D, atau mengikuti partikel Lagrangian sambil menampilkan perubahan nilai D lewat warna
Visualisasi seperti ini mengingatkan pada masa awal mekanika statistik, ketika Boltzmann dan Gibbs berdebat tentang ruang fase dan konsep kesetimbangan
Kita bisa mendekatinya lewat penalaran atau pemahaman parsial, tetapi tidak bisa benar-benar grasp sepenuhnya
Bahkan menurut saya, kemampuan berpikir 3D itu sendiri adalah kemampuan adaptif besar yang dimiliki manusia dibanding banyak hewan lain
Keren sekali! Akan menyenangkan kalau ada fitur untuk mengubah nilai a dan b lalu menemukan pola strange attractor sendiri
Mode bebas semacam itu juga sepertinya akan seru
Di mobile ada di bilah menu bawah, dan di desktop langsung terlihat
Saat remaja, sekitar 25 tahun lalu, saya pernah membuat sendiri visualizer attractor chaos 2D
Lalu tiba-tiba terpikir, “bagaimana kalau ini bukan divisualisasikan, melainkan dirender sebagai suara?”
Saya memetakan frekuensi ke sudut dan amplitudo ke besarannya, dan saat mengutak-atik format WAV secara langsung saya pertama kali belajar konsep endianness
Hasilnya tidak sampai benar-benar tak bisa didengar, dan rasanya seperti efek suara komputer di film fiksi ilmiah lama
Misalnya Hypster by Nonlinear Circuits dan Orbit 3 by Joranalogue, yang sangat menyenangkan karena menambahkan gerakan yang tak terduga namun tetap periodik ke dalam suara
Waktu SMA, hampir seperti di zaman Jurassic, saya sering bermain-main dengan attractor
Dulu di komputer 486 butuh 20–30 menit untuk menggambar satu gambar, jadi sekarang bisa render 3D real-time benar-benar terasa menakjubkan
Pengalaman seperti ini sangat memengaruhi cara berpikir sistemik saya tentang orbit, ketidakstabilan, dan hal-hal sejenis
https://fractint.org/
Visualisasi ini mengingatkan saya pada Phong
https://phong.com/
Minggu ini secara kebetulan saya membuka lagi proyek generator fraktal yang saya buat saat kelas 11 SMA pada tahun 2002, lalu memodernkannya dengan pustaka grafis SFML
https://github.com/gradientwolf/fractals_SFML
Melihat postingan ini benar-benar membuat saya senang. Proyek-proyek kecil seperti ini membawa saya kembali ke masa rasa ingin tahu yang sederhana dan murni saat remaja
Soal pernyataan “saya tidak tahu apakah ini perluasan yang akurat secara matematis”, sebenarnya perluasan ke dimensi lebih tinggi memang tidak punya satu jawaban benar
Bisa ada banyak kemungkinan, atau bahkan tidak ada sama sekali
Meski begitu, upaya yang ‘cukup mendekati’ seperti ini tetap menarik
Misalnya kalau melihat upaya orang-orang membuat Mandelbrot 3D, tidak ada jawaban yang sempurna, tetapi ada kemungkinan-kemungkinan yang sangat menarik
Benar-benar indah. Rasanya seperti melihat tarian kawanan starling
https://www.youtube.com/watch?v=V4f_1_r80RY
Cara penjelasan teori matematikanya sangat intuitif dan segar
Akan sangat menarik jika dia juga menulis tentang topik-topik lain
Visualisasi ini mengingatkan saya pada modul “strange” milik xscreensaver