Gagasan formal untuk kompleksitas energi dari masalah komputasi

35

Kompleksitas komputasi mencakup studi kompleksitas ruang atau waktu dari masalah komputasi. Dari perspektif komputasi mobile, energi adalah sumber daya komputasi yang sangat berharga. Jadi, Adakah adaptasi yang dipelajari dengan baik dari mesin Turing yang memperhitungkan energi yang dikonsumsi selama eksekusi algoritma. Juga, Apakah ada kelas kompleksitas energi yang ditetapkan untuk masalah komputasi?

Referensi dihargai.

Mohammad Al-Turkistany
sumber
1
Konsumsi energi bergantung pada mesin dan merupakan masalah praktis, yaitu konstanta yang tersembunyi dalam analisis klasik biasanya menarik (setiap perbedaan antara runtime dan konsumsi energi).
Raphael
6
Secara teoritis, Anda dapat melakukan langkah-langkah yang dapat dibalik tanpa biaya energi. Secara praktis, seseorang dapat membuat chip yang melakukan langkah yang dapat dibalik dengan biaya energi yang jauh lebih rendah daripada langkah yang tidak dapat dibalik. Bagaimana ini diterjemahkan ke dalam teori tidak jelas, tapi mungkin kita dapat mendefinisikan model mesin Turing yang melakukan langkah-langkah reversibel dengan biaya dan langkah-langkah non-reversibel pada biaya β , dan mulai menalar tentang konsumsi energi secara teoritis. Setidaknya itu mungkin lebih baik daripada mengangkat tangan Anda dengan putus asa dan mengatakan "itu semua tergantung mesin." αβ
Peter Shor
Susanne Albers menulis survei yang sangat baik dalam Komunikasi ACM, algoritma hemat energi. cacm.acm.org/magazine/2010/5/87271-energy-efisien-algorithms/…
Mohammad Al-Turkistany

Jawaban:

28

Apakah ada adaptasi yang dipelajari dengan baik dari mesin Turing yang memperhitungkan energi yang dikonsumsi selama eksekusi algoritma? Tidak!

Tapi mungkin Anda bisa membuat satu. Mungkin saja Anda dapat membagi langkah-langkah mesin Turing menjadi reversibel dan non-reversibel (yang non-reversibel adalah saat informasi hilang). Secara teoritis, hanya langkah-langkah non-reversibel yang menghabiskan energi. Biaya satu unit energi untuk setiap bit yang dihapus secara teori akan menjadi ukuran yang tepat.

kTln2Tkαβ

Saya tidak tahu bagaimana mesin Turing dengan beberapa langkah reversibel berhubungan dengan chip dengan beberapa sirkuit reversibel, tapi saya pikir kedua model layak diselidiki.

Peter Shor
sumber
Peter, dalam diskusi tentang Tesis Church-Turing yang Efisien, saya ingat pernah membaca tentang memperhitungkan jumlah energi yang digunakan dalam perhitungan. Apakah Anda tahu jika ada referensi yang bagus tentang topik tersebut? (Saya dapat memposting ini sebagai pertanyaan terpisah jika Anda lebih suka.)
Kaveh
4
Jika Anda hanya khawatir tentang faktor polinomial, seperti halnya Anda untuk tesis Church-Turing yang Efisien, semuanya berjalan dengan baik, karena Anda bisa mendapatkan perhitungan yang dapat dibalikkan (jumlah energi yang sewenang-wenang kecil dikeluarkan) dengan hanya peningkatan faktor waktu yang konstan, dan ruang tidak boleh lebih besar dari waktu. Saya pikir saya melihat survei yang bagus tentang hal ini. Semoga seseorang dapat menemukannya.
Peter Shor
Terima kasih Peter, saya rasa saya mungkin menemukannya sendiri menggunakan Google (saya akan memposting pertanyaan jika saya tidak menemukan).
Kaveh
ide-ide menarik yang mengarah pada pertanyaan, berapa banyak algoritma sewenang-wenang dapat diubah menjadi perhitungan reversibel? seperti dalam komputasi qm ini selalu mungkin dengan bit "ancilla" tetapi mempertahankan "goresan" ini dapat mengurangi efisiensi algoritma dalam beberapa kasus dan mungkin sejauh ini tidak begitu mengerti berapa banyak. note williams memiliki beberapa gagasan tentang perhitungan reversibel yang efisien ruang
vzn
Bahkan jika kita memiliki mesin perhitungan reversibel, masih ada beberapa biaya energi "tersembunyi": Ketika kita ingin menjalankan komputasi baru, kita harus membangun bank memori baru, atau menghapus beberapa data yang ditulis sebelumnya untuk membuat ruang untuk input dan perhitungan baru. Bagaimana ini memengaruhi jawaban? (mis. apakah perhitungan reversibel biasanya mengasumsikan akses ke bagian memori "kosong" yang diinisialisasi? tampaknya seperti curang ...)
usul
7

Belum ada kelas kompleksitas energi, tetapi pasti ada banyak minat dalam mempelajari cara merancang algoritma yang hemat energi dalam beberapa model. Saya tidak akrab dengan seluruh tubuh pekerjaan, tetapi satu titik masuk adalah pekerjaan yang dilakukan Kirk Pruhs pada komputasi berkelanjutan. Kirk adalah seorang ahli teori dengan keahlian dalam penjadwalan dan perkiraan, dan baru-baru ini menjadi sangat aktif di bidang ini, sehingga perspektifnya bagus untuk orang-orang algoritmik.

ps poin gabgoh tentang prinsip Landauer adalah bagus. Jika Anda ingin mempelajari lebih lanjut tentang hubungan antara energi dan informasi, tidak ada sumber yang lebih baik daripada buku Demon Maxwell .

Suresh Venkat
sumber
+1 Terima kasih Suresh atas jawaban Anda.
Mohammad Al-Turkistany
5

Ini bukan jawaban langsung sama sekali, tetapi ada beberapa koneksi yang berpotensi berguna untuk menggambar / meneliti program yang akan dilakukan di sepanjang garis Stay dan karya Baez 'pada termodinamika algoritmik: http://johncarlosbaez.wordpress.com/2010/10 / 12 / algoritmik-termodinamika /

Namun perlu diperhatikan bahwa karya ini tidak menarik konsekuensi fisik yang sebenarnya - melainkan menggambarkan hubungan yang, sejauh ini, murni matematis.

sclv
sumber
5

Kei Uchizawa dan rekan penulisnya mempelajari kompleksitas energi dari ambang batas sirkuit. Mereka mendefinisikannya sebagai jumlah maksimum ambang gerbang yang menghasilkan 1 atas semua input yang mungkin.

Karena ini bukan tentang mesin Turing, ini tidak menjawab pertanyaan. Tapi, saya harap makalah mereka memberikan beberapa ide. Halaman webnya berisi pointer. http://www.nishizeki.ecei.tohoku.ac.jp/nszk/uchizawa/

Yoshio Okamoto
sumber
4

Ada beberapa pembenaran untuk menggunakan model memori eksternal sebagai model perhitungan yang sadar energi. Paolo Ferragina membahas ini secara singkat dalam pidatonya yang diundang di ESA 2010, tetapi saya tidak tahu apakah ada hasil yang dipublikasikan. Ide dasarnya adalah bahwa jika jumlah I / O mendominasi waktu perhitungan, maka energi yang diperlukan untuk I / O tersebut mungkin akan mendominasi total konsumsi energi.

The laporan dari Lokakarya Pertama di Ilmu Manajemen Daya terutama yang terdapat pertanyaan dan masalah terbuka. Saya tidak tahu apa yang terjadi pada Lokakarya Kedua , tetapi halaman web mengatakan bahwa akan ada masalah khusus tentang Komputasi Berkelanjutan yang didedikasikan untuk pendekatan teoretis, matematis, dan algoritmik untuk komputasi berkelanjutan.

Jouni Sirén
sumber
0

berikut adalah beberapa referensi / sudut pandang yang lebih baru / lainnya tentang pertanyaan yang tampaknya dalam ini dengan penelitian yang sedang berlangsung. seperti yang ditunjukkan oleh P.Shor daerah sejauh ini tampaknya menunggu survei komprehensif, standardisasi, dan / atau unifikasi. ada pendekatan yang lebih abstrak / teoretis yang tercantum di urutan ke-1, diikuti oleh pendekatan yang lebih diterapkan: algoritma hemat energi, pengukuran penggunaan energi di ponsel untuk penyortiran, studi faktor-faktor dalam VLSI yang memengaruhi kompleksitas energi / waktu.

vzn
sumber
-3

Kompleksitas waktu dan ruang tidak tergantung pada perangkat. Saya tidak melihat cara untuk membuat perangkat kompleksitas energi independen.

WWW

O(Wf(n))=O(f(n))

Pratik Deoghare
sumber
Saya memilih-bawah jawaban ini karena saya pikir itu melenceng. Saya pikir ada beberapa pembenaran teoretis untuk menempatkan batas bawah pada konsumsi energi dari algoritma apa pun berdasarkan prinsip Landauer. Saya menemukan pertanyaan itu sangat masuk akal.
gabgoh
@ gabgoh Saya khawatir ada batas bawah umum yang harus membuat asumsi keseragaman yang akan mengalahkan tujuan. @TheMachineCharmer Bahkan, prosesor nyata dapat memiliki urutan perintah yang berbeda dengan efisiensi. Upvote, meskipun paragraf kedua Anda membingungkan saya.
Raphael
4
αβαβαβ
1
@Konrad: gabgoh merujuk pada Rolf Landauer, bukan Lev Landau.
Peter Shor
1
@ Peter: terima kasih atas informasinya. Sebagai catatan, saya berbicara tentang Edmund Landau, penemu notasi O-besar. Saya pikir itulah yang disebut gabgoh dengan "prinsip Landauer".
Konrad Rudolph