IOTA:Tangleでの承認率

Translate this article into English

シェアする

IOTAの合意メカニズムは重み付きランダムウォークに基づいています。

このチップ選択アルゴリズムを利用するとTangleの大きな分岐はさらに大きく、小さな分岐はさらに小さくなり、これは分岐が捨てられるまで続きます。この直感的な動きはブロックチェーンととてもよく似ています。ブロックチェーンはもっとも長いチェーンの上に追加されますが、Tangleではもっとも重みの大きな分岐に追加されます。

ただしこれは絶対ではありません。時にはより重みの軽い分岐が承認されるように、もっとも重みの大きな分岐に追加する代わりに、ランダムにウォークすることが認められています。その理由は、高い取引率を維持するためです。

もしもっとも重みの大きな分岐だけが承認されていると、承認された取引のチェーンが薄くなり、ほとんどの取引が承認されずに取り残される結果となるでしょう。

例として、こちらのシミュレーターでαの値を大きくして、ほとんどの取引が承認されなくなることを確認してみてください。αの値を小さくするとランダムさが大きくなり、逆に大きくすると決定論的なウォークとなりもっとも重みの大きい分岐ができます。

取引が承認されずに取り残されたとしてもお金を失ったわけではないことは強調しておきます。取引が承認されなかっただけで、再度選ばれて承認されるはずです。実質的な影響はほとんどが承認までの時間が遅くなることです。

ではαはどのように選べばいいのでしょうか? これはまさにIOTA財団の研究者Bartosz Kusmierzが取り組んでいる問題です。その目標は、与えられたαに対してどれだけの取引が承認されずに残っているかと定量的に見積もることです。

それができればαに上限値を設定できるようになります。その値を超えるとネットワーク上で失われる取引の割合が受け入れられないほど大きくなる、ということです。彼が書いたレポートはこちらにあります。

取引が取り残される確率を導くため、BartoszはTangleのシミュレーションを実行し、取引が承認される割合をいくつかの時点で測りました。承認率と取り残される割合は密接に関連していることに注目すべきです。両者の和は常に100%となります。これはどの取引も結局は承認されるか取り残されるかのどちらかになるからです。

取引が承認されたかどうかはっきりさせるため、次の経験則を利用できます:

αに非常に大きな値を設定し、チップ選択アルゴリズムを一度実行します。これはもっとも重みの大きな分岐に向かってウォーキングするのと同等です。チップに到達すると選ばれた取引は承認されたと見なされ、それ以外はすべて取り残されます。この定義は承認の信頼と厳密には同一ではありませんが、長時間シミュレーションすると確かに収束し、白黒がはっきりするので分析が易しくなります。

承認された取引を測定する方法の図解。大きな赤丸はαの値が大きい場合のウォークで選ばれたチップを表し、それ以外の赤丸は承認されたを見なされるもの。

下の図で結果を確認できます。

様々なαとλの値に対する取り残される確率。λはhあたりの取引数で表した取引率。こちらの論文に詳しく書かれているが、本質的にhはプルーフ・オブ・ワーク(PoW)を実行するのに要する平均時間を表す。PoWに要する時間を仮に1分(実際も大体この程度)とすると、λは1分あたりの取引数となる。

αの値が大きくなると取り残される確率が高くなる、つまり承認率が下がるのも驚くことではありません。しかし取引率がこの動きに影響する様子は興味深いものがあります。取引率が高くなるとそれに応じてαは承認率を一定に保つために減少しなければなりません。

これは非常に有益な結果です。妥当なαの選び方を提供し、与えられた取引率に対して高すぎないかが分かるからです。例えば、承認率を少なくとも80%とするためにはαの値は紫色の帯に沿った値あるいはそれよりも小さな値を選ぶべきです。

αの上限値が分かったので、次の質問は下限はどう選ぶべきかということです。一般にαの値が小さくなるとネットワークでは二重支払いや怠け者が増えます。下限値の選び方を理解するためには攻撃や不正行為についてさらなる研究が必要です。確かな結果が得られたらすぐにコミュニティに連携します。

Bartoszのレポートの完全版はこちらにあります。

新しいIoTの技術を使っているIOTAは、今後IoT化が進むにつれて注目に値する通貨です。どのような特徴を備え、決算が行われていくのかを解説しています。また最近のニュースから、MIOTAの今後の可能性についても考察しています。

Confirmation rates in the Tangle