设置

关灯

第312章 拜占庭容错算法(第2节)

排除少数派答案,最后得出的结论,就是更准确的『多数派答案』。

“在满足『拜占庭容错』的情况下,我们强制要求所有将军都遵守这一套策略,并且必须坚决执行最终的结论。

“那我们就可以确保大家一起进攻或者一起撤退。”

郑杰有些困惑:“在满足『拜占庭容错』的情况下?也就是蔡哥你之前说过的,叛徒人数必须少于三分之一?”

蔡志远点了点头:“是的。

“我们用3名将军的情况来举个例子:

“假设3名将军里面,将军C是叛徒,故意传递错误的信息。

“将军A会首先向将军B和C说『进攻』。

“但是将军B接到命令之后无法确认将军A是不是叛徒,所以他要先问将军C,『将军A给你的命令是什么』,而将军C是叛徒,所以会故意说『将军A给我的命令是撤退』。

“因为只有三个将军,所以将军B就无法判断将军A和将军C到底哪个是叛徒,因为『进攻』和『撤退』的命令各一票,无法形成多数。

“同理,将军B在执行这个策略的时候,也没法判断将军A和将军C哪个是叛徒。

“这是最简单的一种情况,如果将军的数量变多,比如同时有7个将军,其中有2个是叛徒的话,情况会变得复杂很多,要套娃很多次才能最终得到结论。

“所以我才说,这种问题不需要自己真的推算,只要记住结论就行了。

“结论就是,当叛徒人数达到三分之一或者更多时,这个问题就不可解。

“反过来说,想要让这个问题可解,就要把叛徒人数控制在少于三分之一的情况。

“套一下三个房间的人数,就一目了然了。

“『4人房间』,3人答题,所以只要有1名恶意自由人,这个问题就不可解。

“『8人房间』,7人答题,在房间中有3名恶意自由人的情况下,不可解。

“『

本章未完,请点击"下一页"继续阅读! 第2页 / 共4页