- OpenWorm adalah proyek yang bertujuan membangun model komputasional komprehensif untuk nematoda mikroskopis Caenorhabditis elegans (C. elegans)
- Pendekatannya adalah pemodelan bottom-up yang mensimulasikan data dari eksperimen ilmiah selama 10 tahun terakhir untuk mengamati apakah perilaku cacing dapat muncul
- Kontainer Docker adalah lingkungan yang menggabungkan komponen utama simulasi agar dapat dijalankan di mesin lokal
- Menjalankan model sistem saraf c302
- Menjalankan model tubuh cacing 3D Sibernetic secara paralel menggunakan output model sistem saraf
- Menghasilkan grafik perilaku model sistem saraf dan tubuh
- Menghasilkan video keluaran model tubuh
- Waktu eksekusi simulasi dasar dibatasi agar waktu jalannya tetap masuk akal, dan hanya keluaran parsial yang setara sekitar 5% waktu eksekusi yang ditampilkan dibandingkan contoh output {p:5}
- Persyaratan menjalankan simulasi adalah minimal 60GB ruang kosong, minimal 2GB RAM, lingkungan yang dapat melakukan clone repositori git, dan Docker terpasang
- Alur eksekusi terdiri dari
git clone,./build.shopsional,./run.sh,stop.shsetelah selesai, lalu memeriksa direktori lokaloutput - Jika melewati
./build.sh, image Docker rilis terbaru akan diunduh dari OpenWorm Docker hub - Argumen
-d [num]dapat mengubah waktu simulasi dalam milidetik, dengan nilai default15, dan nilai untuk menghasilkan video contoh lengkap adalah5000 ./run-shell-only.shdigunakan untuk masuk ke kontainer sebelum menjalankanmaster_openworm.pyguna memeriksa atau mengubah codebase yang sudah di-checkout dan bagian dalam sistem yang terpasang- Untuk mengubah item instalasi, edit
Dockerfile; untuk mengubah item eksekusi, editmaster_openworm.py; setelah itu perlu menjalankanbuild.shuntuk membangun ulang image lokal - Output default hanya mengekspor beberapa gambar dan video ke sistem host, sedangkan output simulasi penuh atau data seperti
worm_motion_log.txtharus disalin dari kontainer Docker stop.shmenghapus kontainer dan file terkait, jadi jangan dijalankan sebelum mengambil data- Dokumentasi tambahan tersedia di http://docs.openworm.org, dan repositori memiliki high-level issues serta milestones untuk melacak proyek secara keseluruhan
1 komentar
Komentar Hacker News
302 neuron mungkin tidak terdengar terlalu mengesankan bagi orang yang terbiasa dengan jaringan saraf berparameter 7 miliar+
Namun kesamaan antara jaringan seperti itu dan neuron biologis kira-kira seperti kesamaan antara sepeda dan kuda. Keduanya sama-sama bisa bergerak cukup cepat, tetapi yang satu berevolusi melalui seleksi alam yang keras selama lebih dari 1 miliar tahun dan yang lain adalah mesin logam yang disetel presisi untuk satu tujuan tunggal
Neuron juga demikian, yaitu mesin biologis yang sangat canggih dengan miliaran pasangan basa DNA yang mengendalikan perilaku, dan perilaku emergen neuron dalam sistem biologis maupun sistem AI sama-sama cukup menarik
“Neuron-neuron ini tidak memicu potensial aksi, dan juga tidak mengekspresikan kanal natrium bergantung tegangan” [1]
Karena itu, fakta bahwa kecanduan nikotin bisa muncul jadi makin menarik
“C. elegans juga dapat digunakan untuk mempelajari ketergantungan nikotin karena menunjukkan respons perilaku terhadap nikotin yang mirip dengan mamalia. Ini mencakup respons akut, toleransi, putus zat, dan sensitisasi” [1]
[1] https://en.m.wikipedia.org/wiki/Caenorhabditis_elegans
Sirkuit-sirkuit ini dalam beberapa hal menyerupai jaringan saraf, dan yang terpenting memiliki memori dan keadaan yang bertahan dalam jangka pendek maupun panjang. Setiap neuron lebih mirip makhluk hidup yang mampu belajar dan berperilaku, bukan parameter di dalam model
Sebaliknya, “neuron” virtual adalah abstraksi matematis yang sangat sederhana, dan kompleksitas komputasinya jauh lebih rendah daripada neuron biologis. Connectome hanyalah peta yang sangat kasar tentang bagaimana neuron-neuron saling terhubung, jauh dari cetak biru lengkap sebuah “jaringan saraf”
Mungkin saja neuron biologis bisa dimodelkan sebagai sub-jaringan saraf yang memiliki keadaan di dalam jaringan saraf yang lebih besar, tetapi bahkan jika diasumsikan setara secara komputasional, sama sekali tidak diketahui berapa banyak “neuron” virtual yang dibutuhkan untuk merepresentasikan seluruh perilaku neuron biologis yang penting secara komputasional
Jadi cacing dengan 302 neuron biologis bisa saja secara komputasional setara dengan puluhan miliar neuron virtual, dan kita benar-benar tidak tahu
Karena neuron punya memori, ini mungkin sedikit mirip dengan jaringan LSTM, dan karena jaringan saraf biologis bukan sekadar feed-forward sederhana, jelas lebih dekat ke jaringan saraf rekuren
Karena alasan ini, saya tertawa setiap kali melihat orang berbicara tentang mind uploading. Saya tidak akan berhenti tertawa sampai kita bisa memahami dan memodelkan perilaku relevan neuron biologis, serta mengekstrak keadaan yang dapat digunakan dari neuron hidup. Untuk saat ini itu 100% fiksi ilmiah, dan orang yang berpikir kita akan segera bisa mengunggah pikiran hanya tidak memahami biologi
Jika bekerja dengan prinsip yang serupa, bagaimana cacing bisa melakukan perilaku seperti itu dengan sumber daya sekecil itu? Misalnya, jika ternyata detail karakteristik substrat tidak esensial bagi kemampuan cacing, itu bisa menjadi kabar baik bagi riset AI
Pada 1990-an saya sempat mendapat kesempatan melakukan pekerjaan pemrograman di laboratorium Ralph Siegel, dan dia juga meneliti model connectome cacing seperti ini
https://en.wikipedia.org/wiki/Ralph_Siegel_(scientist)
Dia menggunakan persamaan Hodgkin-Huxley untuk mensimulasikan respons neuron di atas connectome. Seseorang pernah menjelaskan kepada saya bahwa model Hodgkin-Huxley itu seperti memodelkan kaki manusia sebagai tiga balok kaku yang dihubungkan dengan engsel. Cukup berguna untuk banyak model, tetapi bukan penjelasan yang lengkap
Neuron cacing juga tidak menghasilkan spike, sedangkan persamaan HH menjelaskan neuron yang menghasilkan deretan spike, jadi itu mungkin bukan model yang tepat untuk neuron cacing. Neuron seperti itu memang ada pada sistem saraf yang lebih kompleks
Persamaan HH dipakai dalam simulasi karena itulah model matematis yang kita miliki, dan tampaknya masih digunakan dalam proyek OpenWorm. Informasi saya tentang sifat neuron cacing berasal dari cerita yang saya dengar lama sekali, jadi bisa jadi sudah usang
Bahwa pekerjaan ini terus berlanjut adalah hal yang luar biasa, dan mungkin bisa memberi wawasan tentang cara kerja sistem saraf. Tetapi tingkat kesulitannya sangat besar, dan kita sedang maju dengan sangat lambat dan susah payah di wilayah yang penuh ketidaktahuan
Kalau begitu, apakah ini sangat berbeda dari neuron manusia? Saya penasaran bagaimana cara kerjanya dan bisa membaca tentang itu di mana
Saya suka pendekatan bottom-up seperti ini. Karena ini menunjukkan dengan sangat baik betapa banyak yang masih belum kita ketahui tentang kehidupan
Proyek sel minimal syn3.0 milik Craig Venter juga layak disebut di sini. Tim ini membuat sel sintetis hidup yang terdiri dari 473 gen, tetapi sebagian besar dilakukan lewat trial and error, dan fungsi banyak dari gen tersebut sampai sekarang masih belum diketahui
Ulasan terbaru dari tim yang sama ada di https://doi.org/10.1016/j.cell.2022.06.046
Caranya adalah melihat kepingan mana yang bisa dihilangkan tanpa membuat sistem runtuh
Fakta teknis bahwa genomnya disintesis secara artifisial lebih mirip pertunjukan semata, karena pada akhirnya tetap harus dimasukkan ke dalam sel yang sudah ada sebelumnya
Ini mirip seperti menyalin chip yang sudah ada, melepas dan mengganti beberapa bit, lalu mengklaim telah membangun mobil dari nol sambil berkata “lampu sein tidak berfungsi, tetapi secara umum masih bisa dikendarai”
Noam Chomsky mengatakan ada dua jenis AI
Penelitian AI yang pertama adalah hal-hal yang lebih dekat ke rekayasa, seperti mobil swakemudi, penerjemahan bahasa, dan pengenalan objek
Penelitian AI yang kedua adalah upaya mereplikasi kecerdasan organisme, misalnya manusia atau cacing, dengan cara yang konsisten dengan model yang dimiliki ilmuwan kognitif
Contohnya adalah sistem yang dapat mempelajari bahasa manusia apa pun hanya dengan sangat sedikit bimbingan, seperti anak-anak
OpenWorm tampaknya lebih dekat ke nomor 2. Saya ingin tahu jika ada materi menarik untuk mengeksplorasi lebih jauh AI tipe nomor 2 ini
[0]: https://youtu.be/TAP0xk-c4mk
Beberapa tahun lalu saya melihat ini, dan saya selalu berharap ada sedikit kebenaran dalam apokaliptisisme ala Kurzweil
Mula-mula mensimulasikan C. elegans, lalu cukup memperbesar skalanya dan manusia juga bisa disimulasikan, lalu singularitas pun datang
Seberapa sulit sih mensimulasikan cacing bodoh? Kita punya connectome-nya dan tahu semua neuron serta koneksinya, jadi rasanya seharusnya mudah
Lalu saya melihat lebih jauh dan terkejut. Itu tidak berhasil. Beberapa gerakan dasar bisa direproduksi, tetapi banyak perilaku cacing yang sebenarnya masih tetap misteri. Bahkan dari dokumentasinya pun tidak tampak orang-orang akan segera memahaminya, dan beberapa tahun kemudian saya lihat sepertinya akhirnya ditinggalkan
Setahu saya, proyek emulasi otak Eropa yang dulu banyak di-hype juga kandas di tengah dugaan korupsi
Kita sama sekali belum memahami ini, dan tampaknya jalannya masih sangat panjang. Untuk sementara, sepertinya kita harus kembali ke fiksi ilmiah
Setiap sinaps memiliki neurotransmiter tertentu, dan jarak, ukuran, bentuk, jumlah reseptor, serta sel glia yang terkait sangat memengaruhi transmisi. Jarak dan ketebalan akson juga memengaruhi kekuatan sinyal yang dikirim, dan semua ini sangat sulit diukur
Neuron juga sangat peka terhadap kekuatan dan timing sinyal. Misalnya, sinaps inhibitori bekerja dengan membuka lubang pada dinding sel sehingga muatan bocor seiring waktu. Jika lajunya meleset sedikit saja, perilaku sel bisa berubah drastis
Connectome, bisa dibilang, lebih mirip model pra-pelatihan yang luar biasa rumit, dan tiap neuron memiliki sejumlah bobot yang menjelaskan bukan hanya respons langsung terhadap sinyal tetapi juga perilakunya dari waktu ke waktu. Tanpa bobot-bobot itu, emulasi tidak mungkin dilakukan
Ini mengingatkan saya pada episode pertama Devs
https://www.imdb.com/title/tt8134186/
Ada adegan ketika seorang insinyur AI menunjukkan demo yang menyinkronkan gerakan nematoda lalu memprediksi gerakannya di masa depan. Omong-omong, ini serial yang sangat bagus
Gagasan mengekstrapolasi dengan sangat akurat berdasarkan informasi adalah inti serial ini, dan saya berhenti sampai di sini saja
Model connectome otak lalat buah baru-baru ini dirilis[1]
[1] https://hub.jhu.edu/2023/03/09/scientists-complete-first-map...
Bahkan untuk membuktikan bahwa itu mungkin pun kita masih jauh
Jadi proyek seperti neurokernel [1] terlihat agak terlalu ambisius. Meski begitu, semoga berhasil
[1] http://neurokernel.github.io/
Beberapa tahun lalu saya pergi ke acara semacam mini-konferensi OpenWorm di London
Selama beberapa hari, acaranya membahas gerakan cacing. Saya hampir tidak paham apa-apa karena saya tidak tahu apa pun tentang cacing atau gerakan hewan secara umum, dan hanya punya minat amatir pada simulasi kehidupan
Meski begitu, itu sangat menarik, dan menyenangkan sekali bisa bertemu orang-orang yang benar-benar bersemangat tentang topik ini
Kalau simulasinya dihentikan, apakah itu berarti cacingnya dibunuh?
Sebagai anggota pendiri OpenWorm, hampir 10 tahun lalu saya pernah mengemulasikan connectome-nya dan menerapkannya pada robotika
https://youtu.be/YWQnzylhgHc
Dalam eksperimen ini, setiap neuron direpresentasikan sebagai satu program, dan komunikasi antarprogram neuron individual menggunakan pesan UDP. Ada beberapa masalah, dan yang terbesar adalah connectome tersebut sangat sirkular, sehingga dalam eksperimen muncul fenomena yang kami sebut “UDP stacking”. Artinya, pesan UDP sebagai sinyal aktivasi masuk lebih cepat daripada laju yang bisa diproses program
Sekarang saya sedang mengunduh connectome Drosophila yang telah selesai dan membuat emulasinya. Saya sedang mengeksplorasi hypervector untuk mengemulasikan neuron atau neuropil, tetapi masih dalam tahap mematangkan konsep
Saya juga mencoba berbagai gagasan seperti matriks ketetanggaan, functional programming, dan lain-lain. Setiap fungsi merepresentasikan sebagian dari sistem saraf hewan; untuk C. elegans, misalnya, neuron sensorik, interneuron, dan neuron motorik bisa dipandang sebagai tiga fungsi dan program terpisah
Emulasi C. elegans juga telah diimplementasikan sebagai satu aplikasi Python tunggal dan dipindahkan ke berbagai bahasa pemrograman lain, serta menunjukkan emulasi yang jelas pada beberapa robot. Eksperimen ablasi menunjukkan bahwa sistem saraf yang diemulasikan selaras dengan sistem saraf biologis melalui perilaku teramati
Dalam kontinum evolusioner sistem saraf, di satu ujung ada otak cacing dan di ujung lain ada otak manusia. Namun hanya dari sistem saraf cacing saja, kita sudah bisa melihat dengan jelas gerbang menuju kecerdasan umum dan AGI