Si el problema de los dos generales no se puede resolver, ¿cómo podemos los seres humanos llegar a un acuerdo sobre las cosas?

25

Si el problema de los dos generales no se puede resolver, ¿cómo podemos los seres humanos llegar a un acuerdo sobre las cosas?

Quiero decir, nos comunicamos todos los días y tenemos las mismas limitaciones que cualquier problema de comunicación manejado por la informática. ¿Por qué no nos afecta?

user1508072
fuente
18
¿Quién te dijo que los humanos están de acuerdo en algo más que sus desacuerdos?
babou
77
La "indisolubilidad" del problema de los "dos generales" está restringida a su contexto, es decir, en un sistema distribuido totalmente asíncrono con canales de comunicación no confiables y no confiables. En nuestra vida diaria, las personas pueden "tolerarlos". Por cierto, acabo de responder otra pregunta que está estrechamente relacionada con la tuya.
hengxin
44
@babou Desafortunadamente, las personas (con los mismos antecedentes) ni siquiera pueden aceptar estar en desacuerdo .
hengxin
3
Bueno, es insoluble en general . Todavía hay muchos casos en los que puede ignorar los problemas y salirse con la suya; la mayoría de la comunicación humana se basa en esto. La razón principal por la que es un problema importante en informática es prácticamente una razón de escala: en cualquier sistema que ya tenga que distribuirse, es probable que tenga estos problemas de vez en cuando, posiblemente incluso a diario o más. Este es un gran problema si depende en gran medida de la corrección, sin mecanismos de autocorrección. Un análogo humano más cercano es el susurro / teléfono chino, un sistema distribuido sin corrección de errores.
Luaan
2
@AlecTeal No sé de dónde viene la certeza de saber cómo es una buena pregunta de informática , pero en cualquier caso: por favor, sé amable. Abusar de otros no será tolerado aquí. (eliminando las partes no tan agradables de tu comentario)
Raphael

Respuestas:

29

No estoy de acuerdo con otras respuestas de que el canal de comunicación debe modelarse de manera diferente. La malicia es irrelevante, los mensajes perdidos simples con cualquier probabilidad distinta de cero son suficientes para crear el problema de los dos generales. El correo electrónico y la mensajería instantánea, por ejemplo, tienen una probabilidad baja pero no nula de soltar mensajes. Las llamadas telefónicas pueden sufrir interferencias, por lo que, como con el problema de los dos generales, debe confirmar de alguna manera si la otra persona escuchó lo que dijo, hasta el infinito. Y sin embargo, con frecuencia uso estos canales para hacer acuerdos con otras personas.

Lo que el problema insoluble de "dos generales" no puede resolver es garantizar el conocimiento común. En la vida real no requerimos conocimiento común formal para proceder. Por lo tanto, el objetivo en la mayoría de las situaciones prácticas debe describirse de manera diferente al objetivo en el problema de los dos generales.

Nos conformamos con que el acuerdo sea "suficientemente probable". Es posible que no esté dispuesto a atacar a menos que esté seguro de que atacará, pero estoy dispuesto a caminar hasta la cafetería para encontrarme con usted siempre que la probabilidad de una falla en las comunicaciones no sea muy superior a la probabilidad de que no lo haga. llegar debido al tráfico. A diferencia de los generales, me arriesgaré a que me conozcas.

Si alguna vez alguien le explicó algo tres veces de manera diferente cuando lo recibió la primera vez, o si alguien le pidió que confirmara algo que ya ha confirmado dos veces, es porque alcanzó su umbral de " suficientemente probable "antes de que llegaran a los suyos.

Elija su elección de psicología, filosofía o biología evolutiva como el reino correcto para buscar una respuesta a la siguiente pregunta, por qué realmente no necesitamos una garantía completa de conocimiento común :-)

También se relaciona con problemas prácticos en informática. Por ejemplo, cuando usamos un código de corrección de un solo error para "validar" que un símbolo en un mensaje ha llegado correctamente, todo lo que estamos haciendo es aceptar que la probabilidad de un doble error es insignificante por el momento. Luego, más adelante en el protocolo, podríamos tener un CRC, para reducir aún más la probabilidad de error no detectado. Nada de esto resuelve el problema de los dos generales, pero es suficiente para mí, mi banco y un comerciante para "estar de acuerdo" en que se ha producido una transacción con tarjeta de crédito, con una pequeña probabilidad de que no estemos de acuerdo.

Steve Jessop
fuente
3
La malicia es significativa en el sentido práctico porque limita el grado de certeza que se puede lograr. Si se supone que la interferencia es el resultado de factores de probabilidad aleatorios en lugar de la malevolencia, entonces, para cualquier probabilidad p > 0, se puede diseñar un protocolo de manera que la probabilidad de "consenso" erróneo sea menor que py la probabilidad de un consenso exitoso será mayor que 1-p. Sin embargo, contra un adversario que es malévolo y omnisciente, tales algoritmos pueden ser incapaces de lograr mucho.
supercat
3
@supercat: OK. Pero mi punto es solo que el problema de los dos generales que concierne al interlocutor sigue siendo un problema cuando se excluye la malicia: la imposibilidad es una consecuencia del error, no de la malicia. Diría que, idealmente, el problema debería enmarcarse de manera tal que los mensajes faltantes no necesariamente sean la consecuencia de la acción del enemigo, solo sabemos que algunos mensajes se desvían. Sin embargo, el problema de los generales bizantinos introduce explícitamente a los jugadores opuestos.
Steve Jessop
Entonces, los dos generales deben aceptar tomar un café juntos. ¡Entonces pueden planear la batalla cara a cara, lo que les da un canal confiable!
David Richerby
1
@DavidRicherby: de hecho, esto funciona extremadamente bien en teatros de guerra que están bien equipados con cafeterías. Los informáticos rara vez se encuentran con otro terreno, por lo que los generales reales están bastante solos en lo que respecta a la teoría CS. Y los generales existencialistas no tienen un canal confiable ni cara a cara, por lo que nunca atacan a nadie porque no pueden estar seguros de que sus aliados existan, y mucho menos al enemigo.
Steve Jessop
Dado que es informática y puede adivinar la capacidad del canal, esta respuesta podría ser mejor si se vincula y discute el teorema de Shannon: en.wikipedia.org/wiki/Noisy-channel_coding_theorem
daniel
18

Central (juego de palabras) para el problema de los Dos Generales es un enemigo malicioso en el medio. Aunque esto modela un canal poco confiable, lo modela de una manera que normalmente no encontramos. En el problema, los mensajes pueden pasar por manos enemigas y no hay limitaciones de tiempo, verificación, cifrado o cualquier otra cosa que no haya pensado.

Cuando nos comunicamos en la práctica, en primer lugar, no se espera que los canales que utilizamos sean poco confiables de esta manera. Los canales pueden ser ruidosos, claro, pero eso es diferente a ser malicioso. La probabilidad de que un canal que es ruidoso a nivel de bit pueda producir aleatoriamente no solo un mensaje válido que satisfaga cualquier código de corrección de errores que estemos usando, sino que también sea válido porque tiene sentido para el receptor es muy bajo. También podemos usar cosas como la criptografía de clave pública para cifrar y / o firmar mensajes, lo que hace que sea más difícil falsificar un mensaje real. En tercer lugar, una parte importante de nuestra comunicación es sensible al tiempo: en realidad hablamos con las personas para que no haya demoras en la respuesta, en cuyo caso tendremos que estar satisfechos de que la persona con la que estamos hablando es la persona con la que debemos hablar. a.

En la mayoría de los casos, asumimos que no hay una fuente significativa de error en los mensajes y nos salimos con la suya. Podemos imaginar un escenario en el que realmente hay un hombre en el medio malicioso que corrompe el canal, pero nos encontramos con un par de cosas; la criptografía de clave pública sigue siendo efectiva, pero lo más importante es que el esfuerzo y el poder necesarios para corromper con precisión una parte lo suficientemente significativa de la comunicación va mucho más allá de lo factible. Si no fuera así, la inteligencia de señales militares sería mucho más efectiva de lo que es (no es que no sea efectiva, simplemente sería mejor).

Tenga en cuenta que aunque he tocado principalmente la comunicación mediada por computadora / máquina, se pueden hacer los mismos argumentos para la comunicación interpersonal: las fuentes de ruido generalmente no pueden falsificar un mensaje completo, tenemos sistemas de corrección para aquellos que introducen un nivel aleatorio de bajo nivel ruido, y el esfuerzo simplemente no vale la pena en casi todos los casos para que haya un atacante malintencionado con recursos suficientes y motivado.

Luke Mathieson
fuente
77
AFAIK, el problema de los dos generales no requiere un canal de comunicaciones malicioso, solo uno poco confiable. La preocupación no es que los mensajes se corrompan o modifiquen; solo si no se reciben: en.wikipedia.org/wiki/…
Ajedi32
1
@ Ajedi32, debería aclarar lo que quiero decir: la configuración metafórica tiene un enemigo malicioso, los mensajeros no solo se alejan, sino que lo que esto equivaldría más inmediatamente es la pérdida de mensajes completos sin modelo de probabilidad. Dado que no enviamos mensajes como entidades atómicas, la "pérdida de un mensaje" puede interpretarse como pérdida de bits, pérdida de paquetes, etc. La otra mitad es que los canales de comunicación tienen propiedades analizables; pueden tener ruido aleatorio, pero es de una manera capaz de modelar, con lo que podemos hacer frente, entonces la única otra fuente de pérdida de información es ...
Luke Mathieson
... comportamiento malicioso real, que también podemos hacer notable. En resumen, el problema de los dos generales da una situación hipotética que no es realista en sus supuestos. Sí, podría perder información en alguna parte, pero no hay (en situaciones sensibles cotidianas) un error ilimitado.
Luke Mathieson
16

La "indisolubilidad" del problema de "Dos generales" (o llamado problema de "ataque coordinado") está restringida a su contexto, es decir, en un sistema distribuido totalmente asíncrono con canales de comunicación no confiables y no confiables. En nuestra vida diaria, las personas pueden "tolerar" situaciones tan malas.

En el libro Razonamiento sobre el conocimiento ; Sección 6.1 , los autores comentan que

El hecho de que el ataque coordinado implica conocimiento común depende de nuestro requisito de que el ataque coordinado debe ser simultáneo . En la práctica , la simultaneidad puede ser un requisito demasiado fuerte. Un protocolo que garantice que los generales ataquen dentro de poco tiempo entre sí puede ser bastante satisfactorio.

Él además comenta que

Sin embargo, incluso esas formas más débiles de coordinación son inalcanzables si la comunicación no es confiable .

En nuestra vida diaria, las personas pueden tolerar (y toleran) retrasos cortos y canales poco confiables (según lo elaborado por @Luke Mathieson). (Si profundiza y pregunta "cómo" y "por qué", entonces probablemente esté fuera del alcance de la informática).

hengxina
fuente
2
Si observa la comunicación moderna, especialmente en la guerra, se debe tener mucho cuidado al elegir estrategias que no dependan de tales problemas. Cuando dependen de tales problemas, casi siempre hay algún plan de contingencia para enfrentarlo. En el programa de ciencias de la computación, ponemos todos nuestros huevos en una canasta y declaramos que "cualquier falla potencial, no importa cuán improbable, sea demasiado"
Cort Ammon - Restablece a Monica el
3

Debido a que no necesitamos garantizada la garantía de que algo va a suceder cuando tenemos la suficiente experiencia que nos dice lo que es probable que suceda. Por ejemplo, digamos que un amigo quiere reunirse conmigo. Me envía un correo electrónico con la hora y el lugar, y yo respondo con "Suena genial, nos vemos luego". No necesito más información para reunirme con él en el lugar y hora especificados. Solo porque no pude garantizarque él obtuvo mi respuesta no es suficiente para evitar que actúe según mis suposiciones. Mi experiencia me dice que el correo electrónico es bastante confiable y que si por alguna razón no recibió mi respuesta, me enviará un correo electrónico nuevamente. Mi experiencia me dice que no me preocupe por el caso de que mi respuesta se descarte en silencio, y que todos los mensajes de seguimiento de él también se descarten en silencio. Esa combinación de eventos simplemente no ocurre con la frecuencia suficiente para interferir significativamente con mi capacidad para conocer gente.

Si esos casos de esquina (u otros problemas) comenzaran a suceder con mayor frecuencia, eso cambiaría mi experiencia , y luego consideraría cambiar mi estrategia. Por ejemplo, podría llamar a la persona en lugar de enviarle un correo electrónico. O podría usar un sitio web de calendario. O alguna otra opción.

Aplicado a la comunicación interpersonal, encuentro que los problemas técnicos del problema de los dos generales no son muy problemáticos por sí solos, pero pueden magnificar otros problemas. Si le envío un correo electrónico a alguien con una solicitud de trabajo y no recibo una respuesta de ellos en un tiempo razonable, ¿qué debo hacer? ¿Cuánto tiempo debo esperar antes de enviar un mensaje de seguimiento? Si envío un mensaje de seguimiento, ¿lo verán como un recordatorio amistoso o se sentirán irritados? ¿Cómo debo redactar el mensaje de seguimiento para no parecer demasiado presuntuoso (porque si la red realmente eliminó el mensaje anterior, entonces este es el primero que escuchan de mí)?

La naturaleza de estas preguntas depende de las personas y el contexto involucrado. No hay respuestas garantizadas. Pero, de nuevo, no necesitamos garantías para tener éxito. Todo lo que necesitamos son cosas como introspección, empatía y la capacidad de aprender de la experiencia. Podemos descubrir y desarrollar nuestras propias estrategias únicas, que pueden diferir de otras, que nos permiten convertirnos en mejores comunicadores con el tiempo.

kartik_subbarao
fuente
-1

¿Me puede dar el valor exacto de pi en notación decimal? Los humanos redondeamos y nos aproximamos cuando sabemos que el valor exacto no tiene solución.

RajuK
fuente
2
¡Bienvenido! Estamos buscando respuestas que contengan algunos detalles y explicaciones, en lugar de solo breves comentarios. La idea en su comentario ya se ha discutido con cierto detalle en las respuestas existentes a la pregunta, así que no creo que esté agregando nada aquí.
David Richerby
Mi comentario es sucinto y al grano. La pregunta parafraseada fue ¿cómo están de acuerdo los humanos en algo si sabemos que un problema no tiene solución? Mi respuesta es de las matemáticas (específicamente pi en decimal) que redondeamos y aproximamos.
RajuK
Tu comentario es solo eso: un comentario. Cuando tenga suficiente reputación, podrá publicar comentarios. Hasta entonces, solo puede publicar respuestas y se espera que las respuestas sean más detalladas que esto, como ya expliqué.
David Richerby
La pregunta como tal no es una pregunta de ciencia comp, sino una pregunta sobre el comportamiento humano. Por lo tanto, mi respuesta fue al grano. ¿Por qué la pregunta no fue etiquetada como una pregunta que no es de informática y rechazada?
RajuK
Si cree que la pregunta está fuera de tema, debe marcarla y no responderla. Tenga en cuenta también que los sitios de Stack Exchange (incluso los comentarios sobre ellos) no están destinados a ser paneles de discusión.
David Richerby
-1

La prueba solo dice que es imposible diseñar un protocolo que resuelva el problema de manera confiable (es decir, perfectamente en cada caso).

No dice que sea imposible diseñar un protocolo que resuelva principalmente el problema. Los seres humanos, siendo de naturaleza bayesiana, son bastante buenos para diseñar protocolos que resuelvan un problema dado con cierto grado de calidad y / o cierto grado de éxito que sea satisfactorio en términos de ganancias y pérdidas a largo plazo.

Hombre de ningún lado
fuente