كيف تكشف سرقة الوقود والتلاعب بعمليات التعبئة بالذكاء الاصطناعي

لطالما كان اكتشاف عمليات سحب الوقود والتلاعب بعمليات التعبئة في بيانات التليماتكس مسألة شيّقة. وتتعامل معها أنظمة المراقبة الحديثة، ومنها Navixy، بكفاءة. غير أن نماذج الذكاء الاصطناعي بدأت تحلّ تدريجياً محل خوارزميات الكشف التقليدية، فهي قادرة على تصنيف الأحداث ورصد الشذوذ مباشرةً من البيانات الخام.
اختبرنا هذا النهج عملياً. بنينا نموذجاً أولياً يمرّر مقاطع من بيانات التليماتكس من IoT Query، منصة التحليلات من Navixy، إلى نموذج Jev من Typesafe AI، ثم يتلقى تصنيف الحدث مع درجات تساعد على تفسير النتيجة. ونؤكد هنا أن Jev لا يُطرح بديلاً عن الحلول الحالية لاكتشاف أحداث الوقود، بل هو أداة إضافية وطريقة جديدة لبناء الحلول.
القيمة الرئيسية لهذا النهج هي المرونة وإمكانية التخصيص. فالجمع بين IoT Query وJev يتيح للمطوّرين ومتكاملي الأنظمة بناء تطبيقاتهم الخاصة لاتخاذ القرار، بما يلائم تماماً عمليات الأعمال في كل شركة. والغاية ليست استبدال ما يعمل بالفعل، بل توسيع الممكن بفضل نماذج الذكاء الاصطناعي.
أين ولماذا تفيد نماذج الذكاء الاصطناعي مثل Jev
لا يكتب Jev نصوصاً ولا يولّد شيفرة برمجية. مهمته الأساسية إعادة قرارات مُهيكلة واحتمالات تستطيع التطبيقات وأنظمة القرار استخدامها فوراً. ويتلقى النموذج كتلتين من المدخلات:
- حالة النظام (المعاملات والقيم وسياق JSON).
- مجموعة من الأسئلة محددة النوع.
يقيّم Jev كل سؤال استناداً إلى الحالة التي تلقاها، ويعيد أحد الخيارات الثابتة مع احتمال. ويستطيع المستخدم أو الوكيل الذي يعمل لحسابه استخدام النتائج لاحقاً في التطبيقات، مثلاً لاتخاذ القرارات.
كيف نكتشف عمليات السحب والتعبئة باستخدام Jev
في إدارة الأسطول، تبقى مسائل الوقود من أكثرها حساسية. واليوم أصبحت عمليات السحب أقل تكراراً، لكن التلاعب بالإيصالات لم يختفِ: يذكر الإيصال 50 لتراً، بينما دخل الخزان 40 لتراً فقط.
تقليدياً، تُستخدم المتوسطات المتحركة وتعلّم الآلة الكلاسيكي لإيجاد هذه الأحداث. أما الآن فيمكن أن يكون نموذج الذكاء الاصطناعي في صميم اكتشاف الأحداث. فهو يجيب على البيانات الخام بـ«هذه تعبئة» أو «هذا سحب» أو «هذه معايرة أو نقل سائل» أو «لست متأكداً»، ويضيف فوراً الاحتمال والحجم المحسوب.
لتحليلات مخصصة ضمن منظومة Navixy، يُعدّ IoT Query خياراً مناسباً. فهو يتيح الوصول إلى النطاق الكامل لبيانات العميل، من التليماتكس إلى بيانات الأعمال المستخدمة في التكاملات وفي بناء تطبيقات التحليلات الخاصة بك. وفي نموذجنا الأولي نستخدم البيانات الخام أساساً لتحليل الأحداث، ويحدد Jev النوع الذي ينتمي إليه كل حدث.
يعمل النموذج الأولي بطريقة بسيطة:
- تراقب خوارزمية مستوى الوقود وتضع علامة على الأحداث المرشحة (التغيرات الحادة في الحجم).
- تقتطع مقطعاً قصيراً من السلسلة الزمنية بمعاملات التليماتكس.
- تمرّر المقطع إلى Jev مع الأسئلة محددة النوع.
- يعيد النموذج فئة الحدث والاحتمال وتقديرات إضافية.
والنتيجة سجل بهذا الشكل: 13:32 — تعبئة، 67 لتراً، احتمال 87%
كيف يبدو الطلب والاستجابة
من الناحية التقنية، التفاعل بسيط. نمرّر إلى النموذج كائن state بمعاملات الحدث، وكائن questions بما يجب تقييمه تحديداً.
الطلب المرسل إلى النموذج:
{
"model": "typesafe/jev-1.13",
"state": {
"vehicle_speed": "...",
"vehicle_stationary": "...",
"gps_quality": "...",
"..."
},
"questions": {
"real_fuel_increase": {
"type": "noul",
"instructions": "Is the observed fuel increase a genuine added volume rather than sensor noise, tilt, a spike, or recovery from zero?",
"criteria": {
"true": "Sustained, physically plausible increase from a non-empty tank.",
"false": "Change is within noise, oscillatory, a recovery from zero, or not a real fill."
}
},
"..."
}
}
يسرد state معاملات النافذة وقيمها: الخزان (قبل وبعد والفارق ومعدل التعبئة)، والحركة (السرعة وما إذا كانت المركبة متوقفة وبيانات GPS)، وجودة الإشارة (الضوضاء والانقطاعات وعدد النقاط)، وحدود الملف التعريفي (الحد الأدنى للتعبئة والخزان الفارغ والسرعة القصوى عند المضخة).
أما questions فهي أسئلة إجابتها نعم أو لا (noul): زيادة حقيقية، نقص حقيقي، ضوضاء، توقف المركبة، يشبه تعبئة، يشبه سحباً، معايرة. وهناك أيضاً سؤال واحد من نوع «اختر فئة» (event_type): تعبئة أو سحب أو شذوذ أو معايرة أو غير متأكد.
تتضمن الاستجابة درجات لكل مؤشر على حدة ونتيجة التصنيف:
{
"answers": {
"real_fuel_increase": { "noul": 0.87 },
"real_fuel_decrease": { "noul": 0.11 },
"sensor_noise": { "noul": 0.07 },
"vehicle_stationary": { "noul": 0.77 },
"matches_refuel_profile": { "noul": 0.94 },
"matches_drain_profile": { "noul": 0.02 },
"likely_calibration": { "noul": 0.08 },
"gap_confounds_event": { "noul": 0.07 },
"event_type": {
"choice": "REFUEL",
"confidence": 1.0,
"probabilities": {
"REFUEL": 1,
"FUEL_DRAIN": 0,
"FUEL_SENSOR_ANOMALY": 0,
"CALIBRATION_SHIFT": 0,
"UNKNOWN_FUEL_EVENT": 0
}
}
}
}
في هذا المثال اختار النموذج الفئة REFUEL، وقدّر تطابق الحدث مع ملف التعبئة بـ0.94، وقدّر حقيقة ارتفاع مستوى الوقود بـ0.87.
ما النتائج التي حصلنا عليها؟
اختبرنا النموذج على نوافذ بيانات أسبوعية، بما يقرّب الظروف من مهام مدير الأسطول، وقارنا النتائج بالأحداث الفعلية.
| المؤشر | النتيجة |
|---|---|
| تغطية البيانات | 93.8% |
| الدقة | 98.4% |
| موثوقية أحداث التعبئة والحجم المحسوب | 99% |
استخدم النموذج الأولي 25 معاملاً من طبقة البيانات الخام في IoT Query، بما فيها حدود يمكن ضبطها لأسطول وحساسات بعينها، إضافة إلى مقاييس مخصصة.
تتيح هذه المرونة عكس سير العمل الفعلي: دمج التغيرات المتتالية في حدث تعبئة واحد، والتمييز بين أعطال القياس عن بُعد والسرقة المحتملة، ومعالجة الحالات الحدّية معالجة صحيحة.
ما الخطوة التالية؟
التعبئة والسحب ليسا سوى سيناريو واحد. وفي العمل اليومي للأسطول مهام كثيرة من هذا النوع:
- دخول السياج الجغرافي والخروج منه: تغيير متفق عليه في المسار أو مخالفة؛
- توقف طويل: تفريغ مخطط له أو انتظار؛
- فقدان الاتصال: غياب مؤقت للتغطية أو عطل في الجهاز.
وفي جميع هذه الحالات يمكن أن يصبح الجمع بين IoT Query (البيانات الخام) وJev (تصنيف حتمي مع احتمالات) أساساً لحل تحليلات أحداث مخصص أو لنظام مستقل لاتخاذ القرار. هل تريد بناء تطبيقاتك الخاصة على بيانات التليماتكس؟ تواصل معنا.
لمعرفة المزيد عن بناء الأنظمة القائمة على الوكلاء فوق بيانات التليماتكس، اقرأ مقالنا عن التحليلات التحادثية.
