作者:Nickaqiao & Faust,極客web3
自2017年ERC-20資產風靡區塊鏈圈以來,Web3就進入了資產發行的低門檻時代,各路項目方憑借ID0、IC0等方式肆意發行自定義代幣或NFT,且大多存在強控盤或信息不透明問題,RugPull現象頻發,各路鐮刀儼然把IC0、ID0當做割韭菜的絕佳途徑。
時至今日,常規的ID0和IC0已經充分暴露出了其在公平性上的缺陷,人們一直都希望有較爲公平可靠的資產發行協議,解決新項目TGE時的諸多問題。雖然一些創意十足的項目單方面提出了自己的“公平的經濟模型”,但往往沒有進行通用化推廣,最後這類經濟模型大多淪爲“具體案例”而不是“一套抽象出來的協議”。
那么,什么樣的模式是更公平可靠的資產分發方式?什么樣的方案能作爲一套通用協議?本文將要展开介紹的Cellula爲解決上述問題提供了全新視角,他們實現了一個模擬POW的資產分發層,利用虛擬工作量證明(vPOW)將資產分發過程“挖礦化”,以模擬BTC實現更公平的資產分配範式。
雖然該項目被許多人視爲Gamefi,但由於其分發的遊戲內獎勵可以設置爲任意類型的Token,Cellula理論上可以作爲一個有POW效應的資產分發平台,爲Web3資產發行帶來了更廣闊的前景和想象空間,甚至於稱爲“一場致敬BTC挖礦的社會實驗”也不爲過。
POW和vPOW:結果不可預測的彩票抽獎
其實無論是正宗的POW還是POS,或是今天要講的vPOW,本質都是設置一套輸出結果不可預測/難預測的算法,通過輸出結果來進行“彩票抽獎”。BTC礦工們要在本地構造出滿足限制條件的區塊,提交給網絡中的全節點通過共識,才能拿到出塊獎勵。至於限制條件,是要讓構造出的區塊的Hash滿足特殊要求,比如前綴是6個0。
由於區塊Hash的生成結果不可預測/難預測,要構造出符合條件的區塊,只能不斷的變更給定算法的輸入參數,這一過程需要暴力窮舉,對礦工的硬件設備有很高要求。
簡而言之,BTC挖礦通過SHA-256哈希算法的不可預測性/難預測性,實現了一套全網礦工在线參與的“彩票抽獎”系統,這種設計以電能爲代價,確保了參與形式上的Permissionless。
此外,POW是一種更公平的資產分配方式,主流的POW公鏈中項目方控盤的難度比POS公鏈大很多,而在很多POS公鏈或IC0、ID0方案裏,項目方強控盤的案例比比皆是。
(Solana在FTX操縱下,僅在2020~2021年就暴漲了小500倍,這對後入場的Validator運行者而言極不友好)
比如,Solana幣價在FTX和SBF操縱下,曾在2019~2021年暴漲近1000倍,而很多Solana驗證節點運行者是其早期投資人,它們獲得籌碼的成本近0,這嚴重打破了資產分發上的公平性。雖然POW當中項目方也有控盤的空間,但程度往往要比在POS中輕得多。
問題在於,POW的模式往往被應用於底層公鏈而非DAPP的資產發行層,我們能否以一套鏈上可實現的方案,模擬出POW的效果?如果能,就可以實現一套比IC0、ID0等強控盤方案更公平可靠的資產分發協議,搭配一些遊戲場景,可以做出一些有意思的Gamefi(當然實際用途不僅限於遊戲,還可以爲其他項目提供一套公平的資產分發方案)。
所以關鍵是,如果我們要在鏈上資產發行層模擬出POW的效果,該怎么做呢?在本文介紹的Gamefi項目Cellula中,通過引入著名的“康威生命遊戲”算法,爲鏈上虛擬的數字實體(稱爲“BitLife”)分配算力。說白了像是讓一幫人在自己的培養皿中繁育細胞集群,隨着時間推進,誰的培養皿中存活細胞越多,折算後得到的挖礦算力越高,越可能獲得挖礦獎勵。
簡而言之,Cellula把傳統POW的哈希計算,換成了另一種結果不可預測/難預測的計算方式,替換了“Proof of Work”中的“Work”形式。在Cellula的思路下,關鍵在於如何獲得存活細胞數更多的培養皿(BitLife),而推演BitLife的狀態變化需要耗費計算資源,本質是把BTC挖礦執行的哈希算法變爲推演康威生命遊戲的特定算法,這被稱爲vPOW(Virtual POW)。
下面讓我們對vPOW的機制設計展开更深入的解析,不得不說,這裏的很多細節非常有趣,可以說Cellula在做的事情之一,是通過鏈上NFT交易鏈條來模擬BTC的礦機產業鏈模型。
vPOW的核心:康威生命遊戲與BitLife
在對Cellula的機制設計展开解讀前,讓我們先來看看vPOW最重要的核心——“康威生命遊戲”,它最早可追溯到馮諾依曼於1950年提出的“細胞自動機”概念,而後數學家約翰·康威在1970年正式提出“康威生命遊戲”,用算法模擬自然界生命的演化規律。
假設我們有一個培養皿,將其按照二維坐標劃分出一堆小方格,然後我們對培養皿進行“初始設置”,讓一些活細胞佔據部分方格,此後這些細胞的生死狀態將隨時間演化,逐漸呈現出形態復雜的細胞集群(大家可以想像黴菌是怎么繁殖的)。這本質是一個二維格子遊戲,規則非常簡單:
-
每個細胞有兩種狀態:存活/死亡,就像掃雷遊戲一樣,每個細胞和自己周圍八個方格上的細胞會產生互動(如圖,黑色爲存活,白色爲死亡);
-
假設某細胞存活,但周圍8格內存活細胞小於2個(0或1),則該細胞進入死亡狀態;
-
某細胞存活,且周圍有2個或3個存活細胞時,該細胞仍保持存活;
-
細胞爲存活狀態,周圍有超過3個存活細胞時,該細胞進入死亡狀態(模擬生命數量過多而爭搶資源的場景);
-
當前細胞爲死亡狀態,但周圍有3個存活細胞時,該細胞轉入存活狀態(模擬細胞增殖)
所以很簡單,在二維培養皿中給定細胞狀態的初始模式,然後按照上述規則,細胞狀態會隨時間推移,不斷地演化迭代,產生千變萬化的結果。你甚至能用康威生命遊戲模擬出計算機的效果。
比如說,培養皿中每個細胞的生/死,對應着二進制的0/1,你可以把細胞初始狀態視爲“輸入參數”,每個細胞的生死(0或1)代表輸入數據,之後細胞狀態會按照初始模式开始演變,每一輪狀態變化就相當於計算過程中的一步操作,經過一段時間後得到的狀態,可以看作“輸出”。
只要布置適當的初始模式,康威生命遊戲能在經過若幹代演變後,輸出特定結果。由於初始模式千變萬化,可以利用其特性模擬出彩票抽獎的效果。我們可以設置限制條件,每個玩家隨機選擇一批初始模式,經過100代演化後,輸出結果滿足xx特徵的培養皿主人有資格獲取獎勵,這樣就和BTC挖礦的思路比較接近了:
“系統先限定哪類輸出結果符合要求,參與者向給定算法輸入隨機的初始值,嘗試得到符合要求的輸出結果”。由於待嘗試的初始輸入參數非常多(幾乎是天量),你必須要付出很大努力才能撞大運中獎,這正是工作量證明的邏輯:礦工必須要付出一定工作量才能獲取獎勵。
在理解了Cellula和康威生命遊戲的基本思想後,我們再看他具體的細節設計。Cellula把前面說的“培養皿”分爲9*9=81個方格,每個方格上的細胞有生/死兩種狀態(對應二進制的0和1),這樣一來,按照排列組合,培養皿中的細胞初始狀態有2^81種,這個數字等於1萬億的平方(基本是個天文數字)。
然後,玩家要做的是對培養皿的初始模式(輸入參數)進行選擇。BitLife充當了培養皿的實體(實際是個NFT),包含81個方格,每個方格上放置一個細胞(可能有生/死兩種狀態,空置的方格等價於死細胞)。然後,BitLife中每3*3=9個相鄰方格構成一個BitCell,每個BitLife由2~9個BitCell拼接而成(如果你構造的Bitlife不足9個Bitcell,有些地方就被空置,默認都是死細胞)。
按照排列組合,BitCell(3*3方格)有2^9種初始模式,玩家要做的就是隨機挑選不同模式的多個BitCell組合起來,構造出一個BitLife。簡單來解釋,就是爲自己的培養皿隨便找一個初始模式,然後前面講過,不同的初始模式總計有2^81種,是個天文數字。所以留給參與者的選擇空間非常大,這就和BTC挖礦裏用SHA-256的場景有點像。
BitLife的細胞狀態會隨着區塊高度的增加而變化。Cellula按照不同區塊高度下BitLife的狀態來分配算力。給定一個區塊高度,包含的存活細胞越多的BitLife擁有的算力越高,這就相當於創造了一種虛擬礦機。
這裏舉個具體的例子,Cellula參與者要在鏈下窮舉BitLife的2^81種初始模式,預測每種模式演化後的狀態,然後看能否符合獎勵系統的要求。假設現在的區塊高度爲800,而系統提出要求:區塊高度爲1000時,存活細胞數最多的BitLife能獲得最多的獎勵,那么參與者的目標會很明確:
在區塊高度爲800時,我要獲取某個模式的BitLife,該模式的BitLife在區塊高度爲1000時,能比其他BitLife有更多存活細胞。
這其實就是Cellula的核心玩法,你的目標就是自己構造/從別人手上买到最有可能獲得挖礦獎勵的BitLife,這種模式就相當於允許普通散戶/高級散戶自己研發礦機,然後你可以把自己造的礦機賣給別人,可以購买別人的礦機來挖礦。如果你要自己造礦機,那就要在鏈下自行推演出不同模式的BitLife的狀態演化,這會耗費計算資源;如果你要买別人的礦機,其實就是买不同初始模式的Bitlife,你要自行判斷這些BitLife未來的狀態變化,所以你還是要在鏈下自行計算。這其實是整個Cellula遊戲設計中非常有趣的一個點。
在理解了遊戲的核心機制後,我們再來看其他細節:其實BitLife中的活細胞可以溢出到初始的9*9格子外,存活的細胞數可以遠大於9*9個,沒有邊界限制。如圖所示,如果某個BitLife包含的活躍細胞數不斷增多,其分配到的挖礦算力也會越來越高,而如果BitLife的初始模式選擇不當,活細胞數越來越少,算力也會越來越低。
然後,系統會每隔5分鐘分發一定的挖礦獎勵(遊戲裏稱爲能量點),根據每個BitLife在網絡中的算力份額來分配。
在Cellula中,玩家合成BitLife的過程,就是一個“制造”新礦機的過程。我們前面曾提到,BitLife的實體是一個NFT,BitLife在鏈上被mint出來後,要進行“充電”操作才能啓動挖礦,單次充電有效期爲1天、3天和7天,需要支付一筆小額手續費,且到期後需要繼續充電。
這裏要說下,爲了鼓勵用戶多去對BitLife進行充電,Cellula設置了一個“充電抽獎”功能,你每次發起充電操作時都可能被選中,獲得一些額外獎勵(就是說這個獎勵和挖礦獎勵獨立开)。這塊的設計我們會在後面Analysoor算法的部分簡單介紹下。
按照Cellula官方的規則,目前包含3*3個Bitcell(也就是包含81個小方格)的BitLife鑄造已經停止,玩家們一共鑄造了150多萬個此類BitLife,未來新用戶可以在二級市場購买BitLife並進行充電挖礦。按照官方的解釋,限量鑄造是爲了維持遊戲生態的穩定,防止有科學家無限的鑄造BitLife NFT導致礦機價值縮水。
而且在未來,Cellula將引入類似於礦機制造商的角色,這個角色基於許可制,要質押代幣、公示銷售渠道、具有一定社區規模和影響力等,這些制造商將負責鑄造和銷售包含4x4個BitCell的BitLife,也就是包含16*9=144個小方格。制造商可以鑄造的BitLife量,將受到其質押代幣量的限制。
在此我們大致把vPOW涉及的核心概念通俗解釋了一遍。vPOW的本質是基於給定規則的計算模型,參與者可以通過優化策略來參與競爭,通過遊戲化的方式進行資產發行與分配。Cellula模擬了BTC礦機市場的運作形式,替換了工作量證明中的計算任務形式,由於挖礦算力的分配方式可以動態調整,任何模式的BitLife都未必是全局最優的,今天細胞存活數最多的BitLife,明天就可能被其他BitLife超越,這會導致復雜的湧現現象和動態的策略。
Analysoor抽獎算法和VRGDAs指數定價曲线
在前面我們主要針對康威生命遊戲及Cellula的核心機制進行了展开式的解讀,下面我們再來考察下遊戲中包含的其他設計。上面我們提到Cellula有個充電抽獎環節,這裏用到了名爲Analysoor的隨機數輸出算法,它把區塊哈希作爲隨機數生成器的輸入參數,抽出每個區塊裏參與充電者中的贏家,引入了一種彩票制度。
比如在Analysoor的設計中,當前BNB Chain的區塊哈希爲6mjv....的一長串字符串,裏面包含4個數字:6、2、1、6。按照這幾個數字在字符串中的排序,第一個數字是6,最後一個數字是6,爲偶數,將從前往後計數。提取出來的數字是從0开始計數的,於是數字6對應的交易排序是7,就從當前區塊裏把第7個充電玩家視爲中獎者。當然具體的設計可以更靈活,這裏只是舉個例子。上述隨機性的抽獎算法可以有效激勵玩家多充電,調動遊戲內生態的活躍度。
此外,在Cellula的整個交易模型中,有一個問題:某種模式的BitLife一旦被某個大佬Mint出來,其採用的BitCell組合方案會被公开,其他人也可以“跟風”,按照相同的組合方案去mint BitLife,最後很容易引發一堆人跟風的現象,嚴重影響遊戲結果的隨機性。爲此,Cellula引入了可變速率漸進荷蘭拍賣(VRGDAs),這是由Paradigm开發的定價算法,會動態調整價格——當鑄造量超預期時擡價,鑄造量不及預期時降價。
假設初始預期是每天鑄造10個A類NFT,起始價格爲1個CKB。本來到了第5天,預期人們共計鑄造50個A類NFT,但因爲很多人跟風,鑄造量達到70個,這相當於原計劃到第7天實現的目標。爲了限速,要通過指數定價曲线快速提高鑄造價格,單價漲到4個CKB來抑制鑄造行爲。
如果到第15天,只鑄造了120個(原計劃此時鑄造共150個),沒有達到預期銷量,這時會下調價格,刺激鑄造量。
在上述場景中,當某類BitLife在短時間內被大量鑄造時,該類NFT的鑄造價格會指數級增長,這種劇烈的價格上漲可以有效的防住科學家。
總結:從玩家博弈的視角看待Cellula
在講完了Cellula的全部核心設計後,我們不妨從玩家的博弈視角來看待這一腦洞大开的遊戲機制。首先,在vPOW中有很多參與方,每個參與方的策略都不同,以一級發行市場爲例,一個”科學家“可以寫代碼,組合不同的BitCell去找到算力更高的BitLife,獲取更高的挖礦收益,同時會存在一些MEV玩家,他們監聽鏈上的鑄造事件,當發現某個NB的科學家鑄造了某類型的BitLife時,他們也會跟風大量鑄造。
但由於VRGDAs指數型定價算法的存在,單一類型的BitLife鑄造價格可以指數級增長,這樣可以有效的防住科學家(反女巫),當然也會對BitLife/礦機進行定價,如果某類礦機的算力高,它的鑄造/生產價格也會很高,後面流通在二級市場的價格會參考生產價,進而傳導到整個供應鏈當中。
類比BTC礦機的發行過程,科學家發現某類型BitLife的算力高,就好像礦機公司研發出新的芯片,MEV玩家跟風鑄造,就好像一級經銷商完成礦機的定價,而後的二級市場交易就類似於散戶從經銷商手中購买設備。
不同的是相比現實世界的礦機研發,科學家發現新的BitLife的速度會快很多,而且任何人都可以參與到BitLife的狀態推演中,很大程度上相當於降低了礦機的研發權力,“人人都有機會成爲科學家”,這對於大多數人而言是更爲友好的,也是現實中礦機生產鏈條中不可能出現的。
而對於項目方本身而言,採用POW式的資產分發方案本身就削弱了他的權力,所以,無論是科學家還是項目方,亦或是普通玩家,都無法單方面控制市場。在礦機鑄造環節以及發行環節,就產生了這三方的博弈,沒有一方能夠完全壟斷市場,這可以形成一種動態的平衡。
總體而言,相比於BTC礦機產業鏈,Cellula的方案是一種更有趣的社會實驗。
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。