Apa komponen yang diperlukan untuk membuat agen AI mampu memprogram sendiri?

9

Agen AI sering dianggap memiliki komponen "sensor", "memori", "prosesor pembelajaran mesin" dan "reaksi". Namun, mesin dengan ini tidak selalu menjadi agen AI pemrograman sendiri. Di luar bagian yang disebutkan di atas, apakah ada elemen atau detail lain yang diperlukan untuk membuat mesin yang mampu menjadi agen AI pemrograman sendiri?

Sebagai contoh, sebuah makalah dari 2011 menyatakan bahwa menyelesaikan masalah optimasi memaksimalkan kecerdasan adalah fitur yang harus dimiliki untuk proses pemrograman mandiri, seperti dikutip di bawah ini:

Suatu sistem dikatakan melakukan contoh pemrograman mandiri ketika mengalami pembelajaran mengenai beberapa elemen "infrastruktur kognitif" -nya, di mana yang terakhir didefinisikan sebagai serangkaian fitur "kritis-kritis" sistem yang kabur; dan kecerdasan-kekritisan fitur sistem didefinisikan sebagai "kualitas fitur" -nya, yang dipertimbangkan dari perspektif penyelesaian masalah optimisasi memaksimalkan kecerdasan sistem multi-fitur.

Namun, deskripsi "optimalisasi kecerdasan" ini tidak jelas. Adakah yang bisa memberikan definisi yang jelas atau ringkasan yang lebih baik untuk komponen yang diperlukan untuk agen pemrograman mandiri?

Pertanyaan ini berasal dari beta tertutup 2014, dengan penanya memiliki UID 23.

Mitis
sumber
3
Berikut ini kata terakhir tentang optimasi diri: arxiv.org/abs/cs/0309048
NietzscheanAI
Terima kasih atas kebangkitan konten yang hilang dan bagus dalam versi beta yang hilang. :-)
peterh

Jawaban:

5

Pada level tertinggi, yang dibutuhkan hanyalah berbagai sistem yang telah dibahas untuk memasukkan objek kode. Jika dapat menafsirkan kode sumber / model arsitekturnya dari objek teks yang diformat yang menopangnya, dapat 'memahaminya' dalam hal memiliki model ML yang berguna, dan mengubah kode dengan reaksinya, maka ia dapat memprogram sendiri.

Yaitu, lingkaran dasar di balik kecerdasan yang meningkat secara rekursif itu sederhana. Itu memeriksa sendiri, menulis versi baru, dan kemudian versi baru memeriksa dirinya sendiri dan menulis versi baru, dan seterusnya.

Komponen yang sulit datang di tingkat yang lebih rendah. Kita tidak perlu menciptakan konsep baru seperti 'sensor', yang perlu kita lakukan adalah membangun sensor yang sangat, sangat canggih yang sama dengan tugas memahami kode dengan cukup baik untuk mendeteksi dan menulis perbaikan.

Matthew Graves
sumber
2
Meskipun reaksi sains komputer yang spontan terhadap pernyataan tentang sistem yang memahami kode mereka sendiri sering mengutip masalah penghentian, ternyata pendekatan AI memang memiliki sesuatu yang berguna untuk dikatakan tentang hal itu: cs.stackexchange.com/questions/62393/ …
NietzscheanAI
3
Benar, Masalah Pemutusan adalah teorema yang tidak boleh digunakan untuk memahami sepenuhnya semua kode yang mungkin , tetapi tidak menghentikan seseorang untuk memiliki pemahaman yang baik tentang sebagian besar kode yang sebenarnya Anda temui.
Matius Graves
Secara realistis masalah penghentian hanya benar-benar berlaku untuk 'mesin berputar' yang merupakan konstruksi matematika murni yang tidak dapat benar-benar ada (mereka membutuhkan pita tak terbatas untuk memori tidak terbatas misalnya) dan dapat berjalan untuk waktu yang tak terbatas. Komputer dunia nyata memiliki jumlah memori yang terbatas. Ada beberapa cara untuk menulis perangkat lunak yang dapat diverifikasi secara formal (Idris, Coq). Menggunakan tipe dependen. Batasi ukuran array (yaitu <jumlah atau ram). Tidak mengizinkan program mengubah dirinya dalam memori dengan cara yang bisa melanggar bukti formal. Tidak ada loop tanpa batas. Tanpa byte loop / bagi dengan nol. Dll ...
David C. Bishop