Part 3: Cumulative weights and weighted random walks

part2中,我们学习了unweighted random walk选择算法。本章节,我们将学习更高级的变形算法:the weighted random walk。

算法the weighted random walk的其中一个核心作用是避免lazy tips 被选择认证。这里,lazy tips 的定义为,新加入的交易在选择tangle 中的交易认证时,选择一个旧的交易认证,而不是选择最近的tip 交易认证。一方面,我们知道,一笔交易只有被认证了,才会对tangle 的状态作出变更,并将该笔被认证的交易进行网络广播,然后在由别的tangle 节点进行状态变更。换言之,如果一笔新交易选择了一笔旧交易(已经被认证过)再次进行认证,虽然说,旧交易能被认证成功,但该交易已经被执行状态变更,因此,该就交易不会在二次变更。这样一来,不仅没有新的tip 交易被认证,而且对于整体的tangle 网络来说也不会有一点帮助。

图1-1

在图1-1 的例子中,交易14 则被认为时lazy tip,因为它选择了交易1 和交易 3 两笔已经被认证过的交易再次进行认证。如果我们使用的是uniform random 的tip 选择算法,交易14 同样可能不会被选择。同样,在part2 所介绍的 unweighted walk算法会有同样的问题,甚至会更严重,因为根据unweighted walk选择算法,在游历者选择过程中,不管是 tip 交易还是非tip 交易,它的选择概率是一致的,但游历者是从genesis 交易开始选择,换言之,lazy tip的出现概率会大于uniform random 算法。

那么,如何来处理lazy tip 所带来的问题?在提出解决方案前,这里可以明确的是,我们无法强制任何的交易去选择较新的tip,因为这会与去中心化的理念想违背。相反,任何新交易都可以自愿选择tangle 中的任意一笔交易进行认证。另外,我们也不能提供一个自认为可靠的规则去强制新到来交易进行选择认证。

我们的解决方案是通过一种系统内置的激励行为,带权重的随机游历,即the weighted random walk来尽量避免lazy tip 被选择。具体的策略是,每一笔交易都会一个累计权重( term cumulative weight)来指明自身的重要性。累计权重的定义非常简单:统计直接或间接证明该交易的交易数即可。例如图1-2 的例子中,交易[3] 的累计权重为5(交易[5] 为直接认证交易,交易[7]、[8]、[10]为间接认证一共为4,但计算时,都会加上自身,则为5)。

图1-2

我们在通过图1-3 的例子来阐述为什么该算法可以有效的避免lazy tip 被选择。根据定义,交易[16]为lazy tip。如果交易[16]被选择,前提条件时游历者必须游历到交易[7],因此,会面临 交易[9] 以及交易[16] 两个选择,而交易[9] 的累计权重为7,远大于交易[16]的累计权重1,因此,交易[9]会大概率被选择并进行移动,而交易[16] 基本不可能被选择。这样一来,则可以避免lazy tip 被选择认证。

图1-3

这时,我们会有个疑问:the weighted random walk 中的随机性还需要吗?因此,我们提出一种变形算法the super-weighted random walk。该算法的核心则是在the weighted random walk的基础上进行调整。即在路径选定过程中完全按照累计权重因素,不涉及任何概率运算。按照新变形的算法,tangle 的图形会大致演变成图1-4。

图1-4

从图4-1的例子中,我们可以看出如果,整个tangle 网络一直使用the super-weighted random walk算法,walker 只往权重大的交易游历,这样一来会带来新的问题,会有大量的交易将永远无法被选择认证。

为了尽量规避the super-weighted random walk算法所引伸出的问题。我们提出了另一个解决方案。回想一下,the super-weighted random walk仅通过权重因素来精确得出walker 交易选择路径,但细想一下,我们无需这么精确,我们只需尽量偏向权重高的交易即可。所以,我们引进一个新的参数α。参数α 意味着偏向累积权重的重要性。精确的定义可在白皮书中查看,当然这篇文章 也从数学角度给出准确的定义。

图1-5

虽然说白皮书有详尽的定义,但还是来概要说明一下该参数的具体含义。如果我们设定参数α 值为0,则意味着该算法会回退成unweighted walk。反之,如果α 的值特别高,算法则会进化成 super-weighted walk。因此,我们需要寻找一个相对平衡的值,来确保既可以尽量避免lazy tip 被选择,也可以尽量避免tip 永不被选择的情况出现。而 确认一个理想的α 值是IOTA 一个重要的研究课题。

具体的方式是通过设定一种指定的规则,在该规则下,使得walker在随机游历过程中的每一步,都可以计算出具体的概率。该规则称为马尔可夫链蒙特卡罗技术( Markov Chain Monte Carlo,简称MCMC)。在马尔可夫链中,下一步的概率计算不依赖于前一步,而是遵循预先确定的规则。

图1-6

到这里,本文完毕。我们将在下意章节中,详细讲解 一笔交易认证 另一笔交易是什么含义,并且 进一步了解何时可以确认一笔交易。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,324评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,356评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,328评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,147评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,160评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,115评论 1 296
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,025评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,867评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,307评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,528评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,688评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,409评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,001评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,657评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,811评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,685评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,573评论 2 353

推荐阅读更多精彩内容