老子曰:“人法地、地法天、天法道、道法自然”。在区块链的实践中,由于是建立Code is Law的体系,遵循 In Math We Trust 的法则。在一个不受个体控制的网络,遵循自然的法则尤其重要。我提倡Filecoin的设计从简、自然。也是这个道理。
自然常数 e,是一个神奇的数,在数学中又极为自然。本文讲一讲 Filecoin 的共识机制的实现进化与自然常数 e 的关系。
初期预期共识空块率过高:1/e
预期共识的实现是一个不段发现的过程
tipset区块数预期提升(至5),安全性和效率的兼顾
让每一个字节都参与投票:优雅的密码抽签 + e
【预警:数学、概率与分布】
e 被成为自然常数,在数学家的眼里,这个常数非常自然。但是,对于普通人而言,对于 e,由于没有形象化的描述,就很难理解。本文通过 e 在 Filecoin中的应用,希望能够找到一些点,能够帮助大家 1)了解Filecoin的一些设计;2)通过 Filecoin 得到一点 e 的形象化的描述和印象。
常见的比较复杂的有意思的数学常数有两个,一个是 π,一个是 e。大家对π 都非常熟悉,因为它有一个非常形象化的名字,叫圆周率,也就是说是任何一个圆的周长和直径的比值。非常形象,非常容易理解。小学不学的话,初中总会学到了。
Arthur Hayes:AI将通过DAO进行自我组织,其代币交易或促使DEX形成自然垄断:7月28日消息,BitMEX创始人Arthur Hayes在其博客中撰文表示,未来的人工智能(AI)将通过去中心化自治组织(DAO)进行自我组织。他认为,AI 将不再依赖传统的公司结构,而是选择公共区块链进行部署和运行。他以一个名为「诗人 AI」的假设性 AI 为例,解释了如何通过智能合约在公共区块链(如以太坊)上部署 DAO 和代币。
Hayes 还指出,AI DAO 的债务市场的成熟程度将决定其经济影响力的增长速度。他认为,由于公共区块链可以持续监控 AI DAO 以确保其遵守债务契约,并在未付款的情况下使用智能合约自动转移数字财产和/或所有权,因此,债权人可以对 AI DAO 的账目进行持续的、准确的审计,这将使投资者有信心向符合其财务标准的 DAO 投资。
此外,Hayes 还预测,随着 DAO 的激增,以太坊交易将呈指数级增长,导致 ETH 的价格飙升。同时,去中心化交易平台(DEX)将成为自然垄断者,因为它们将成为第一个真正全球的交易场所,任何具有互联网连接的人或 AI 都可以在其中进行交易。他认为,由于 AI 无法被国家强制控制,因此,交易所有形式的 DAO 代币的交易平台可能会成为自然垄断者。识别这些 DEX 并购买它们的治理代币将产生巨大的利润。[2023/7/28 16:04:08]
其实 e 是与 π 同等重要的一个数学常数,在数学中的使用一点也不比 π 少。比如就在我们今天所讨论的 Filecoin 区块链中,e 在很多地方被使用,而 π 则不然,基本上没有被用到。
俄罗斯:愿意接受比特币用于自然资源出口:金色财经报道,俄罗斯国会能源委员会主席帕维尔·扎瓦尔尼(Pavel Zavalny)在周四的新闻发布会上表示,俄罗斯愿意接受比特币用于其自然资源出口。
Zavalny解释说,俄罗斯愿意接受不同的货币支付,从天然气开始,这取决于买方首选的付款方式。然而,主席表示,条款将取决于进口国与俄罗斯的外交关系状况,俄罗斯可以用本国货币或比特币与“友好”国家进行贸易。(bitcoinmagazine)[2022/3/25 14:16:45]
π = 3.1415926535897......
e = 2.718281828459045......
π 和 e 同为超越数,即不是代数数(有理数方程的解),当然也是无理数,无限不循环小数。
但其实,e 和 π 在数学中有非常紧密的关系。甚至可以说,e 就是 π 的另一种表示方法。为什么呢,请看最优雅数学公式 - 欧拉公式:
为什么优雅,这个一个简单的公式把数学中的5个元素(0, 1, i, π, e)十分简单地统一在一起了。就像物理学家希望统一力场一样,数学家也有把总结简洁规律的偏执。
Kraken Australia CEO:比特币下跌是被过热的以太坊和NFT市场“拖累”后的自然修正:9月8日消息,加密交易所Kraken澳大利亚的首席执行官Jonathan Miller在其8月份报告中指出,昨日的比特币下跌是因为被过热的以太坊和NFT市场“拖累”后的自然修正。
此外,Miller还指出,围绕萨尔瓦多的比特币法生效的炒作是促成比特币最近上涨的因素之一,但一些投资者可能已经计划在此新闻上卖出比特币。(Cointelegraph)[2021/9/8 23:09:40]
这个公式也表达了 e 和 π 的简单直接的关系。当然,他们之间还有一些有意思的关系,比如:
但是,这些仿佛把事情更加复杂化了,对于 e 本身的理解并没有帮助。到底 e 是什么呢?数学中会讲,e 是自然对数的底,它的一个总要特点就是 e^x 的导数还是 e^x,同时,e 可以通过下式来表达和计算:
稍微形象一点的表达,就是在复利的计算上,e 表达一个在一段时间内翻倍增长的利率,进行极限的连续复利计算能够达到的极限值。也就是说,如果年利率是100%,你如果无限细分一年到 n 个时间段,那么每个时间段的利率为 1/n,而最终你能得到的连本带利的收入为 e 倍,也就是2.7倍多一些。
声音 | ShapeShift首席执行官:货币的正确设计是基于科学和自然:ShapeShift首席执行官Erik Voorhees近日发推表示,美元法定货币上印有“我们相信上帝(In God We Trust)”的字样。其他任何科学仪器或测量仪器都没有这样的铭文。水银温度计不需要这样的吸引力。货币的正确设计不是基于信仰,而是基于科学和自然。黄金是这样,比特币也是这样。[2019/10/11]
这仍然不够形象,那么下面映射到 Filecoin 的共识机制来看一看。
先来复习一下Filecoin白皮书里面描述的预期共识。在go-filecoin的早期实现中,采用的是简单的预期共识,也就是说,每一个矿工按照自己的算力与总算力的比来获得出块权的概率。因为所有矿工的算力之和等于总算力,所以系统每一轮的总出块概率的期望值为 1。简单来说,就是每一轮平均出一个块,但是,每个矿工独立计算,因此,每一轮的出块数可能是各种各样的。
那么在这种情况下,我们建立一个简单(也是有效的)模型来进行一个推演。假设系统中的矿工数为 n,每个矿工的算力占比为 1/n,那么,每一轮呢每个矿工的出块概率为 1/n。
这样,一轮中出现空块的概率为:
声音 | 分析师Joseph Young:加密货币在中国发展将是一个自然的过程:加密货币分析师Joseph Young发推表示,中国是最活跃的无现金社会之一,没有人使用现金或信用卡,像支付宝这样的支付应用可以用于任何事情。这是因为像马云这样的企业家致力于创建无现金社会。因此,加密货币(在中国的发展)也将是一个自然的过程。[2018/10/8]
如果 n 足够大,那么,可以求得:
也就是空轮的概率超过三分之一,这个就太高了。
那么出块数为 1 的概率有多大呢,可以简单做如下计算:
仍然只有三分之一多一点。剩下的不到三分之一的概率都是多块的轮次。这个结论与开发网当时的测试是完全吻合的。
从这里,我们找到了一个对于自然常数 e 的一个更形象化的解释,那就是:在一个有很多人(大数)参与的独立投票选举中,每个人的赢得选举的概率相同,同时预期赢得选举人数为1的情况下,不能得出选举结果的概率为 e 的倒数,也就是 1/e。
开发网出现的空块率过高的情况,我们做了模拟,并与Filecoin研究开发团队进行了讨论。显然,这么高的空块轮次比例是不好的,这是的区块时间不固定,交易时间预测起来也比较困难。
那么,一个简单的改动是什么呢?那就是增加每一轮的区块预期数量。因为预期共识本来一轮就可能出现多个区块,在实现中采用tipset的方式进行组合,那么增加区块的预期数量,对于设计实现而言非常简单。
在测试网之前,Filecoin实现引入了预期每轮区块数这个概念,这个被定义为 E (ExpectedBlocksPerEpoch)。当前默认:E = 5
既然,预期区块数提高了,最简单的方法就是把每个矿工的出块概率提高5倍。但是,矿工出块的计算采用掷骰子的方式。也就是产生一个 256 位空间中的一个数,来比较自己的算力占比,从而判断是否拥有出块权。这里就有一个数据越界的问题。Filecoin的实现在这个判断上走过三个阶段:
阶段一:每个矿工按照自己的算力再进行切分,分别按照更小的份额进行选举,如果赢得选举就获得一票。相同默认算力都按照每 25 个 sector来进行统一切分(剩余部分单独算)。这个办法的好处是每一个选举人算力都基本一样,进行公平选举。但是,由于每25个sector都要进行单独计算,每一个部分都需要I/O访问,时间消耗较大。Filecoin团队的最初目的是把这个出块权和时空证明放在一起。但是,最后从安全的角度来考虑,由于计算相对复杂,还是放弃了。
阶段二:直接极致简化,不考虑越界的问题,直接乘以5进行比较计算。这个是在时空证明已经通过WindowedPoSt替代 SurprisedPoSt的情况下的一个简化措施。但是,这样做有两个问题:1)对于算力大于 20% 的矿工肯定是吃亏的;2)当矿工算力足够大时,一定能够赢得选举。这第二个问题比较严重。我们慎重提出,这是一个安全问题,应该改。
阶段三:采用密码抽签的方式,借鉴Algorand采用的算法。逐渐走向完善。
Algorand的密码抽签是一个非常好的概率分布在选举上的应用,对于区块链POS网络而言,非常棒。实现起来比较简单直接。其具体算法如下:
这里不做详细解释,需要的人可以查询相关资料。简单地说,就是在POS选举过程中,当你凭借自己产生的可验证随机数进行抽签的时候,可以通过你自己的份额和相应二项式分布来看你落在哪一个区间,从而判断你获得了多少选票。
二项式分布是 n 个相同概率的独立时间单独计算而后相加的一个分布,而且整个分布正好切分整个概率空间。因此只需要看你的可验证随机数在那个空间就可以了(这个部分比较难说清楚,有意者线下探讨)。
那么对于Filecoin而言,参与选举的份额就是你的算力。如果按照前文中说的阶段二的方式,可以再进行细分,那么可以考虑为每一个字节都参与投票。这样一来,参与投票的选举人数量非常大,整个计算不用采用二项式分布,完全可以采用泊松分布来进行计算。泊松分布的计算公式如下:
这里 λ 是自己的份额与预期总选举票数的乘积。在Filecoin中,它就是
E * mPow/totPow;k 是获得选举权的数量。
看一下上式,是不是很神奇?自然常数 e 再一次用到了 Filecoin 的选举的计算之中。采用泊松分布进行计算是 Filecoin 的一个改进,非常符合Filecoin的特点,同时计算也非常简单。
采用密码抽签之后,就不能保证每一轮都一定会有矿工拿到出块权了,这很正常,因为每个人都自己掷骰子,出块权的计算是独立的。这样的话,实际上每一轮赢得不同的出块选票的概率有多大呢?简单做一个模拟可以得出下表:
这里空轮的概率是 e^-5。
也就是说,预期大约不到200个高度就会出现一个空轮。看起来还好。而每轮选票数为 3,4,5,6,7分布较多也比较均匀。选票数高达15张的情况也不少,大概万分之1.6。
看到这里(如果你真的有耐心看到这里),您可能会想,e是不是与概率的关系比较大,其实我可以告诉你,π在有些时候也会用到概率计算之中。因为这两个常数就是有牵扯不清的关系。
自然常数 e 在选举之中的使用,至此显得非常自然,而且也比较优雅。
同时,Filecoin在Token释放上,也利用 e 进行计算。这个与概率无关,而是与衰减有关。Filecoin 不采用周期性减半的方式进行Token释放,而是模仿放射性衰减,也就是指数衰减。白皮书设计为6年减半。而一般说来,衰减的公式可以写为:
上式可以理解为:初始Token为 N0,随时间推移,系统通过释放,在 t 时间点系统中还应该保留的Token量N(t)的计算公式。
看这里,再一次出现了自然常数 e。当然这里不一定非要用 e 的。但是由于 e 的使用非常广泛了,用起来方便顺手。所以基本上现在这是一种统一的用法。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。