本發(fā)明涉及分布式緩存領(lǐng)域,具體涉及一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法和系統(tǒng)。
背景技術(shù):
1、web3.0是一個(gè)運(yùn)行在區(qū)塊鏈技術(shù)之上的去中心化互聯(lián)網(wǎng)。它使用戶能夠打造一個(gè)去中心化的通用數(shù)字身份體系,通行于各個(gè)平臺(tái),并在互聯(lián)網(wǎng)上擁有自己的數(shù)據(jù),實(shí)現(xiàn)跨平臺(tái)的數(shù)據(jù)使用和共享。在web3.0中,區(qū)塊鏈和去中心化存儲(chǔ)發(fā)揮著至關(guān)重要的作用。區(qū)塊鏈以其安全性和不可篡改性,為web3.0中的數(shù)據(jù)和資金提供了堅(jiān)實(shí)保障。此外,區(qū)塊鏈還為智能合約提供了安全的執(zhí)行環(huán)境;去中心化存儲(chǔ)系統(tǒng)則為web3.0中的去中心化應(yīng)用程序提供了必要的支持,例如存儲(chǔ)用戶數(shù)據(jù)、智能合約狀態(tài)等信息。所以,區(qū)塊鏈和去中心化存儲(chǔ)共同構(gòu)建了web3.0生態(tài)系統(tǒng)的基礎(chǔ)架構(gòu),為用戶提供了一個(gè)更加安全、透明和去中心化的網(wǎng)絡(luò)環(huán)境。在這里,我們把區(qū)塊鏈和去中心化存儲(chǔ)統(tǒng)稱(chēng)為內(nèi)容提供者,而內(nèi)容請(qǐng)求者主要是使用web3.0應(yīng)用的移動(dòng)終端和個(gè)人電腦。通常,內(nèi)容請(qǐng)求者向內(nèi)容提供者請(qǐng)求的內(nèi)容分為兩種:一種是區(qū)塊鏈中的各種數(shù)據(jù),如交易記錄、智能合約狀態(tài)和用戶身份信息等;另一種是代碼(智能合約的應(yīng)用程序二進(jìn)制接口和字節(jié)碼)。
2、在web3.0緩存系統(tǒng)中,內(nèi)容提供者除了包括具有完整內(nèi)容的區(qū)塊鏈和去中心化存儲(chǔ)以外,還可以是具有緩存能力的預(yù)言機(jī)。預(yù)言機(jī)是一個(gè)具備存儲(chǔ)空間和計(jì)算能力的去中心化節(jié)點(diǎn),它將一部分存儲(chǔ)空間作為緩存池,專(zhuān)門(mén)用于儲(chǔ)存那些web3.0中熱度較高的內(nèi)容。這些高熱度的內(nèi)容主要指的是那些經(jīng)常被訪問(wèn)和查詢的文件、狀態(tài)及代碼等。當(dāng)預(yù)言機(jī)接收到內(nèi)容請(qǐng)求時(shí),會(huì)在自身的緩存空間中查找所需內(nèi)容。如果已經(jīng)緩存了與接收到的內(nèi)容請(qǐng)求相符的內(nèi)容,預(yù)言機(jī)會(huì)將所需內(nèi)容發(fā)送給內(nèi)容請(qǐng)求者。若未找到,則會(huì)向區(qū)塊鏈和去中心化存儲(chǔ)網(wǎng)絡(luò)請(qǐng)求相應(yīng)的內(nèi)容。
3、許多傳統(tǒng)的確定性緩存替換算法已被提出,旨在最大化緩存命中率,例如最近最少使用算法、先進(jìn)先出算法、最不經(jīng)常使用算法、最近最常使用算法等,都試圖在一定的假設(shè)條件下執(zhí)行一種合理且確定的策略,以最大化緩存命中率。然而,這些算法各有缺陷,無(wú)法在各種情況下產(chǎn)生顯著的命中率,因?yàn)檫@些傳統(tǒng)算法無(wú)法適應(yīng)所有請(qǐng)求的情況。
4、綜上所述,一方面,目前web3.0尚未充分利用緩存技術(shù),這一現(xiàn)狀在一定程度上制約了其性能的發(fā)揮與提升;另一方面,傳統(tǒng)的緩存策略已無(wú)法滿足web3.0對(duì)于安全性、隱私性、去中心化的需求;除此以外,傳統(tǒng)的內(nèi)容分發(fā)網(wǎng)絡(luò)存在中心化風(fēng)險(xiǎn)。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本發(fā)明的目的在于提供一種性能更好,安全性更高,適用于web3.0場(chǎng)景下的分布式緩存框架;通過(guò)引入高效的緩存框架以提升其性能,通過(guò)重新設(shè)計(jì)更加契合web3.0的緩存替換策略以滿足對(duì)于安全性、隱私性、去中心化的需求,通過(guò)利用分布式預(yù)言機(jī)網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)緩存來(lái)降低緩存節(jié)點(diǎn)單點(diǎn)故障和數(shù)據(jù)安全等隱患。
2、本發(fā)明通過(guò)一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法和系統(tǒng)實(shí)現(xiàn)本發(fā)明目的的技術(shù)解決方案。
3、在本發(fā)明的第一方面,本發(fā)明提供了一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,包括以下步驟:
4、步驟1、用戶節(jié)點(diǎn)通過(guò)應(yīng)用程序接口向預(yù)言機(jī)節(jié)點(diǎn)發(fā)起請(qǐng)求;
5、步驟2、預(yù)言機(jī)節(jié)點(diǎn)廣播準(zhǔn)備消息;所述準(zhǔn)備消息至少包括特定時(shí)間段的價(jià)值函數(shù)和即時(shí)獎(jiǎng)勵(lì);
6、步驟3、預(yù)言機(jī)節(jié)點(diǎn)訓(xùn)練基于強(qiáng)化學(xué)習(xí)網(wǎng)絡(luò)的間接緩存命中模型;所述訓(xùn)練基于強(qiáng)化學(xué)習(xí)網(wǎng)絡(luò)的間接緩存命中模型包括集中式訓(xùn)練和分布式執(zhí)行,所述集中式訓(xùn)練采用去中心化的預(yù)言機(jī)節(jié)點(diǎn)實(shí)現(xiàn),所述分布式執(zhí)行采用所有預(yù)言機(jī)節(jié)點(diǎn)實(shí)現(xiàn),所述去中心化的預(yù)言機(jī)節(jié)點(diǎn)通過(guò)共識(shí)機(jī)制確定,所述去中心化的預(yù)言機(jī)節(jié)點(diǎn)使得所有預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性之和最??;所述預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性為所述預(yù)言機(jī)節(jié)點(diǎn)通過(guò)協(xié)作學(xué)習(xí)證明計(jì)算得到的在特定時(shí)間段的工作量證明;
7、步驟4、預(yù)言機(jī)節(jié)點(diǎn)廣播訓(xùn)練完成后的基于強(qiáng)化學(xué)習(xí)網(wǎng)絡(luò)的間接緩存命中模型;
8、步驟5、預(yù)言機(jī)節(jié)點(diǎn)驗(yàn)證訓(xùn)練完成后的基于強(qiáng)化學(xué)習(xí)網(wǎng)絡(luò)的間接緩存命中模型;
9、步驟6、預(yù)言機(jī)節(jié)點(diǎn)緩存所需內(nèi)容后響應(yīng)用戶請(qǐng)求,所述緩存獲取所需內(nèi)容包括基于本地緩存池的直接緩存命中和基于強(qiáng)化學(xué)習(xí)網(wǎng)絡(luò)的間接緩存命中。
10、在本發(fā)明的第二方面,本發(fā)明還提供了一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存系統(tǒng),所述系統(tǒng)用于實(shí)現(xiàn)本發(fā)明第一方面所述的方法,所述系統(tǒng)包括去中心化賬本技術(shù)層和預(yù)言機(jī)去中心化網(wǎng)絡(luò);所述去中心化賬本技術(shù)層包括區(qū)塊鏈網(wǎng)絡(luò)和去中心化存儲(chǔ)網(wǎng)絡(luò);所述預(yù)言機(jī)去中心化網(wǎng)絡(luò)包括多個(gè)預(yù)言機(jī);所述預(yù)言機(jī)包括執(zhí)行器和緩存池,所述執(zhí)行器包括數(shù)據(jù)管理模塊、強(qiáng)化學(xué)習(xí)智能體;所述緩存池包括內(nèi)存和非易失性固態(tài)存儲(chǔ)器。
11、本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點(diǎn)在于:
12、(1)本發(fā)明設(shè)計(jì)了基于多智能體強(qiáng)化學(xué)習(xí)的分布式緩存框架,采用模塊化的方式建立結(jié)構(gòu),不會(huì)影響區(qū)塊鏈的原有功能,從而具備面向不同緩存命中場(chǎng)景的泛化能力;
13、(2)本發(fā)明實(shí)現(xiàn)了基于多智能體強(qiáng)化學(xué)習(xí)的緩存替換方案,在預(yù)言機(jī)節(jié)點(diǎn)只能獲取部分觀察情況下通過(guò)協(xié)作訓(xùn)練神經(jīng)網(wǎng)絡(luò)完成緩存任務(wù),同時(shí)具備抵御單點(diǎn)故障的能力;
14、(3)本發(fā)明改進(jìn)了集中式訓(xùn)練分布式執(zhí)行范式,即我們提出了協(xié)作學(xué)習(xí)證明(proof?of?cooperative?learning,簡(jiǎn)稱(chēng)pocl)的分布式訓(xùn)練共識(shí),在原有集中式訓(xùn)練分布式執(zhí)行的范式基礎(chǔ)上,通過(guò)節(jié)點(diǎn)共識(shí)得到去中心化的預(yù)言機(jī)節(jié)點(diǎn),并采用去中心化的預(yù)言機(jī)節(jié)點(diǎn)替代中心化節(jié)點(diǎn)進(jìn)行訓(xùn)練,以更新模型。
1.一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,預(yù)言機(jī)節(jié)點(diǎn)的構(gòu)建方法包括:
3.根據(jù)權(quán)利要求1所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,所述去中心化的預(yù)言機(jī)節(jié)點(diǎn)使得所有預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性之和最小包括預(yù)言機(jī)節(jié)點(diǎn)接收到預(yù)設(shè)條數(shù)的準(zhǔn)備消息;根據(jù)預(yù)設(shè)條數(shù)的準(zhǔn)備消息,計(jì)算得到預(yù)設(shè)個(gè)數(shù)的預(yù)言機(jī)節(jié)點(diǎn)的獎(jiǎng)勵(lì)值;根據(jù)當(dāng)前預(yù)言機(jī)節(jié)點(diǎn)與預(yù)設(shè)個(gè)數(shù)預(yù)言機(jī)節(jié)點(diǎn)的獎(jiǎng)勵(lì)值之間的相似度距離,計(jì)算得到當(dāng)前預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性;根據(jù)預(yù)設(shè)個(gè)數(shù)的預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性,計(jì)算得到使得所有預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性之和最小對(duì)應(yīng)的去中心化預(yù)言機(jī)節(jié)點(diǎn)。
4.根據(jù)權(quán)利要求3所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,所述去中心化的預(yù)言機(jī)節(jié)點(diǎn)使得所有預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性之和最小包括根據(jù)某一預(yù)言機(jī)節(jié)點(diǎn)連續(xù)成為去中心化的預(yù)言機(jī)節(jié)點(diǎn)的次數(shù),計(jì)算得到衰減因子;根據(jù)衰減因子,計(jì)算得到預(yù)言機(jī)節(jié)點(diǎn)經(jīng)過(guò)衰減后的在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性;通過(guò)使得所有預(yù)言機(jī)節(jié)點(diǎn)在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性之和最小得到本次去中心化的預(yù)言機(jī)節(jié)點(diǎn)。
5.根據(jù)權(quán)利要求4所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,所述根據(jù)衰減因子,計(jì)算得到預(yù)言機(jī)節(jié)點(diǎn)經(jīng)過(guò)衰減后的在本次特定時(shí)間段共識(shí)的獎(jiǎng)勵(lì)相似性所采用的計(jì)算公式表示為:
6.根據(jù)權(quán)利要求1所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,所述獎(jiǎng)勵(lì)的計(jì)算公式包括通過(guò)預(yù)言機(jī)節(jié)點(diǎn)在特定時(shí)間段的實(shí)際延遲與最大允許延遲,計(jì)算得到獎(jiǎng)勵(lì)項(xiàng);根據(jù)預(yù)言機(jī)節(jié)點(diǎn)在特定時(shí)間段緩存內(nèi)容的累計(jì)命中數(shù),計(jì)算得到懲罰項(xiàng);根據(jù)獎(jiǎng)勵(lì)項(xiàng)和懲罰項(xiàng)的加權(quán)求和,得到預(yù)言機(jī)節(jié)點(diǎn)的獎(jiǎng)勵(lì)。
7.根據(jù)權(quán)利要求6所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,所述懲罰項(xiàng)的計(jì)算公式表示為:
8.根據(jù)權(quán)利要求1所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,所述預(yù)言機(jī)節(jié)點(diǎn)緩存所需內(nèi)容后響應(yīng)用戶請(qǐng)求包括:
9.一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存系統(tǒng),其應(yīng)用于如權(quán)利要求1-8任一所述的一種融合強(qiáng)化學(xué)習(xí)和協(xié)作學(xué)習(xí)證明共識(shí)的分布式緩存方法,其特征在于,包括去中心化賬本技術(shù)層和預(yù)言機(jī)去中心化網(wǎng)絡(luò);所述去中心化賬本技術(shù)層包括區(qū)塊鏈網(wǎng)絡(luò)和去中心化存儲(chǔ)網(wǎng)絡(luò);所述預(yù)言機(jī)去中心化網(wǎng)絡(luò)包括多個(gè)預(yù)言機(jī);所述預(yù)言機(jī)包括執(zhí)行器和緩存池,所述執(zhí)行器包括數(shù)據(jù)管理模塊、強(qiáng)化學(xué)習(xí)智能體;所述緩存池包括內(nèi)存和非易失性固態(tài)存儲(chǔ)器。