استخدام الرسم البياني (Network Graph) لفهم الشوارع والتقاطعات

في موضوعنا السابق، استعرضنا أنماط شبكات الطرق في المدن السعودية وكيف تؤثر على التنقلات المرورية، التخطيط الحضري، والاستدامة. تطرقنا إلى تحليل توزيع الشوارع واتجاهاتها، وتأثير العوامل الجغرافية والتاريخية على تصميم الطرق، مما يساعد في فهم تحديات البنية التحتية ودورها في تحقيق رؤية 2030.

لكن كيف يمكننا قياس مدى كفاءة شبكات الطرق بدقة؟ وما هي الأدوات التي تمكننا من تحليلها بشكل علمي؟ هنا يأتي دور الرسم البياني (Network Graph)، التي توفر طريقة قوية لفهم تعقيدات شبكات الشوارع من خلال مجموعة من المقاييس الرياضية. في هذا المقال، سنستكشف كيف يمكن استخدام الرسم البياني (Network Graph) لتحليل شبكات الطرق، وقياس كثافة العقد والتقاطعات، وفهم أنماط التخطيط المختلفة، مما يتيح لنا تحسين تصميم المدن وضمان تدفق مروري أكثر كفاءة.

سنُجري تحليلًا شاملًا لشبكة الطرق في مدينة الرياض من خلال دراسة البيانات الإحصائية والتعمق في توزيع الشوارع، كثافة التقاطعات، وامتدادات الطرق لفهم مدى ترابط البنية التحتية وتأثيرها على حركة المرور والتنقل الحضري.

البيانات ومنهجيات التحليل

سنعتمد على بيانات مفتوحة المصدر من OpenStreetMap (OSM) للحصول على معلومات تفصيلية حول شبكة الطرق في مدينة الرياض، بما في ذلك الشوارع الرئيسية، التقاطعات، والتوزيع العام للطرق. بعد تحميل البيانات، سنقوم بتحليلها باستخدام تقنيات تحليل الشبكات (Network Analysis) لدراسة بنية الطرق، تحديد كثافة التقاطعات، وقياس مدى كفاءة الشبكة.

التحليل المبدئي والخصائص العامة لطرق الرياض

عند استعراض شبكة الطرق في مدينة الرياض، وكما يظهر في الصورة التالية، يمكن ملاحظة توزيع الطرق وتفرعاتها بشكل واضح، حيث تمتد الشبكة عبر مناطق متعددة بتصميمات مختلفة تعكس طبيعة التخطيط الحضري للمدينة. بالإضافة إلى ذلك، تظهر التقاطعات بشكل بارز، ممثلة بالنقاط الخضراء، والتي تعكس نقاط التقاء الشوارع والمفترقات الرئيسية. هذه التقاطعات تلعب دورًا أساسيًا في تنظيم حركة المرور وتوجيه تدفق المركبات.

صورة شبكة طرق مدينة الرياض

وبالتقريب إلى جزء معين من الخريطة، يمكن ملاحظة أن النقاط الخضراء تمثل التقاطعات (Nodes)، وهي النقاط التي يلتقي فيها طريقان أو أكثر، أو تمثل نهاية الطريق في حالة الطرق المغلقة أو الشوارع الفرعية. أما الخطوط التي تربط بين هذه النقاط، فتمثل الطرق (Edges)، والتي تعكس الامتدادات الفعلية للشوارع في شبكة الطرق.

في علوم الحاسب وتحليل الشبكات، يتم تمثيل شبكات الطرق على شكل رسم بياني (Graph)، حيث تمثل العقد (Nodes) المواقع المهمة مثل التقاطعات والنهايات، بينما تمثل الحواف (Edges) الشوارع التي تربط بين هذه النقاط. هذا النموذج يساعد في فهم تدفق الحركة المرورية، واكتشاف الأنماط الهندسية للشبكة، وتحليل مدى كفاءة الطرق في الربط بين المناطق المختلفة داخل المدينة.

Pasted image 20250310213912.png

النقاط الخضراء تمثل التقاطعات (Nodes)

سنقوم باستعراض بعض الاحصائيات الخاصة بالطرق قبل اجراء عمليات المعالجة, حتى نقوم بمعرقة طبيعة الطرق والتقاطعات وكانت النتيجة انها تحتوي على 153,104 تقاطع و393,039 طريق، مما يعكس بنية معقدة نسبيًا من الطرق والتقاطعات التي تربط بين أجزاء المدينة المختلفة. يشير هذا العدد الكبير من العقد والحواف إلى شبكة طرق مترابطة وواسعة الامتداد. يبلغ متوسط عدد الشوارع المتصلة بكل تقاطع حوالي 5.13، مما يدل على وجود درجة جيدة من الاتصال بين الشوارع، وهو أمر أساسي لضمان حركة مرور سلسة وتوزيع متوازن لحركة المركبات عبر المدينة, وايضًا لعمليات التنقل او الملاحة.

لماذا يختلف الطول الإجمالي للطرق عن الطول الإجمالي للحواف في شبكة الشوارع؟ الأول يعكس المسافة الحقيقية للطرق التي تسير عليها المركبات، بينما الثاني يشمل جميع الامتدادات بما فيها التكرارات للاتجاهات والحارات المتعددة.

يمتد إجمالي طول الطرق في الرياض ليصل إلى حوالي 27.89 مليون متر (27,890 كم)، مما يعكس مساحة كبيرة مغطاة بشبكة طرق متنوعة من حيث الامتداد والتصميم. يبلغ متوسط طول كل جزء من الطريق حوالي 119.87 متر، وهو مؤشر على أن معظم الشوارع مقسمة إلى مقاطع قصيرة نسبيًا، ما قد يساهم في تسهيل حركة المرور وتوزيعها بشكل أكثر كفاءة. بالإضافة إلى ذلك، يبلغ إجمالي طول جميع الحواف في الشبكة حوالي 44 مليون متر (44,000 كم)، مما يوضح مدى كثافة وترابط شبكة الطرق في المدينة.

ويشير متوسط التعرج (1.0367) إلى أن الطرق في الرياض مستقيمة نسبيًا، حيث يكون الطول الفعلي للطريق قريبًا من المسافة المستقيمة بين نقطتي البداية والنهاية، مما يعكس تخطيطًا حضريًا منظّمًا يسهم في تسهيل التنقل وتقليل المسافات المقطوعة. أما نسبة الحلقات المغلقة، والتي تبلغ 0.18٪، فتعكس عدد الطرق التي تبدأ وتنتهي عند نفس النقطة، وهي نسبة ضئيلة جدًا، مما يشير إلى أن تصميم الطرق في المدينة يعتمد بشكل أساسي على الربط الشبكي بدلاً من الطرق الدائرية المغلقة.

عند النظر إلى الخريطة الحرارية، نلاحظ أن كثافة التقاطعات تتركز بشكل واضح في بالقرب من وسط المدينة، حيث تكون الشوارع أكثر ترابطًا وتشابكًا بسبب ارتفاع النشاط الحضري والكثافة العمرانية. ومع الابتعاد تدريجيًا عن المركز نحو الأطراف، تبدأ هذه التقاطعات في التناقص، مما يعكس طبيعة الامتداد العمراني وتوزيع الطرق في المناطق الأقل كثافة.

ومع ذلك، عند التدقيق في البيانات، لاحظنا أن حساب التقاطعات لم يكن دقيقًا بالشكل المطلوب. فعلى سبيل المثال، عند تحليل أحد التقاطعات، وجدنا أنه يتم احتسابه على شكل أربع نقاط منفصلة (Nodes) بدلًا من نقطة واحدة فعلية، مما أدى إلى تقدير غير دقيق لكثافة التقاطعات. هذا الخطأ في الحساب يؤثر على فهم هيكلة الشبكة بشكل صحيح، وقد يؤدي إلى تحليلات غير واقعية عند دراسة الحركة المرورية أو تخطيط الطرق المستقبلية.

إعادة بناء الشبكة لتحسين الدقة

لمعالجة هذه المشكلة، قمنا بإعادة بناء الشبكة باستخدام تقنيات تجميع النقاط المتقاربة (Clustering)، والتي تتيح لنا دمج العقد المتقاربة التي تم احتسابها بشكل زائد، وتحويلها إلى نقاط تقاطع فعلية أكثر دقة. هذه الخطوة ضرورية لتقليل التكرارات وتحسين تحليل الشبكة، مما يسمح بفهم أفضل لكيفية اتصال الشوارع داخل المدينة.

في الصورتين التاليتين، يظهر بوضوح الفرق بين تمثيل التقاطعات قبل وبعد المعالجة. قبل التصحيح، كان يتم احتساب العديد من التقاطعات كنقاط منفصلة، مما أدى إلى تضخم غير دقيق في عدد التقاطعات. أما بعد تطبيق تقنيات التجميع، فقد انخفض عدد التقاطعات الفعلية من 153,104 إلى 109,963، مما يعكس تحسينًا كبيرًا في دقة البيانات. واضافة الى ذلك انخفض متوسط عدد الشوارع المتصلة بكل تقاطع من 5.13 إلى 3.34، مما يشير إلى أن بعض العقد التي كانت محسوبة كعدة تقاطعات أصبحت الآن نقطة واحدة أكثر دقة. في المقابل، ارتفع متوسط طول الطرق ليصبح 136 مترًا لكل طريق، حيث أصبحت الطرق أكثر وضوحًا بعد إزالة التقاطعات غير الدقيقة، مما يعكس تمثيلًا أكثر واقعية لامتداد الشوارع داخل المدينة.

Pasted image 20250311203306.png
Pasted image 20250311203236.png
بعد عملية المعالجةقبل عملية المعالجة

قد يخطر في بالك سؤال مهم: كيف يتم تحديد التقاطعات عند تحليل شبكة الطرق؟ وماذا لو كان هناك طريق على جسر وآخر تحته؟ هل سيتم احتسابهما كتقاطع فعلي؟

عند استخدام Network Graph لتحليل شبكات الطرق، يتم بناء الرسم البياني بحيث تمثل العقد (Nodes) التقاطعات الفعلية للطرق. ولكن في بعض الحالات، مثل الجسور أو الأنفاق، قد يظهر في البيانات أن هناك تقاطعًا بين طريقين رغم أنهما غير متصلين فعليًا.

لحل هذه المشكلة، يتم إعادة بناء الشبكة ومعالجة البيانات باستخدام تقنيات تحسين الهيكلة، حيث يتم دمج النقاط المتقاربة (Clustering) وتحديد العلاقات الفعلية بين الطرق. إذا لم يكن هناك اتصال مباشر بين طريقين (مثل الجسر فوق طريق آخر)، فإن الخوارزميات المستخدمة في معالجة الشبكة تستبعد هذا النوع من التقاطعات الوهمية، مما يضمن دقة التحليل وتقديم نتائج واقعية عند احتساب أقصر المسارات أو تحليل الكثافة المرورية.

العلاقة بين شبكات الطرق و Graph Network في الحاسب

من خلال النظر الى الصور السابقة يظهر بشكل واضح ان تمثيل شبكات الطرق يتم باستخدام نظرية الرسم البياني (Graph Theory)، حيث تعتبر المدن والشوارع نظامًا مترابطًا يمكن تحليله باستخدام شبكات الرسم البياني (Graph Networks) لفهم كيفية اتصال الطرق والتقاطعات وتحليل تدفق الحركة. العلاقة بينهما تكمن في كيفية تمثيل الطرق والتقاطعات على شكل عقد (Nodes) وحواف (Edges)، مما يساعد في تحليل الشبكة بطرق مختلفة مثل إيجاد أقصر المسارات، اكتشاف المناطق ذات الكثافة العالية، وتحليل مدى كفاءة تصميم الطرق.

  1. العقد (Nodes):

    • تمثل التقاطعات أو نهايات الطرق، أي أي نقطة يلتقي فيها طريقان أو أكثر.
    • في بعض النماذج، يمكن أن تمثل العقد أيضًا معالم مثل محطات النقل أو المداخل والمخارج للطرق السريعة.
  2. الحواف (Edges):

    • تمثل امتداد الطرق بين العقد، حيث يمكن أن تكون اتجاهية (One-way) أو غير اتجاهية (Two-way).
    • يمكن أن تحمل الحواف خصائص مثل طول الشارع، عرض الطريق، السرعة المسموحة، وعدد المسارات.

إيجاد أقصر مسار بين نقطتين باستخدام التحليل الشبكي

سنبدأ أولًا بشرح خوارزمية ديكسترا، والتي تُعد واحدة من أشهر الخوارزميات المستخدمة في إيجاد أقصر مسار بين نقطتين في الشبكات. تعتمد هذه الخوارزمية على مبدأ البحث التدريجي عن أقصر مسافة، حيث تبدأ من نقطة البداية وتُحدث المسافات إلى جميع النقاط المجاورة، ثم تنتقل تدريجيًا نحو الوجهة النهائية بأقل تكلفة ممكنة.

في المثال قد تكوت التكلفة هي المسافة و الوقت.

للتوضيح، سنعرض مثالًا بسيطًا لفهم كيفية عمل هذه الخوارزمية، حيث سنستخدم شبكة صغيرة تتكون من عدة نقاط (عقد) متصلة بعدة مسارات (حواف) ذات أطوال مختلفة. سنوضح كيف يتم تحديث المسافات تدريجيًا حتى يتم العثور على أقصر طريق من نقطة البداية إلى الوجهة المطلوبة.

1. تحديد المسافات الأولية والانطلاق من D

العقد المرتبطة بـ D والمسافات إليها مباشرة:

  • A عبر D = 9
  • E عبر D = 7
  • H عبر D = 30

بذلك تصبح قائمة المسافات الأولية:

العقدةالمسافة من Dالمسار
D0
A9D → A
E7D → E
H30D → H
2. الانتقال إلى أقرب عقدة (E = 7) وتحديث المسافات
  • E متصلة بـ H بمسافة 6
  • المسافة الجديدة إلى H عبر E = 7 + 6 = 13 (أقل من 30، لذلك نحدثها).
  • العقدة A متصلة بـ E بمسافة 12، لكن المسافة الحالية إلى A أقصر (9)، لذا لا نُحدثها.
    تصبح القائمة بعد التحديث:
العقدةالمسافة من Dالمسار
D0
A9D → A
E7D → E
H13D → E → H
3. الانتقال إلى A (لأنها الأقرب = 9)
  • A متصلة بـ E (12)، لكن الوصول إلى E مباشرة كان أقصر، لذا لا يوجد تحديث.
4. الانتقال إلى H (المتبقية = 13)
  • جميع المسافات محدثة بالفعل، ولا توجد تغييرات إضافية.
النتيجة النهائية: أقصر مسارات من D إلى جميع العقد

D → A بطول 9
D → E بطول 7
D → E → H بطول 13

هذا شرح مختصر للخوارزمية ولا يمكن تغطيتها في هذا المقال لعدم الخروج عن الهدف0

بعد فهم الأساسيات من خلال المثال ، سنقوم بتطبيق خوارزمية ديكسترا على شبكة الطرق في الرياض، حيث سنحسب أقصر المسارات بين نقطتين في المدينة.

في تحديد المواقع، يتم استخدام خطوط الطول والعرض لتحديد أي نقطة جغرافية على الخريطة بدقة. عند البحث عن أقصر مسار في شبكة الطرق، نبدأ بتحديد الإحداثيات لنقطة البداية والنهاية، حيث يتم إسقاط هذه الإحداثيات على شبكة الطرق لاختيار أقرب عقدة (Node) داخل الشبكة.

البدايةالنهاية

في تمثيل شبكة الطرق، تكون كل عقدة لها رقم فريد، مما يسهل تعيين نقطة البداية والنهاية بدقة داخل النموذج. بمجرد تعيين العقدتين، نقوم بتشغيل خوارزمية ديكسترا لحساب التكلفة المطلوبة للانتقال بينهما.

التكلفة يمكن أن تعتمد على:

  • المسافة الفعلية للطريق (Shortest Distance)، حيث يتم البحث عن أقصر طريق ممكن بين النقطتين.
  • زمن الرحلة (Travel Time)، إذا كانت بيانات السرعة لكل طريق متاحة، يمكن للخوارزمية إيجاد أسرع طريق بدلًا من أقصر طريق.

بعد ذلك، تبدأ الخوارزمية بالبحث التدريجي عن أقل تكلفة للانتقال بين العقد، مع تحديث المسافات حتى تصل إلى الوجهة النهائية بأقل تكلفة ممكنة. في النهاية، يمكننا استخراج المسار وتحليله لرؤية عدد التقاطعات، طول الطريق، وأهم الشوارع التي يمر بها المسار المختار.

وهذا عرض المسار الناتج على خرائط OSM، مما يتيح تصورًا دقيقًا لكيفية انتقال المسار عبر شبكة الطرق. يساعد هذا العرض في توضيح الامتداد الفعلي للطريق، وإظهار الشوارع والتقاطعات التي يمر بها، مما يوفر رؤية واضحة للمسار الأمثل بين نقطتي البداية والنهاية.

ويمكن ايضًا ايجاد اكثر من مسار الى الوجهه بحساب الوقت او المسافة

الخاتمة

في هذا المقال، استعرضنا كيف يمكن استخدام خوارزمية ديكسترا لحساب أقصر مسار داخل شبكة الطرق، بدءًا من تمثيل الشبكة كرسم بياني يضم التقاطعات كعقد والطرق كحواف، وصولًا إلى تحديد المسارات المثلى بناءً على المسافة أو الزمن. من خلال تحديد خطوط الطول والعرض لنقطتي البداية والنهاية، واسترجاع العقد الفريدة داخل الشبكة، تمكنا من حساب التكلفة الأدنى للانتقال بينهما باستخدام الخوارزمية.

يوفر هذا النهج أداة قوية لتحليل شبكات الطرق وتحسين التنقل، حيث يمكن تطبيقه في عدة مجالات مثل إدارة المرور، تخطيط المدن، وتطوير أنظمة الملاحة الذكية. مع التوسع في استخدام تقنيات تحليل البيانات الجغرافية، يمكن تحسين كفاءة البنية التحتية للنقل، وتقليل الازدحام، وتعزيز استدامة المدن الذكية.

في النهاية، يعد تحليل شبكات الطرق باستخدام النماذج الرياضية والخوارزميات خطوة أساسية نحو بناء أنظمة نقل أكثر ذكاءً وكفاءة، مما يسهم في تحسين تجربة التنقل اليومي وتعزيز جودة الحياة في المدن الحديثة.