تبدیل موقعیت به آدرس در پلتفرم نقشه نشان

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

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

چالش‌های پیش رو در تولید آدرس

در کشور ما آدرس‌دهی منطق خاص خودش را دارد. این منطق حتی بسته به شهرهای مختلف نیز ممکن است تفاوت‌هایی داشته باشد. آدرس‌دهی در بافت‌های قدیمی پیچیدگی‌های بیشتری نسبت به بافت‌های جدید شهرها دارد. پیچیدگی معابر و تو در تو بودن کوچه‌ها و عدم دسترسی می‌تواند تولید آدرس را با مشکلات جدی مواجه کند.

نقشه قسمتی از بافت قدیمی شهر تهران
نقشه قسمتی از بافت قدیمی شهر تهران

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

نمایی از کوچه‌های قدیمی شهر مشهد و نام گذاری آنها
نمایی از کوچه‌های قدیمی شهر مشهد و نام گذاری آنها

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


راه حل پلتفرم نقشه نشان

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

در ادامه یک نمونه از پاسخ این سرویس برای نقطه‌ای در شهر تهران را مشاهده می‌کنید:

{
    "status": "OK",
    "formatted_address": "تهران، تهران، فاطمی، حجاب، سازمان آب، نزدیک به عبدالله زاده",
    "route_name": "سازمان آب",
    "route_type": "secondary",
    "neighbourhood": "فاطمی",
    "city": "تهران",
    "state": "تهران",
    "place": null,
    "municipality_zone": "6",
    "in_traffic_zone": true,
    "in_odd_even_zone": true,
    "addresses": [
        {
            "formatted": "حجاب، سازمان آب، نزدیک به عبدالله زاده",
            "components": [
                {
                    "name": "حجاب",
                    "type": "primary"
                },
                {
                    "name": "سازمان آب",
                    "type": "secondary"
                }
            ]
        }
    ]
}

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

در جهت کاربردی شدن آدرس‌ها و نزدیک‌ کردن آن‌ها به واقعیت مرسوم در بین مردم، سعی شده است از عبارت‌هایی مانند «نزدیک به ...»، «بین … و ...»، «بعد از ...» در آدرس تولیدشده استفاده شود و صرفا به گفتن نام چند خیابان پشت سر هم اکتفا نشده است.


ما در تیم زیرساخت نقشه نشان بطور مداوم در حال به‌روزرسانی داده‌های نقشه و همچنین بهبود الگوریتم‌ها جهت تولید بهترین آدرس به همراه سرعت پاسخ‌دهی (response time) بهینه در سرویس Reverse Geocoding هستیم. در زمان نگارش این مطلب نسخه ۲.۳ این سرویس منتشر و در اختیار توسعه‌دهندگان و برنامه‌نویسان قرار گرفته است. جهت کسب اطلاعات بیشتر در زمینه چگونگی استفاده از سرویس تبدیل موقعیت جغرافیایی به آدرس می‌توانید به این صفحه در سایت توسعه‌دهندگان نشان مراجعه کنید.