Jika masalah kedua jenderal itu tidak terpecahkan, bagaimana mungkin kita manusia sepakat tentang berbagai hal?


25

Jika masalah kedua jenderal itu tidak terpecahkan, bagaimana mungkin kita manusia sepakat tentang berbagai hal?

Maksud saya, kita berkomunikasi setiap hari dan memiliki keterbatasan yang sama dengan masalah komunikasi yang ditangani oleh ilmu komputer. Mengapa itu tidak memengaruhi kita?


18
Siapa yang memberitahumu manusia pernah menyetujui apa pun selain pertentangan mereka?
babou

7
Masalah "tidak dapat dipecahkannya" dari masalah "dua jenderal" terbatas pada konteksnya, yaitu, dalam sistem terdistribusi yang sama sekali tidak sinkron dengan saluran komunikasi yang tidak dapat diandalkan dan tidak dapat dipercaya. Dalam kehidupan kita sehari-hari, orang bisa "mentolerir" mereka. Ngomong-ngomong, saya baru saja menjawab pertanyaan lain yang terkait erat dengan pertanyaan Anda.
hengxin

4
@ Babou Sayangnya, orang-orang (dengan prior yang sama) bahkan tidak bisa setuju untuk tidak setuju .
hengxin

3
Yah, secara umum tidak terpecahkan . Masih ada banyak kasus di mana Anda dapat mengabaikan masalah dan menyelesaikannya - sebagian besar komunikasi manusia bergantung pada ini. Alasan utama itu adalah masalah yang signifikan dalam ilmu komputer cukup banyak alasan skala - dalam sistem apa pun yang sudah harus didistribusikan, Anda mungkin mendapatkan masalah ini sesekali, mungkin bahkan setiap hari atau lebih. Ini adalah masalah besar jika Anda sangat bergantung pada kebenaran, tanpa mekanisme koreksi diri. Analog manusia yang lebih dekat adalah bisikan / telepon Cina - sistem terdistribusi tanpa koreksi kesalahan.
Luaan

2
@AlecTeal Saya tidak tahu dari mana kepastian yang pasti untuk mengetahui tentang bagaimana pertanyaan Ilmu Komputer yang bagus itu berasal, tetapi dalam hal apapun: tolong bersikap baik. Melecehkan orang lain tidak akan ditoleransi di sini. (menghapus bagian komentar Anda yang tidak terlalu bagus)
Raphael

Jawaban:


29

Saya tidak setuju dengan jawaban lain bahwa saluran komunikasi perlu dimodelkan secara berbeda. Malice tidak relevan, pesan sederhana yang hilang dengan probabilitas tidak nol cukup untuk membuat masalah dua jenderal. e-mail dan IM, misalnya, memiliki peluang rendah untuk menjatuhkan pesan. Panggilan telepon dapat mengalami gangguan, sehingga dengan masalah kedua jenderal Anda perlu mengkonfirmasi apakah orang lain mendengar apa yang Anda katakan, ad infinitum. Namun saya sering menggunakan saluran ini untuk membuat perjanjian dengan orang lain.

Apa yang gagal dipecahkan oleh masalah "dua jenderal" adalah untuk mendapatkan jaminan pengetahuan umum. Dalam kehidupan nyata kita tidak memerlukan pengetahuan umum formal untuk melanjutkan. Karena itu tujuan dalam situasi yang paling praktis perlu dijelaskan secara berbeda dari tujuan dalam masalah dua jenderal.

Kami setuju bahwa kesepakatan "kemungkinan besar". Saya mungkin tidak mau menyerang kecuali saya yakin Anda akan menyerang, tetapi saya bersedia berjalan ke kedai kopi untuk bertemu dengan Anda asalkan probabilitas kegagalan komunikasi tidak terlalu tinggi daripada kemungkinan Anda gagal tiba karena lalu lintas. Berbeda dengan para jenderal, saya akan mengambil kesempatan Anda bertemu saya.

Jika Anda pernah memiliki seseorang yang menjelaskan sesuatu tiga kali kepada Anda dengan cara yang berbeda ketika Anda mendapatkannya pertama kali, atau pernah seseorang meminta Anda untuk mengkonfirmasi sesuatu yang sudah Anda konfirmasikan dua kali, maka itu karena Anda telah mencapai ambang batas " kemungkinan cukup "sebelum mereka mencapai milik mereka.

Pilihlah psikologi, filsafat, atau biologi evolusi sebagai bidang yang benar untuk mencari jawaban atas pertanyaan berikutnya, mengapa kita tidak benar-benar membutuhkan jaminan penuh pengetahuan umum :-)

Ini juga berhubungan kembali dengan masalah praktis dalam komputasi. Misalnya ketika kita menggunakan kode koreksi kesalahan tunggal untuk "memvalidasi" bahwa simbol dalam pesan telah tiba dengan benar, yang kita lakukan hanyalah menerima bahwa probabilitas kesalahan ganda dapat diabaikan untuk sementara waktu. Kemudian nanti dalam protokol kita mungkin memiliki CRC, untuk lebih mengurangi kemungkinan kesalahan yang tidak terdeteksi. Tak satu pun dari ini menyelesaikan masalah dua jenderal, tetapi itu sudah cukup bagi saya, bank saya dan pedagang semua untuk "setuju" bahwa transaksi kartu kredit telah terjadi, dengan kemungkinan kecil bahwa kami tidak setuju.


3
Malice adalah signifikan dalam arti praktis karena membatasi tingkat kepastian yang dapat dicapai. Jika seseorang mengasumsikan gangguan adalah hasil dari faktor kebetulan acak dan bukan kedengkian, maka untuk setiap probabilitas p > 0, seseorang dapat merancang protokol sedemikian rupa sehingga kemungkinan "konsensus" yang keliru akan lebih kecil dari p dan probabilitas konsensus yang berhasil adalah lebih besar dari 1-p. Melawan musuh yang jahat dan mahatahu, algoritma seperti itu mungkin tidak dapat mencapai banyak hal.
supercat

3
@supercat: Oke. Tapi poin saya adalah bahwa kedua masalah jenderal yang menyangkut si penanya, tetap menjadi masalah ketika kejahatan dikecualikan: ketidakmungkinan adalah konsekuensi dari kesalahan, bukan kejahatan. Saya akan mengatakan bahwa idealnya masalah harus dibingkai sedemikian sehingga pesan yang hilang tidak perlu menjadi konsekuensi dari tindakan musuh, kita hanya tahu bahwa beberapa pesan tersesat. Masalah jenderal Bizantium secara eksplisit memperkenalkan pemain lawan.
Steve Jessop

Jadi, kedua jenderal harus terlebih dahulu setuju untuk minum kopi bersama. Kemudian mereka dapat merencanakan pertempuran tatap muka, yang memberi mereka saluran yang andal!
David Richerby

1
@ DavidVicherby: memang, ini bekerja sangat baik di teater perang yang ditunjuk dengan baik dengan kedai kopi. Ilmuwan komputer sangat jarang menemukan medan lain, sehingga para jenderal yang sebenarnya cukup banyak pada mereka sendiri sejauh menyangkut teori CS. Dan para jenderal eksistensialis tidak memiliki saluran yang dapat diandalkan bahkan berhadap-hadapan, sehingga mereka tidak pernah menyerang siapa pun karena mereka tidak dapat memastikan sekutu mereka ada, apalagi musuh.
Steve Jessop

Karena ilmu komputernya dan Anda dapat menebak kapasitas saluran, jawaban ini mungkin lebih baik jika dikaitkan dengan dan membahas teorema Shannon: en.wikipedia.org/wiki/Noisy-channel_coding_theorem
daniel

18

Sentral (pun intended) untuk masalah Dua Jenderal adalah musuh jahat di antaranya. Meskipun ini memodelkan saluran yang tidak bisa diandalkan, ia memodelkannya dengan cara yang biasanya tidak kita temui. Dalam masalah ini, pesan mungkin melewati tangan musuh dan tidak ada batasan waktu, verifikasi, enkripsi atau hal lain yang belum saya pikirkan.

Ketika kita berkomunikasi dalam praktik, pertama saluran yang kita gunakan tidak diharapkan tidak bisa diandalkan dengan cara ini. Saluran bisa berisik, tentu saja, tapi itu berbeda dengan menjadi jahat. Probabilitas bahwa saluran yang berisik pada tingkat bit dapat secara acak menghasilkan tidak hanya pesan yang valid yang memenuhi kode koreksi kesalahan apa pun yang kami gunakan, tetapi juga valid karena masuk akal bagi penerima sangat rendah. Kami juga dapat menggunakan hal-hal seperti kriptografi kunci publik untuk mengenkripsi dan / atau menandatangani pesan, membuatnya lebih sulit lagi untuk memalsukan pesan nyata. Ketiga, bagian penting dari komunikasi kita adalah sensitif terhadap waktu - kita benar-benar berbicara kepada orang-orang sehingga tidak ada penundaan dalam respons, dalam hal ini kita harus merasa puas bahwa orang yang kita ajak bicara adalah orang yang kita maksud untuk berbicara. untuk.

Dalam sebagian besar kasus, kami hanya berasumsi bahwa tidak ada sumber kesalahan yang signifikan dalam pesan, dan kami lolos begitu saja. Kita dapat membayangkan sebuah skenario di mana benar-benar ada orang jahat yang merusak saluran itu, tetapi kita menemukan beberapa hal; crypto kunci publik masih efektif, tetapi yang lebih penting upaya dan kekuatan yang dibutuhkan untuk secara akurat merusak sebagian besar komunikasi jauh melampaui apa yang layak. Jika tidak, sinyal militer intelijen akan jauh lebih efektif daripada itu (bukan itu tidak efektif, itu hanya akan lebih baik).

Perhatikan bahwa meskipun saya sebagian besar telah menyentuh komunikasi yang dimediasi komputer / mesin, argumen yang sama dapat dibuat untuk komunikasi antarpribadi - sumber kebisingan biasanya tidak dapat memalsukan seluruh pesan, kami memiliki sistem koreksi untuk mereka yang memperkenalkan acak, level rendah Kebisingan, dan upaya itu tidak layak di hampir setiap kasus untuk menjadi penyerang jahat yang cukup banyak sumber daya dan termotivasi.


7
AFAIK, masalah dua jenderal tidak memerlukan saluran komunikasi berbahaya, hanya yang tidak bisa diandalkan. Masalahnya bukan pada pesan yang rusak atau dimodifikasi; hanya dengan mereka tidak diterima: en.wikipedia.org/wiki/…
Ajedi32

1
@ Ajedi32, saya harus membuatnya lebih jelas apa yang saya maksud - pengaturan metaforis memiliki musuh jahat, para utusan tidak hanya berkeliaran, tetapi apa yang paling cepat disamakan adalah hilangnya seluruh pesan tanpa model probabilitas. Mengingat bahwa kami tidak mengirim pesan sebagai entitas atom, "kehilangan pesan" dapat diartikan sebagai hilangnya bit, hilangnya paket, dll. Setengah lainnya adalah bahwa saluran komunikasi memiliki sifat yang dapat dianalisis - mereka mungkin memiliki kebisingan acak, tetapi dengan cara yang bisa dimodelkan, yang dapat kita atasi untuk mengatasi, maka satu-satunya sumber hilangnya informasi adalah ...
Luke Mathieson

... perilaku jahat yang sebenarnya, yang juga bisa kita perhatikan. Singkatnya masalah dua jenderal memberikan situasi hipotetis yang tidak realistis dalam asumsinya. Ya akan kehilangan informasi di suatu tempat, tetapi tidak ada (dalam situasi sehari-hari yang masuk akal) kesalahan tanpa batas.
Luke Mathieson

16

"Tidak terpecahkan" masalah "Dua Jenderal" (atau disebut "Serangan Terkoordinasi") terbatas pada konteksnya, yaitu, dalam sistem terdistribusi yang sama sekali tidak sinkron dengan saluran komunikasi yang tidak dapat diandalkan dan tidak dipercaya. Dalam kehidupan kita sehari-hari, orang bisa "mentolerir" situasi buruk seperti itu.

Dalam buku Reasoning about Knowledge ; Bagian 6.1 , penulis berkomentar

Fakta bahwa serangan terkoordinasi menyiratkan pengetahuan umum tergantung pada persyaratan kita bahwa serangan terkoordinasi harus simultan . Dalam praktiknya , simultanitas mungkin merupakan persyaratan yang terlalu kuat. Protokol yang menjamin bahwa para jenderal menyerang dalam waktu singkat satu sama lain mungkin cukup memuaskan.

Dia lebih jauh berkomentar tentang itu

Namun demikian, bahkan bentuk koordinasi yang lebih lemah seperti itu tidak dapat dicapai jika komunikasi tidak dapat diandalkan .

Dalam kehidupan kita sehari-hari, orang dapat mentoleransi (dan mentoleransi) penundaan pendek dan saluran yang tidak dapat diandalkan (seperti yang diuraikan oleh @Luke Mathieson). (Jika Anda masuk lebih dalam dan bertanya "bagaimana" dan "mengapa", maka itu mungkin di luar ruang lingkup ilmu komputer.)


2
Jika Anda melihat komunikasi modern, terutama dalam perang, kita harus berhati - hati dalam memilih strategi yang tidak bergantung pada masalah seperti itu. Ketika mereka benar-benar bergantung pada masalah seperti itu, hampir selalu ada rencana darurat untuk mengatasinya. Dalam program ilmu komputer, kami menaruh semua telur kami dalam satu keranjang, dan menyatakan "ada satu potensi kegagalan, betapapun mustahilnya, terlalu banyak"
Cort Ammon - Reinstate Monica

3

Karena kita tidak perlu jaminan jaminan bahwa sesuatu akan terjadi ketika kita memiliki pengalaman yang cukup yang memberi tahu kita apa yang dia dapatkan, respons saya tidak cukup untuk mengubah saya dari bertindak berdasarkan asumsi saya. Pengalaman saya memberi tahu saya bahwa email cukup dapat diandalkan, dan bahwa jika karena alasan tertentu dia tidak mendapatkan respons saya, dia akan mengirim email lagi kepada saya. Pengalaman saya mengatakan kepada saya untuk tidak khawatir tentang kasus sudut tanggapan saya yang diam-diam dibuang, dan semua pesan tindak lanjut darinya juga dibuang secara diam-diam. Kombinasi peristiwa itu tidak cukup sering terjadi sehingga mengganggu kemampuan saya untuk bertemu orang. mungkin terjadi. Misalnya, katakanlah seorang teman ingin bertemu dengan saya. Dia mengirimi saya waktu dan tempat melalui email, dan saya membalas dengan "Kedengarannya bagus, sampai jumpa." Saya tidak memerlukan informasi lebih lanjut untuk melanjutkan pertemuan dengannya di tempat dan waktu yang ditentukan. Hanya karena saya tidak bisa menjamin

Jika kasus sudut itu (atau masalah lain) memang mulai terjadi lebih sering, itu akan mengubah pengalaman saya , dan kemudian saya akan mempertimbangkan untuk mengubah strategi saya. Misalnya, saya mungkin memanggil orang itu alih-alih mengirim email kepada mereka. Atau saya mungkin menggunakan situs web kalender. Atau opsi lain.

Seperti yang diterapkan pada komunikasi antarpribadi, saya menemukan bahwa masalah teknis dari masalah dua jenderal tidak terlalu bermasalah pada mereka sendiri, tetapi dapat memperbesar masalah lain. Jika saya mengirim permintaan pekerjaan kepada seseorang melalui email dan saya tidak mendapat respons dari mereka dalam waktu yang masuk akal, apa yang harus saya lakukan? Berapa lama saya harus menunda sebelum mengirim pesan tindak lanjut? Jika saya mengirim pesan tindak lanjut, apakah mereka akan melihatnya sebagai pengingat yang ramah, atau apakah mereka akan merasa kesal? Bagaimana saya harus menyampaikan pesan tindak lanjut agar tidak dianggap terlalu lancang (karena jika jaringan benar-benar menjatuhkan pesan sebelumnya, maka ini adalah yang pertama kali mereka dengar dari saya)?

Sifat pertanyaan-pertanyaan ini semua tergantung pada orang-orang dan konteks yang terlibat. Tidak ada jawaban yang dijamin. Tetapi sekali lagi, kita tidak perlu jaminan untuk berhasil. Yang kita butuhkan adalah hal-hal seperti introspeksi, empati, dan kemampuan untuk belajar dari pengalaman. Kita dapat menemukan dan mengembangkan strategi unik kita sendiri - yang mungkin berbeda dari yang lain - yang memungkinkan kita untuk menjadi komunikator yang lebih baik dari waktu ke waktu.


-1

Bisakah Anda memberi saya nilai tepat pi dalam notasi desimal? Kita manusia pembulatan dan perkiraan ketika kita tahu nilai pastinya tidak dapat dipecahkan.


2
Selamat datang! Kami mencari jawaban yang berisi beberapa detail dan penjelasan, bukan hanya komentar singkat. Gagasan dalam komentar Anda telah dibahas secara terperinci dalam jawaban yang ada untuk pertanyaan itu, jadi saya rasa Anda tidak menambahkan apa pun, di sini.
David Richerby

Komentar saya singkat dan to the point. Pertanyaan yang diparafrasekan adalah bagaimana manusia menyetujui sesuatu jika kita tahu masalah tidak dapat diselesaikan? Jawaban saya adalah dari matematika (khususnya pi dalam desimal) yang kami akhiri dan perkirakan.
RajuK

Komentar Anda hanya itu: komentar. Ketika Anda memiliki reputasi yang cukup, Anda dapat memposting komentar. Sampai saat itu, Anda hanya dapat memposting jawaban dan jawaban diharapkan lebih rinci daripada ini, seperti yang sudah saya jelaskan.
David Richerby

Pertanyaan seperti itu bukanlah pertanyaan sains, melainkan pertanyaan tentang perilaku manusia. Karena itu jawaban saya to the point. Mengapa pertanyaan itu tidak ditandai sebagai pertanyaan sains non-komputer dan ditolak?
RajuK

Jika Anda yakin pertanyaan itu di luar topik, Anda harus menandai dan tidak menjawabnya. Harap perhatikan juga bahwa situs Stack Exchange (bahkan komentar di dalamnya) tidak dimaksudkan sebagai papan diskusi.
David Richerby

-1

Buktinya hanya mengatakan bahwa tidak mungkin untuk merancang protokol yang andal memecahkan masalah (yaitu sempurna dalam setiap contoh).

Itu tidak mengatakan tidak mungkin untuk merancang protokol yang sebagian besar memecahkan masalah. Manusia, sebagai bayesian di alam, cukup pandai merancang protokol yang memecahkan masalah tertentu dengan beberapa tingkat kualitas dan / atau beberapa tingkat keberhasilan yang memuaskan dalam hal keuntungan dan kerugian dalam jangka panjang.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.