إنتقل إلى المحتوى الرئيسي

محرك إجماع PRISM

تدمج QoreChain PRISM (Policy-driven Reinforcement-learning for Intelligent State Machines)، وهي طبقة تحسين قائمة على التعلّم المعزَّز، مباشرةً في طبقة الإجماع عبر وحدة x/rlconsensus. تراقب PRISM مقاييس السلسلة كل N كتلة، وتُجري الاستدلال عبر شبكة عصبية ثابتة الفاصلة، وتقترح تعديلات لمعاملات الإجماع — كل ذلك بشكل حتمي، دون أي حسابات فاصلة عائمة في المسارات الحرجة للإجماع.

حلقة تحسين PRISM: مراقبة حالة السلسلة، تشغيل استدلال السياسة، حصر تغييرات المعاملات وتطبيقها، ثم تغذية النتيجة راجعةً.


نظرة عامة على البنية

تتألف PRISM من أربعة مكوّنات:

  1. مجمِّع المراقبة (Observation Collector) — يجمع متجهات حالة السلسلة ذات الأبعاد الـ25 على فواصل قابلة للضبط.
  2. شبكة السياسة (Policy Network، MLP) — مدرَك متعدد الطبقات أصيل بلغة Go يربط المراقبات بالإجراءات.
  3. حاسِب المكافأة (Reward Computer) — يقيّم جودة تغييرات المعاملات باستخدام دالة موزونة متعددة الأهداف.
  4. قاطع الدارة (Circuit Breaker) — يراقب صحة السلسلة ويعيد جميع المعاملات المضبوطة بـPRISM إن اكتُشف عدم استقرار.

تعمل جميع المكوّنات ضمن دورة حياة ABCI وتنتج مخرجات حتمية وقابلة للتحقق عبر كل عقد المدققين.


شبكة السياسة

شبكة السياسة هي مدرَك متعدد الطبقات أمامي التغذية (MLP) مطبَّق بالكامل بلغة Go باستخدام حساب فاصلة ثابتة من نوع int64 (مقيَّس بـ10^8).

بنية الشبكة

الخاصيةالقيمة
أبعاد المدخل25
الطبقات المخفية2
أحجام الطبقات المخفية256, 256
أبعاد المخرَج5
التفعيل (المخفي)ReLU
التفعيل (المخرَج)tanh
إجمالي المعاملات73,733
الدقةفاصلة ثابتة int64 (مقيَّسة بـ10^8)

تفصيل عدد المعاملات

Layer 1: 25 * 256 + 256 = 6,656 (input -> hidden_1)
Layer 2: 256 * 256 + 256 = 65,792 (hidden_1 -> hidden_2)
Layer 3: 256 * 5 + 5 = 1,285 (hidden_2 -> output)
Total: 73,733

حساب الفاصلة الثابتة

تستخدم جميع حسابات الـMLP قيم int64 مقيَّسة بـFixedPointScale = 10^8. ويلغي هذا عدم الحتمية الناتج عن اختلافات تقريب الفاصلة العائمة وفق IEEE 754 عبر المنصات العتادية.

  • الضرب: fixMul(a, b) = (a / SCALE) * b + (a % SCALE) * b / SCALE (مقسوم لمنع الفيضان)
  • ReLU: relu(x) = max(0, x)
  • tanh: مقرَّب بادي tanh(x) ~ x * (3*S - x^2) / (3*S + x^2) عندما |x| <= 2.5*SCALE، ويُحصَر إلى +/- SCALE خلاف ذلك

تُخزَّن أوزان السياسة على السلسلة بوصفها متجه []int64 مسطَّحًا ويمكن تحديثها عبر مقترح حوكمة.


متجه المراقبة

تجمع PRISM متجه مراقبة ذا 25 بُعدًا عند كل فاصل مراقبة (الافتراضي: كل 10 كتل).

الفهرسالبُعدالوصف
0block_utilizationغاز الكتلة المستخدَم / حد غاز الكتلة
1tx_countعدد المعاملات في الكتلة
2avg_tx_sizeمتوسط حجم المعاملة بالبايت
3block_timeالزمن منذ الكتلة السابقة (ms)
4block_time_deltaزمن الكتلة ناقص زمن الكتلة المستهدف (ms)
5gas_price_50thوسيط سعر الغاز
6gas_price_95thسعر الغاز عند المئين الـ95
7mempool_sizeعدد المعاملات المعلَّقة
8mempool_bytesإجمالي بايتات المعاملات المعلَّقة
9validator_countعدد المدققين النشطين
10validator_giniمعامل جيني لتوزيع قوة المدققين
11missed_block_ratioنسبة المدققين الذين فاتهم التوقيع
12avg_commit_latencyمتوسط زمن استجابة جولة الالتزام (ms)
13max_commit_latencyأقصى زمن استجابة لجولة الالتزام (ms)
14precommit_ratioنسبة التزامات ما قبل التثبيت المستلمة
15failed_tx_ratioنسبة المعاملات الفاشلة
16avg_gas_per_txمتوسط الغاز المستهلَك لكل معاملة
17reward_per_validatorمتوسط المكافأة لكل مدقق (uqor)
18slash_countعدد أحداث القَطع في نافذة المراقبة
19jail_countعدد أحداث السجن في نافذة المراقبة
20inflation_rateمعدّل الانبعاث الحالي
21bonded_ratioالرموز المرهونة / إجمالي المعروض
22reputation_meanمتوسط درجة السمعة عبر المدققين النشطين
23reputation_stddevالانحراف المعياري لدرجات السمعة
24mev_estimateMEV المقدَّر المستخلَص (إرشادي)

تُخزَّن جميع القيم بوصفها تمثيلات نصية من نوع LegacyDec وتُحوَّل إلى فاصلة ثابتة int64 قبل الاستدلال.


فضاء الإجراءات

مخرَج الـMLP هو متجه إجراء ذو 5 أبعاد، حيث يمثّل كل بُعد تغييرًا مقترحًا لمعامل إجماع. ويقيّد تفعيل tanh المخرجات الخام إلى [-1، 1]، التي تُقيَّس بعدها بحدود خاصة بالوضع.

الفهرسبُعد الإجراءالوصف
0block_time_deltaالتغيير المقترح لزمن الكتلة المستهدف (ms)
1gas_price_deltaالتغيير المقترح لسعر الغاز الأساسي
2validator_set_size_deltaالتغيير المقترح لحجم مجموعة المدققين المستهدَف (مسجَّل فقط، غير مطبَّق)
3pool_weight_rpos_deltaالتغيير المقترح لوزن أولوية تجمّع RPoS
4pool_weight_dpos_deltaالتغيير المقترح لوزن أولوية تجمّع DPoS

تُحصَر الإجراءات إلى حدود التغيير القصوى المحدَّدة بوضع PRISM الحالي قبل التطبيق.


دالة المكافأة

تقيّم إشارة المكافأة مدى تحسين التغييرات الأخيرة للمعاملات لأداء السلسلة. وتُحسَب بوصفها مجموعًا موزونًا لخمسة أهداف:

R = 0.30 * delta_throughput
+ 0.25 * delta_finality
+ 0.20 * delta_decentralization
- 0.15 * mev_estimate
- 0.10 * failed_tx_ratio
المكوّنالوزنالاتجاهالمقياس المصدر
الإنتاجية+0.30تعظيمالتغيير في استخدام الكتلة
الحسم+0.25تعظيمالتغيير في نسبة ما قبل التثبيت
اللامركزية+0.20تعظيمالتغيير السالب في معامل جيني للمدققين
MEV-0.15تصغيرتقدير MEV الحالي
المعاملات الفاشلة-0.10تصغيرنسبة المعاملات الفاشلة الحالية

أوزان المكافأة قابلة للضبط بالحوكمة ويجب أن يكون مجموعها 1.0 بالضبط.


أوضاع PRISM

تعمل PRISM بأحد أربعة أوضاع، قابلة للتحكم عبر الحوكمة:

الوضعالمعرّفأقصى تغييرالسلوك
Shadow00%المراقبة وتسجيل التوصيات فقط. لا تتغيّر أي معاملات. وهذا هو الوضع الافتراضي.
Conservative1+/- 10%تطبيق تغييرات المعاملات ضمن حدود ضيّقة. مناسب للنشر الحيّ الأولي.
Autonomous2+/- 25%تطبيق تغييرات المعاملات ضمن حدود أوسع. للشبكات الناضجة ذات السياسات المُتحقَّقة.
Paused30%PRISM خاملة تمامًا. لا تُجمَع مراقبات ولا يُشغَّل استدلال.

تتطلب انتقالات الوضع مقترح حوكمة. ومسار النشر الموصى به هو: Shadow ← Conservative ← Autonomous.


قاطع الدارة

قاطع الدارة آلية أمان تراقب صحة السلسلة وتعيد تلقائيًا جميع المعاملات المضبوطة بـPRISM إن اكتُشف عدم استقرار.

منطق الكشف

يقيّم قاطع الدارة آخر 50 كتلة (قابلة للضبط عبر circuit_breaker_window):

  1. حساب فروق زمن الكتلة — لكل زوج متتالٍ من طوابع زمن الكتل، يُحسَب فرق زمن الكتلة.
  2. تصنيف الكتل السليمة — تُعَدّ الكتلة سليمة إن كان فرقها موجبًا وضمن ضعفَي زمن الكتلة المستهدف.
  3. حساب النسبة السليمة — تُحسَب النسبة السليمة = الكتل السليمة / إجمالي الفروق.

شرط الإطلاق

إذا انخفضت النسبة السليمة دون العتبة (الافتراضي: 50%)، يُطلَق قاطع الدارة.

الاستجابة

عند الإطلاق، يقوم قاطع الدارة بـ:

  1. إعادة جميع المعاملات المطبَّقة بـPRISM (زمن الكتلة، سعر الغاز، أوزان التجمّعات) إلى قيمها الافتراضية.
  2. إيقاف PRISM مؤقتًا (يضبط CircuitBreakerActive = true).
  3. مسح السياسة في الذاكرة لفرض إعادة تحميل جديدة.
  4. إصدار حدث circuit_breaker_triggered.

يُلغى قاطع الدارة تلقائيًا عندما تتعافى النسبة السليمة فوق العتبة في التقييمات اللاحقة.


دوال التجميعات الاستشارية

توفّر PRISM دوالًا استشارية لتحسين معاملات التجميعات:

  • SuggestRollupProfile — تحلّل ظروف السلسلة الحالية وتقترح معاملات إعداد التجميع المثلى (زمن الكتلة، حد الغاز، تردد التسوية).
  • OptimizeRollupGas — توصي بتعديلات تسعير الغاز لمعاملات تسوية التجميعات بناءً على أنماط ازدحام السلسلة الرئيسية.

هذه الدوال إعلامية فقط ولا تعدّل حالة السلسلة.


مكتبة الرياضيات الحتمية

تستخدم جميع حسابات PRISM حزمة mathutil، التي توفّر بدائل حتمية لرياضيات الفاصلة العائمة القياسية:

الدالةالوصفالطريقة
IntegerSqrt(x)الجذر التربيعيطريقة نيوتن على LegacyDec، تقارب بـ100 تكرار
TaylorLn1PlusX(x)اللوغاريتم الطبيعي ln(1+x)تقليص الوسيط + متسلسلة تايلور من 15 حدًّا
ExpApprox(x)الأسّي e^xمتسلسلة تايلور من 12 حدًّا
SigmoidApprox(x)السيني 1/(1+e^-x)ExpApprox بتناظر للمدخلات السالبة
ReputationMultiplier(r)يربط [0،1] بـ[0.5،2.0]سيني مع تحجيم وإزاحة

تعمل جميع الدوال على قيم cosmossdk.io/math.LegacyDec، ما يضمن نتائج متطابقة عبر كل المنصات العتادية وإصدارات مترجم Go.


المعاملات

المعاملالنوعالافتراضيالوصف
enabledbooltrueتفعيل PRISM
observation_intervaluint6410عدد الكتل بين جمع المراقبات
agent_modePrismMode0 (Shadow)الوضع التشغيلي الحالي
max_change_conservativeLegacyDec0.10أقصى تغيير للمعامل في وضع Conservative
max_change_autonomousLegacyDec0.25أقصى تغيير للمعامل في وضع Autonomous
circuit_breaker_windowuint6450عدد الكتل الأخيرة التي يراقبها قاطع الدارة
circuit_breaker_thresholdLegacyDec0.50الحد الأدنى للنسبة السليمة من الكتل قبل الإطلاق
default_block_time_msint645000زمن الكتلة المستهدف الافتراضي (ms)
default_base_gas_priceLegacyDec100سعر الغاز الأساسي الافتراضي
default_validator_set_sizeuint64100حجم مجموعة المدققين المستهدَف الافتراضي
reward_weight_throughputLegacyDec0.30وزن المكافأة لتحسين الإنتاجية
reward_weight_finalityLegacyDec0.25وزن المكافأة لتحسين الحسم
reward_weight_decentralizationLegacyDec0.20وزن المكافأة لتحسين اللامركزية
reward_weight_mevLegacyDec0.15وزن العقوبة لاستخلاص MEV
reward_weight_failed_txsLegacyDec0.10وزن العقوبة للمعاملات الفاشلة

ذات صلة