بینش‌های مدیریت جاده‌ها: راهنمایی برای انتخاب مسیر

تصاویر

این سند، بهترین شیوه‌ها را برای تعریف SelectedRoutes با استفاده از Road Selection API برای محصول Roads Management Insights (RMI) ارائه می‌دهد. تعریف صحیح SelectedRoutes شما، مهم‌ترین گام برای اطمینان از دریافت داده‌های ترافیکی دقیق و قابل اعتماد برای بخش‌های جاده‌ای است که قصد نظارت بر آنها را دارید. برای مرور فنی کامل، لطفاً به مستندات رسمی Road Selection API مراجعه کنید.

اصول اساسی ایجاد SelectedRoute

هنگام تعریف یک SelectedRoute برای نظارت، باید اصول زیر را رعایت کنید تا از دقت SelectedRoute و اعتبار داده‌ها اطمینان حاصل شود.

۱. مختص به کنار جاده (یا: کنار جاده) باشد

یک SelectedRoute باید یک جهت سفر واحد را نشان دهد. برای بزرگراه‌ها یا جاده‌های تقسیم‌شده با یک میانه، باید اشیاء SelectedRoute جداگانه‌ای را برای هر جهت ایجاد کنید (مثلاً یکی برای شمال، یکی برای جنوب). مطمئن شوید که مبدا، مقصد و هر نقطه مسیر میانی شما در سمت صحیح جاده برای جهتی که می‌خواهید نظارت کنید قرار گرفته‌اند. قرار دادن مبدا یا مقصد در سمت اشتباه یک بزرگراه تقسیم‌شده می‌تواند منجر به SelectedRouteهای ناخواسته یا خطاهای داده شود.

۲. جاده‌های چند طبقه و پل‌های هوایی را مدیریت کنید

در جاده‌های پیچیده با سطوح مختلف (مثلاً بزرگراه‌های انباشته، پل‌های هوایی، تقاطع‌های پیچیده)، یک جفت طول و عرض جغرافیایی واحد ممکن است مبهم باشد و منجر به "قرار گرفتن" مسیر در سطح اشتباه شود. برای جلوگیری از این امر، باید از نقاط مسیر میانی برای هدایت مسیر به بخش و سطح صحیح جاده استفاده کنید. اضافه کردن یک یا چند نقطه مسیر تضمین می‌کند که مسیر دقیقاً از هدف شما پیروی می‌کند.

۳. نقاط شروع و پایان معتبر را تعریف کنید

یک SelectedRoute نمی‌تواند درون یک تونل شروع یا پایان یابد. نقاط مبدا و مقصد برای SelectedRoute شما باید در مکان‌های روباز باشند. SelectedRouteهایی که از تونل‌ها عبور می‌کنند پشتیبانی می‌شوند، اما خود بخش نظارت نمی‌تواند درون یک تونل شروع یا پایان یابد.

تصاویر

۴. طول مسیرهای مناسب را تعریف کنید

یک SelectedRoute انعطاف‌پذیر است و می‌تواند در مقیاس‌های مختلف تعریف شود:

  • مسیرهای کوتاه: یک SelectedRoute می‌تواند به کوچکی یک بلوک شهری باشد که برای تجزیه و تحلیل جزئی در مناطق شهری مفید است.
  • مسیرهای یکسان: می‌توانید SelectedRouteها را با فواصل مساوی (مثلاً هر 0.5 مایل) برای گزارش‌گیری یکپارچه تعریف کنید.
  • مسیرهای طولانی: یک SelectedRoute می‌تواند بخش طولانی و پیوسته‌ای از جاده را پوشش دهد. این ویژگی برای نظارت بر کل راهروهای بزرگراه یا جاده‌های شریانی اصلی بین تقاطع‌های مهم ایده‌آل است.

طول SelectedRoute را انتخاب کنید که به بهترین وجه با نیازهای نظارت و تحلیل شما مطابقت داشته باشد.

۵. شناسایی بخش‌های جاده‌ای با جداسازی عمودی (تونل‌ها، پل‌های هوایی، پل‌ها و غیره)

هنگام تعریف بخش‌های جاده با استفاده از مختصات طول و عرض جغرافیایی، در نظر گرفتن سناریوهایی که چندین بخش جاده فضای جغرافیایی دو بعدی یکسانی را اشغال می‌کنند اما به صورت عمودی از هم جدا هستند، بسیار مهم است. این اغلب در مورد سازه‌هایی مانند تونل‌ها، پل‌های هوایی، روگذرها و پل‌ها اتفاق می‌افتد. تکیه صرف بر عرض و طول جغرافیایی بدون در نظر گرفتن ارتفاع می‌تواند منجر به عدم دقت در انتخاب و ناوبری SelectedRoute شود. به عنوان مثال، جاده‌ای که از یک تونل عبور می‌کند، عرض و طول جغرافیایی بالایی یکسانی با بخش جاده روی سطح بالای خود خواهد داشت. به طور مشابه، یک پل هوایی یا پل مختصات افقی را با جاده زیر خود به اشتراک می‌گذارد. عدم تمایز بین این بخش‌های عمودی انباشته شده می‌تواند منجر به هدایت نادرست ترافیک به جاده سطح پایین‌تر در حالی که قرار است یک جاده سطح بالاتر باشد، یا برعکس، توسط سیستم مسیریابی شود.

در این مثال در بوستون با مختصات ۴۲.۳۶۲۳۴۷ و -۷۱.۰۵۵۹۳۵، یک تونل عظیم به نام Big Dig وجود دارد.

تصویر

وقتی یک نقطه مسیر را روی یک جاده قرار می‌دهیم، حتی یک بی‌دقتی جزئی در مختصات جغرافیایی دقیق آن می‌تواند منجر به محاسبه مسیر کاملاً متفاوتی شود. این حساسیت به قرارگیری نقطه مسیر، یک عامل حیاتی در الگوریتم‌های انتخاب SelectedRoute است.

برای مثال، سناریویی را در نظر بگیرید که در آن یک نقطه مسیر در ابتدا درست درون یک تونل قرار می‌گیرد. اگر موقعیت مکانی این نقطه مسیر، با وجود داشتن مختصات طول و عرض جغرافیایی تقریباً یکسان، کمی با جاده دسترسی مجاور تطبیق داده شود، موتور مسیریابی ممکن است مسیری کاملاً متفاوت ایجاد کند. این پدیده اهمیت ورودی دقیق نقطه مسیر و پیچیدگی‌های مربوط به بهینه‌سازی مسیر را، به ویژه در مناطقی با شبکه‌های جاده‌ای پیچیده و ویژگی‌های جغرافیایی، برجسته می‌کند.

تصویر

تصویر

۶. همه جاده‌ها قابل ردیابی نیستند

مسیر انتخابی شما ممکن است همیشه قابل ردیابی نباشد

  • فراتر از «صلاحیت قضایی» ثبت‌شده
  • «خدمات جاده‌ای» پایین
    • این می‌تواند منجر به تغییر قابلیت ردیابی در طول زمان شود.

اعتبارسنجی به صورت غیرهمزمان اجرا می‌شود ⇒ بررسی می‌کند که آیا SelectedRouteهای ثبت‌شده همگی از این مرحله عبور کرده‌اند یا خیر

بهترین شیوه‌ها برای تعریف SelectedRoute

برای بهبود کیفیت تعاریف SelectedRoute و داده‌های حاصل از آن، از این بهترین شیوه‌ها پیروی کنید.

از نقاط میانی (نقاط میانی) استفاده کنید

حتی برای SelectedRouteهای کوتاه و به ظاهر ساده، اکیداً توصیه می‌شود که حداقل یک نقطه مسیر میانی در نظر گرفته شود.

  • چرا؟
    • مسیریابی راهنماها: تضمین می‌کند که SelectedRoute شما مسیر خاص مورد نظر شما را دنبال می‌کند، به خصوص اگر جاده‌های جایگزین بین مبدا و مقصد وجود داشته باشد.
    • حلقه‌ها را فعال می‌کند: برای نمایش صحیح حلقه‌ها یا SelectedRouteهای «خروجی و برگشتی» که در آن‌ها مبدا و مقصد یکسان هستند، لازم است.
    • بهبود تشخیص انحراف از مسیر: هرچه نقاط مسیر بیشتری ارائه دهید، تشخیص و علامت‌گذاری نقاط داده‌ای که ممکن است ترافیک از مسیر انتخابی مورد نظر شما منحرف شده باشد، آسان‌تر خواهد بود.
  • چگونه؟
    • شما می‌توانید با استفاده از توابع مکانی، به صورت برنامه‌نویسی شده، نقطه میانی را در امتداد یک SelectedRoute شناخته شده پیدا کنید.
    • مثال (BigQuery): از تابع ST_LINEINTERPOLATEPOINT استفاده کنید.
    • مثال (جاوااسکریپت): از تابع along از کتابخانه Turf.js استفاده کنید.

مسیرهای منطبق از سیستم‌های خارجی

اگر داده‌های مسیر را از یک GIS خارجی یا سیستمی که بر روی شبکه جاده‌ای دیگری ساخته شده است، وارد می‌کنید، ممکن است مختصات کاملاً با شبکه جاده‌ای گوگل مطابقت نداشته باشند. این می‌تواند منجر به «مسیرهای ناخواسته» شود.

  • نحوه رفع:
    1. بررسی سمت جاده: ابتدا، مطمئن شوید که مبدا و نقطه شروع شما در سمت صحیح جاده است.
    2. اسنپ-تو-جاده: از متد matchPath مربوط به Roads API نسخه ۲ برای اسنپ کردن داده‌های مسیر فعلی خود به شبکه جاده‌ای گوگل استفاده کنید.
    3. تنظیم دستی و ترسیم مجدد: نقاط مسیر خود را به صورت دستی در یک ابزار تنظیم کنید تا با جاده‌های گوگل مطابقت داشته باشند. سپس، از متد computeRoute از API مسیرها (با تنظیم ترافیک روی "unaware") برای ایجاد یک چندخطی تمیز که شبکه گوگل را دنبال می‌کند، استفاده کنید.
    4. ردیابی: به عنوان آخرین راه حل، داده‌های خود را در شبکه جاده‌ای گوگل در یک ابزار GIS روی هم قرار دهید و مسیر را به صورت دستی ردیابی کنید تا نقاط مسیر جدید ایجاد شود.

پاکسازی و اعتبارسنجی داده‌ها

داده‌هایی که در BigQuery دریافت می‌کنید، شرایط دنیای واقعی را منعکس می‌کنند. شما باید مراحل پاکسازی را برای فیلتر کردن داده‌هایی که نشان‌دهنده SelectedRoute اصلی شما نیستند، اعمال کنید.

مسیرهای انحرافی را مدیریت کنید

API مسیرها، که RMI را پشتیبانی می‌کند، همیشه سعی می‌کند یک مسیر معتبر را برگرداند. اگر SelectedRoute مورد نظر شما مسدود شده یا به شدت شلوغ باشد، API ممکن است مسیری را برگرداند که از مسیر انحرافی خارج شده و از نقاط میانی تعریف شده شما منحرف می‌شود. به عنوان مثال، اگر SelectedRoute شما مسیری از A -> B -> C را مشخص کند، یک مسیر انحرافی ممکن است منجر به مسیری شود که مستقیماً از A -> C حرکت می‌کند.

به عنوان مثال، اگر این مسیر را رسم کنیم: https://www.google.com/maps/dir/OR-213,+Oregon+City,+OR+97045/Caufield,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/643+OR-213,+Oregon+City,+OR+97045/OR-213,+Oregon+City,+OR+97045/Oregon+City,+OR+97045/Oregon+City,+OR+97045/Washington+Dr ،+شهر+اورگان،+OR+97045/@45.3754391,-122.5822044,15.2z/data=!4m50!4m49!1m5!1m1!1s0x549570b9f466b4a1:0x6390dd57f70701fd!2m2!1d-122.5787!2d45.3231933!1m5!1m1!1s0x549570ca19ded1b3:0xd28eaf8da19c4509!2m2!1d-122.5756369!2d45.3303343!1m5!1m1!1s0x549576c6b49921 ۳۷:۰xb۶ed۱e۱۸۴۸a۸e۲a۵!۲m۲!۱d-۱۲۲.۵۸۴۱۲۸۹!۲d۴۵.۳۶۴۰۹۱۹!۱m۵!۱m۱!۱s۰x۵۴۹۵۷۶c۰c۴۸ee۶f۱:۰x۸۶۴۹۷e۰۳۶c۵dd۴۴۴!۲m۲!۱d-۱۲۲.۵۸۵۰۰۸۶!۲d۴۵. 3662193!1m5!1m1!1s0x549576bfbca6fa93:0xf6b573219354d3f!2m2!1d-1 22.5851045!2d45.3696112!1m5!1m1!1s0x549576be3782e5db:0xd0ea93d91 e8a0792!2m2!1d-122.5857424!2d45.371047!1m5!1m1!1s0x5495769635216053:0x150f4a4f811b98d6!2m2!1d-122.5870571!2d45.3752342!1m5!1m1!1s0x54957697b928b269:0x2b114f280e6ab0f0!2m2!1d-122.5875209!2d45.3760557!3e0?entry=ttu&g_ep=EgoyMDI1MTAxMy4wIKXMDSoASAFQAw%3D%3D می‌توانیم شاهد یک انحراف بزرگ باشیم که احتمالاً به دلیل برخی شرایط جاده‌ای رخ داده است، اما اگر این مشکل به دقت اصلاح نشود، می‌تواند منجر به جمع‌آوری داده‌های اشتباه شود.

تصویر

برای RMI، این رکوردهای تغییر مسیر داده شده کمتر مفید هستند زیرا نشان‌دهنده SelectedRoute خاصی که شما مانیتور می‌کنید، نیستند.

  • اقدام: این ردیف‌ها را فقط حذف نکنید. باید آنها را برای تجزیه و تحلیل علامت‌گذاری کنید تا بفهمید چه زمانی و چرا انحرافات رخ می‌دهند.
  • نحوه علامت‌گذاری مسیرهای انحرافی: دو روش اصلی برای شناسایی مسیرهای انحرافی به صورت برنامه‌نویسی وجود دارد:
    1. عدم تطابق نقطه مسیر: بررسی کنید که آیا هندسه مسیر برگشتی شامل تمام نقاط مسیر میانی مشخص شده شما نیست یا خیر.
    2. اختلاف مسافت: بررسی کنید که آیا distance مسیر برگشتی با مسافت مورد انتظار SelectedRoute شما تفاوت قابل توجهی دارد یا خیر. آستانه‌ی معمول، اختلاف ۵٪ است.
  • مثال BigQuery برای علامت‌گذاری مسیرهای انحرافی: می‌توانید جدول SelectedRoutes خود (که شامل فاصله مورد انتظار است) را با جدول RouteResponses پیوند دهید و از یک عبارت CASE برای ایجاد یک پرچم استفاده کنید.

مدیریت هندسه‌های "MultiLineString"

نوع داده‌ی GEOGRAPHY در BigQuery یک محدودیت دارد: نمی‌تواند یک LineString واحد را که با خودش همپوشانی دارد ذخیره کند (مثلاً یک دوربرگردان منحنی، مسیری که به دلیل انحراف از مسیر، دوباره روی خودش قرار می‌گیرد).

  • علامت: وقتی این اتفاق می‌افتد، BigQuery هندسه را به عنوان یک MultiLineString ذخیره می‌کند و ممکن است بخش‌هایی از مسیر از دست رفته باشند.
  • اقدام: شما باید این رکوردها را از تحلیل اولیه خود فیلتر کنید.
    1. فیلتر BigQuery: WHERE ST_GEOMETRYTYPE(route_geometry) != "ST_MultiLineString" استفاده کنید
  • راه حل:
    1. اگر همپوشانی ناشی از انحراف باشد، می‌توان رکورد را همانطور که در بالا توضیح داده شد، فیلتر کرد.
    2. اگر SelectedRoute مورد نظر شما شامل همپوشانی است، باید آن را با تقسیم SelectedRoute به دو یا چند شیء SelectedRoute جداگانه، دوباره تعریف کنید.

تبدیل منطقه زمانی

تمام داده‌های برچسب زمانی در خروجی RMI BigQuery بر اساس زمان هماهنگ جهانی (UTC) ارائه می‌شوند. برای گزارش یا تجزیه و تحلیل در یک منطقه زمانی محلی، باید این برچسب‌های زمانی را تبدیل کنید.

  • مثال BigQuery برای تبدیل زمان: از توابع DATETIME و TIMESTAMP برای تبدیل یک مهر زمانی UTC به یک منطقه زمانی محلی خاص، مانند 'America/Los_Angeles' استفاده کنید.

نتیجه‌گیری

با پیروی از بهترین شیوه‌های ذکر شده در این راهنما، می‌توانید اطمینان حاصل کنید که تعاریف SelectedRoute شما دقیق و قوی هستند و منجر به داده‌های ترافیکی قابل اعتماد و کاربردی از محصول Roads Management Insights می‌شوند. تعریف صحیح مسیرها، مدیریت هندسه‌های پیچیده جاده و اعتبارسنجی داده‌های حاصل، گام‌های مهمی برای بهره‌برداری از پتانسیل کامل RMI برای نیازهای مدیریت جاده شما هستند.

نویسندگان

Sarthak Gangopadhyay: Google Maps Devrel Naoya Moritani: Google Maps Devrel