Nếu vấn đề hai tướng là không thể giải quyết, làm sao con người chúng ta có thể đồng ý về mọi thứ?


25

Nếu vấn đề hai tướng là không thể giải quyết, làm sao con người chúng ta có thể đồng ý về mọi thứ?

Ý tôi là, chúng ta giao tiếp hàng ngày và có những hạn chế giống như bất kỳ vấn đề giao tiếp nào được xử lý bởi khoa học máy tính. Tại sao nó không ảnh hưởng đến chúng ta?


18
Ai nói với bạn rằng con người đã từng đồng ý về bất cứ điều gì khác ngoài những bất đồng của họ?
babou

7
"Không thể giải quyết" của vấn đề "hai tướng" bị giới hạn trong bối cảnh của nó, nghĩa là, trong một hệ thống phân tán hoàn toàn không đồng bộ với các kênh liên lạc không đáng tin cậy, không đáng tin cậy. Trong cuộc sống hàng ngày của chúng ta, mọi người có thể "chịu đựng" chúng. Nhân tiện, tôi vừa trả lời một câu hỏi khác có liên quan mật thiết đến bạn.
hengxin

4
@babou Thật không may, mọi người (với cùng các linh mục) thậm chí không thể đồng ý không đồng ý .
hengxin

3
Chà, nói chung là không thể giải quyết được . Vẫn còn nhiều trường hợp khi bạn có thể bỏ qua các vấn đề và giải quyết nó - hầu hết các giao tiếp của con người đều dựa vào điều này. Lý do chính đó là một vấn đề quan trọng trong khoa học máy tính gần như là một lý do quy mô - trong bất kỳ hệ thống nào đã được phân phối, thỉnh thoảng bạn có thể gặp những vấn đề này, thậm chí có thể hàng ngày hoặc nhiều hơn. Đây là một vấn đề lớn nếu bạn phụ thuộc nhiều vào tính đúng đắn, không có cơ chế tự sửa. Một tương tự gần gũi hơn của con người là tiếng thì thầm / điện thoại của Trung Quốc - một hệ thống phân tán mà không sửa lỗi.
Luaan

2
@AlecTeal Tôi không biết chắc chắn nơi nào chắc chắn để biết về một câu hỏi Khoa học Máy tính tốt trông như thế nào, nhưng trong mọi trường hợp: xin vui lòng. Lạm dụng người khác sẽ không được dung thứ ở đây. (loại bỏ những phần không hay trong bình luận của bạn)
Raphael

Câu trả lời:


29

Tôi không đồng ý với các câu trả lời khác rằng kênh truyền thông cần được mô hình hóa khác nhau. Malice là không liên quan, tin nhắn bị mất đơn giản với bất kỳ xác suất khác không là đủ để tạo ra vấn đề hai tướng. e-mail và IM, ví dụ, có cơ hội giảm tin nhắn thấp nhưng không bằng không. Các cuộc gọi điện thoại có thể bị nhiễu, vì vậy với vấn đề hai tướng, bạn cần xác nhận bằng cách nào đó liệu người kia có nghe thấy những gì bạn nói không, ad infinitum. Nhưng tôi vẫn thường xuyên sử dụng các kênh này để thỏa thuận với những người khác.

Điều mà vấn đề "hai tướng" không hòa tan không giải quyết được, là để có được kiến thức chung được đảm bảo . Trong cuộc sống thực, chúng tôi không yêu cầu kiến ​​thức chung chính thức để tiến hành. Do đó, mục tiêu trong hầu hết các tình huống thực tế cần được mô tả khác với mục tiêu trong bài toán hai tướng.

Chúng tôi giải quyết thỏa thuận là "đủ khả năng". Tôi có thể không sẵn sàng tấn công trừ khi tôi chắc chắn bạn sẽ tấn công, nhưng tôi sẵn sàng đi bộ đến quán cà phê để gặp bạn với điều kiện xác suất thất bại trong giao tiếp không cao hơn xác suất bạn thất bại đến do giao thông Không giống như các tướng, tôi sẽ có cơ hội gặp bạn.

Nếu bạn đã từng có ai đó giải thích điều gì đó ba lần cho bạn theo những cách khác nhau khi bạn nhận được nó lần đầu tiên hoặc đã từng có ai đó yêu cầu bạn xác nhận điều gì đó mà bạn đã xác nhận hai lần, thì đó là vì bạn đã đạt đến ngưỡng " đủ khả năng "trước khi họ đến được với họ.

Hãy chọn tâm lý học, triết học hoặc sinh học tiến hóa làm lĩnh vực chính xác để tìm câu trả lời cho câu hỏi tiếp theo, tại sao chúng ta không thực sự cần một sự đảm bảo đầy đủ về kiến ​​thức chung :-)

Nó cũng liên quan đến các vấn đề thực tế trong điện toán. Ví dụ: khi chúng tôi sử dụng mã sửa lỗi đơn để "xác thực" rằng một ký hiệu trong tin nhắn đã đến đúng, tất cả những gì chúng tôi đang làm là chấp nhận rằng xác suất xảy ra lỗi kép là không đáng kể trong thời gian này. Sau đó, trong giao thức, chúng ta có thể có CRC, để giảm thêm xác suất lỗi không bị phát hiện. Không ai trong số này giải quyết được vấn đề của hai vị tướng, nhưng điều đó đủ để tôi, ngân hàng và một thương gia của tôi "đồng ý" rằng một giao dịch thẻ tín dụng đã xảy ra, với một xác suất nhỏ là chúng tôi không đồng ý.


3
Malice có ý nghĩa thực tế bởi vì nó giới hạn mức độ chắc chắn có thể đạt được. Nếu giả định nhiễu là kết quả của các yếu tố cơ hội ngẫu nhiên thay vì ác ý, thì với bất kỳ xác suất nào p > 0, người ta có thể thiết kế một giao thức sao cho xác suất "đồng thuận" sai lầm sẽ nhỏ hơn p và xác suất đồng thuận thành công sẽ là lớn hơn 1 p. Tuy nhiên, chống lại một kẻ thù độc ác và toàn tri, các thuật toán như vậy có thể không thể thực hiện được nhiều.
supercat

3
@supercat: OK. Nhưng quan điểm của tôi chỉ là vấn đề hai vị tướng liên quan đến người hỏi, vẫn là một vấn đề khi loại trừ ác ý: sự bất khả thi là hậu quả của lỗi, không phải là ác ý. Tôi muốn nói rằng lý tưởng là vấn đề nên được đóng khung sao cho các tin nhắn bị mất không cần phải là hậu quả của hành động của kẻ thù, chúng ta chỉ biết rằng một số tin nhắn đi lạc hướng. Tuy nhiên, vấn đề về tướng Byzantine giới thiệu rõ ràng về những người chơi đối địch.
Steve Jessop

Vì vậy, hai vị tướng trước tiên nên đồng ý uống cà phê với nhau. Sau đó, họ có thể lên kế hoạch chiến đấu trực diện, điều này mang lại cho họ một kênh đáng tin cậy!
David Richerby

1
@DavidR Richby: thực sự, điều này hoạt động rất tốt trong các rạp chiếu chiến tranh được bổ nhiệm tốt với các cửa hàng cà phê. Các nhà khoa học máy tính rất hiếm khi gặp phải bất kỳ địa hình nào khác, vì vậy các tướng thực sự có khá nhiều về lý thuyết CS. Và các tướng hiện sinh không có kênh đáng tin cậy thậm chí trực diện, vì vậy họ không bao giờ tấn công bất cứ ai vì họ không thể chắc chắn đồng minh của họ tồn tại, chứ đừng nói đến kẻ thù.
Steve Jessop

Vì khoa học máy tính của nó và bạn có thể đoán khả năng của kênh, câu trả lời này có thể tốt hơn nếu nó được liên kết và thảo luận về định lý của Shannon: en.wikipedia.org/wiki/Noisy-channel_coding_theorem
daniel

18

Trung tâm (ý định chơi chữ) đối với vấn đề Hai tướng là một kẻ thù độc hại ở giữa. Mặc dù mô hình này là một kênh không đáng tin cậy, nhưng nó mô hình hóa nó theo cách mà chúng ta thường không gặp phải. Trong vấn đề này, các tin nhắn có thể đi qua tay kẻ thù và không có ràng buộc về thời gian, xác minh, mã hóa hay bất cứ điều gì khác mà tôi chưa từng nghĩ tới.

Khi chúng ta giao tiếp trong thực tế, trước hết các kênh chúng ta sử dụng dự kiến ​​sẽ không đáng tin cậy theo cách này. Các kênh có thể ồn ào, chắc chắn, nhưng khác với độc hại. Xác suất mà một kênh gây nhiễu ở cấp độ bit có thể được tạo ngẫu nhiên không chỉ là một thông điệp hợp lệ thỏa mãn bất kỳ lỗi sửa lỗi nào mà chúng tôi đang sử dụng, mà còn có giá trị ở chỗ nó có ý nghĩa đối với người nhận là rất thấp. Chúng ta cũng có thể sử dụng những thứ như mật mã khóa công khai để mã hóa và / hoặc ký tin nhắn, khiến việc giả mạo tin nhắn thực sự trở nên khó khăn hơn một lần nữa. Thứ ba, một đoạn quan trọng trong giao tiếp của chúng tôi rất nhạy cảm về thời gian - chúng tôi thực sự nói chuyện với mọi người nên không có sự chậm trễ trong phản ứng, trong trường hợp đó chúng tôi sẽ phải hài lòng rằng người chúng tôi đang nói chuyện là người mà chúng tôi muốn nói chuyện đến.

Trong phần lớn các trường hợp, chúng tôi chỉ cho rằng không có nguồn lỗi đáng kể nào trong các tin nhắn và chúng tôi thoát khỏi nó. Chúng ta có thể tưởng tượng một kịch bản trong đó thực sự có một kẻ trung gian độc hại làm hỏng kênh, nhưng chúng ta bắt gặp một vài điều; tiền điện tử khóa công khai vẫn còn hiệu quả, nhưng quan trọng hơn là nỗ lực và sức mạnh cần thiết để tham nhũng chính xác một phần đáng kể của truyền thông vượt xa những gì khả thi. Nếu không, tình báo tín hiệu quân sự sẽ hiệu quả hơn nhiều so với thực tế (không phải là nó không hiệu quả, nó sẽ tốt hơn).

Lưu ý rằng mặc dù tôi đã chạm vào giao tiếp qua trung gian máy tính / máy chủ yếu, nhưng các đối số tương tự có thể được tạo ra cho giao tiếp giữa các cá nhân - các nguồn nhiễu thường không thể giả mạo toàn bộ tin nhắn, chúng tôi có các hệ thống điều chỉnh cho những người giới thiệu ngẫu nhiên, mức độ thấp tiếng ồn, và nỗ lực chỉ là không đáng trong hầu hết mọi trường hợp để có một kẻ tấn công độc hại có đủ nguồn lực và động lực.


7
AFAIK, vấn đề hai tướng không yêu cầu kênh liên lạc độc hại, chỉ là một kênh không đáng tin cậy. Mối quan tâm không phải là các tin nhắn bị hỏng hoặc sửa đổi; chỉ khi họ không được nhận: en.wikipedia.org/wiki/
Kẻ

1
@ Ajedi32, tôi nên nói rõ hơn ý của tôi - ý nghĩa ẩn dụ được thiết lập có một kẻ thù độc hại, các sứ giả không đi lang thang, nhưng điều này sẽ ngay lập tức tương đương với việc mất toàn bộ tin nhắn không có mô hình xác suất. Cho rằng chúng ta không gửi tin nhắn dưới dạng thực thể nguyên tử, "mất tin nhắn" có thể được hiểu là mất bit, mất gói, v.v. Nửa còn lại là các kênh liên lạc có các đặc tính có thể phân tích - chúng có thể có nhiễu ngẫu nhiên, nhưng đó là thời trang có thể mô hình hóa, mà chúng ta có thể đối phó một cách có thể chứng minh được, sau đó nguồn mất thông tin duy nhất khác là ...
Luke Mathieson

... hành vi độc hại thực tế, mà chúng ta cũng có thể làm cho đáng chú ý. Nói tóm lại, vấn đề hai tướng đưa ra một tình huống giả định không thực tế trong các giả định của nó. Có sẽ mất thông tin ở đâu đó, nhưng không có lỗi (trong các tình huống hợp lý hàng ngày) không có lỗi.
Luke Mathieson

16

"Không thể giải quyết" của vấn đề "Hai vị tướng" (hay còn gọi là vấn đề "Tấn công phối hợp") bị hạn chế trong bối cảnh của nó, tức là, trong một hệ thống phân tán hoàn toàn không đồng bộ với các kênh liên lạc không đáng tin cậy, không đáng tin cậy. Trong cuộc sống hàng ngày của chúng ta, mọi người có thể "chịu đựng" những tình huống xấu như vậy.

Trong cuốn sách Lý luận về kiến ​​thức ; Phần 6.1 , các tác giả bình luận rằng

Thực tế là tấn công phối hợp ngụ ý kiến ​​thức phổ biến phụ thuộc vào yêu cầu của chúng tôi rằng cuộc tấn công phối hợp phải đồng thời . Trong thực tế , tính đồng thời có thể là một yêu cầu quá mạnh. Một giao thức đảm bảo rằng các tướng tấn công trong một thời gian ngắn có thể khá thỏa đáng.

Ông bình luận thêm rằng

Tuy nhiên, ngay cả các hình thức phối hợp yếu hơn như vậy là không thể đạt được nếu giao tiếp không đáng tin cậy .

Trong cuộc sống hàng ngày của chúng tôi, mọi người có thể chịu đựng (và đang chịu đựng) sự chậm trễ ngắn và các kênh không đáng tin cậy (như được xây dựng bởi @Luke Mathieson). (Nếu bạn đi sâu hơn và hỏi "làm thế nào" và "tại sao", thì có lẽ nó nằm ngoài phạm vi của khoa học máy tính.)


2
Nếu bạn nhìn vào thông tin liên lạc hiện đại, đặc biệt là trong chiến tranh, lớn chăm sóc được thực hiện để chọn chiến lược mà không phụ thuộc vào vấn đề như vậy. Khi họ phụ thuộc vào những vấn đề như vậy, hầu như luôn có một kế hoạch dự phòng để giải quyết nó. Trong chương trình khoa học máy tính, chúng tôi đặt tất cả trứng vào một giỏ và tuyên bố "bất kỳ một thất bại tiềm tàng nào, cho dù có thể xảy ra như thế nào, là quá nhiều"
Cort Ammon - Tái lập Monica

3

Bởi vì chúng tôi không cần đảm bảo đảm bảo rằng một cái gì đó sẽ xảy ra khi chúng tôi có đủ kinh nghiệm cho chúng tôi biết điều gì có thể xảy ra. Ví dụ: giả sử một người bạn muốn gặp tôi. Anh ấy gửi email cho tôi thời gian và địa điểm, và tôi trả lời lại với "Âm thanh tuyệt vời, hẹn gặp lại." Tôi không cần thêm thông tin để tiếp tục gặp anh ấy tại địa điểm và thời gian quy định. Chỉ vì tôi không thể đảm bảorằng anh ấy nhận được phản hồi của tôi không đủ để khiến tôi phải hành động theo những giả định của mình. Kinh nghiệm của tôi cho tôi biết rằng email khá đáng tin cậy và nếu vì lý do nào đó anh ta không nhận được phản hồi của tôi, anh ta sẽ gửi email lại cho tôi. Kinh nghiệm của tôi cho tôi biết rằng đừng lo lắng về trường hợp phản ứng của tôi bị âm thầm loại bỏ, và tất cả các tin nhắn theo dõi từ anh ấy cũng bị âm thầm loại bỏ. Sự kết hợp của các sự kiện chỉ không xảy ra thường xuyên đủ để can thiệp đáng kể vào khả năng gặp gỡ mọi người của tôi.

Nếu những trường hợp góc đó (hoặc các vấn đề khác) bắt đầu xảy ra thường xuyên hơn, điều đó sẽ thay đổi trải nghiệm , và sau đó tôi sẽ xem xét thay đổi chiến lược của mình. Ví dụ, tôi có thể gọi cho người đó thay vì gửi email cho họ. Hoặc tôi có thể sử dụng một trang web lịch. Hoặc một số tùy chọn khác.

Khi áp dụng cho giao tiếp giữa các cá nhân, tôi thấy rằng các vấn đề kỹ thuật của vấn đề hai tướng không phải là vấn đề cực kỳ khó khăn, nhưng có thể phóng đại các vấn đề khác. Nếu tôi gửi email cho ai đó một yêu cầu công việc và tôi không nhận được phản hồi từ họ trong một khoảng thời gian hợp lý, tôi phải làm gì? Tôi nên giữ bao lâu trước khi gửi tin nhắn theo dõi? Nếu tôi gửi tin nhắn theo dõi, họ sẽ xem đó là một lời nhắc nhở thân thiện, hay họ sẽ cảm thấy khó chịu? Làm thế nào tôi nên gửi tin nhắn theo dõi để không gặp phải quá tự phụ (vì nếu mạng thực sự bỏ tin nhắn trước đó, thì đây là lần đầu tiên họ nghe thấy từ tôi)?

Bản chất của những câu hỏi này phụ thuộc vào con người và bối cảnh liên quan. Không có câu trả lời đảm bảo. Nhưng một lần nữa, chúng ta không cần đảm bảo để thành công. Tất cả những gì chúng ta cần là những thứ như hướng nội, đồng cảm và khả năng học hỏi kinh nghiệm. Chúng ta có thể khám phá và phát triển các chiến lược độc đáo của riêng mình - có thể khác với các chiến lược khác - cho phép chúng ta trở thành người giao tiếp tốt hơn theo thời gian.


-1

Bạn có thể cho tôi giá trị chính xác của pi trong ký hiệu thập phân không? Con người chúng ta làm tròn và gần đúng khi chúng ta biết giá trị chính xác là không thể giải quyết được.


2
Chào mừng bạn Chúng tôi đang tìm kiếm câu trả lời có chứa một số chi tiết và giải thích, thay vì chỉ nhận xét ngắn gọn. Ý tưởng trong bình luận của bạn đã được thảo luận chi tiết trong các câu trả lời hiện có cho câu hỏi vì vậy tôi không nghĩ rằng bạn đang thêm bất cứ điều gì ở đây.
David Richerby 6/10/2015

Nhận xét của tôi ngắn gọn và quan điểm. Câu hỏi được đặt ra là làm thế nào để con người đồng ý về bất cứ điều gì nếu chúng ta biết một vấn đề là không thể giải quyết? Câu trả lời của tôi là từ toán học (cụ thể là số thập phân) mà chúng ta làm tròn và gần đúng.
RajuK

Nhận xét của bạn chỉ là: một bình luận. Khi bạn có đủ danh tiếng, bạn sẽ có thể đăng bình luận. Cho đến lúc đó, bạn chỉ có thể đăng câu trả lời và câu trả lời dự kiến ​​sẽ chi tiết hơn điều này, như tôi đã giải thích.
David Richerby

Câu hỏi như vậy không phải là một câu hỏi khoa học comp, mà là một câu hỏi về hành vi của con người. Do đó câu trả lời của tôi là vấn đề. Tại sao câu hỏi không được gắn thẻ là một câu hỏi khoa học máy tính và bị từ chối?
RajuK

Nếu bạn tin rằng câu hỏi không có chủ đề, bạn nên gắn cờ và không trả lời nó. Cũng xin lưu ý rằng các trang web Stack Exchange (thậm chí nhận xét về chúng) không có ý định làm bảng thảo luận.
David Richerby

-1

Bằng chứng chỉ nói rằng không thể thiết kế một giao thức giải quyết vấn đề một cách đáng tin cậy (tức là hoàn hảo trong mọi trường hợp).

Nó không nói rằng không thể thiết kế một giao thức chủ yếu giải quyết vấn đề. Con người, có bản chất bay bổng, khá giỏi trong việc thiết kế các giao thức giải quyết một vấn đề nhất định với một mức độ chất lượng và / hoặc một mức độ thành công nào đó là thỏa đáng về lợi nhuận và thua lỗ trong thời gian dài.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.