1. معرفی
جغرافیای زمانی برای تجزیه و تحلیل حرکات و فعالیت های انسان در فضا و زمان قدرتمند است [ 1 ]. بهجای پیشبینی مستقیم رفتار سفر-فعالیت، جغرافیای زمان عمدتاً بر امکانپذیری یک فرد برای شرکت در فعالیتها تحت محدودیتهای فضا-زمان مختلف تمرکز دارد [ 2 ]. در هسته جغرافیای زمانی، مدل منشور فضا-زمان (STP) قرار دارد که گستره های فضا-زمانی را به تصویر می کشد که می تواند به صورت فیزیکی توسط فرد از مکان های مشخص شده در یک بودجه زمانی مشخص به آن دست یابد. این مدل STP به طور گسترده برای کاربردهای مختلف، مانند اندازه گیری دسترسی فردی به خدمات شهری استفاده شده است [ 3 ، 4 ، 5 ، 6 ، 7]، و فرمولبندی مدلهای مبتنی بر فعالیت تقاضای سفر [ 8 ، 9 ، 10 ، 11 ].
جغرافیای زمانی برای اولین بار توسط Torsten Hägerstrand در دهه 1970 معرفی شد [ 1 ]. در دهههای پس از معرفی، جغرافیای زمانی تا حدودی در پسزمینه محو شد [ 12 ]، عمدتاً به دلیل فقدان الگوریتمهای محاسباتی جغرافیایی و دادههای حرکت در سطح فردی. با پیشرفت فناوری اطلاعات جغرافیایی (GIS) در دهه 1990، دو دهه اخیر شاهد تجدید حیات جغرافیای زمانی در ادبیات بوده است. تلاشهای تحقیقاتی قابل توجهی برای بهبود مدلهای STP برای نشان دادن گسترههای فضا-زمان قابل دسترس افراد در مناطق پیچیده شهری انجام شده است. میلر با درک اینکه حرکات انسان در مناطق شهری معمولاً توسط شبکه های جاده ای محدود می شود [ 13]] یک مدل STP مبتنی بر شبکه (یا به نام منشور زمان شبکه، NTP) را پیشنهاد کرد. محققان دیگر این مدل NTP را با در نظر گرفتن پیچیدگیهای محیط سفر، از جمله محدودیتهای نوبتی [ 14 ] ، شرایط ترافیکی پویا و ناهمگن [ 15 ، 16 ] و عدم قطعیتهای زمان سفر [ 17،18 ] بهبود دادند . چن و همکاران [ 19 ] مدل NTP را به شبکه های حمل و نقل عمومی گسترش دهید. یک الگوریتم جغرافیایی محاسباتی برای ساخت موثر STPها در شبکه های حمل و نقل عمومی با استفاده از تکنیک های A* و شاخه و کران توسعه داده شد. چندین ابزار مفید نیز برای تجزیه و تحلیل بصری NTPها در شبکه های جاده ای واقعی توسعه یافته اند [ 20 , 21 , 22].
در سالهای اخیر، به دلیل دادههای بزرگ فضایی-زمانی در حال ظهور، جمعآوریشده توسط انواع فنآوریهای مکانی، از جمله مسیرهای انسان و وسیله نقلیه جمعآوریشده توسط دستگاههای GPS (سیستم موقعیتیابی جهانی)، سوابق تلفن همراه، تجدید حیات گستردهتری از مطالعات جغرافیایی زمانی صورت گرفته است. دادههای کارت هوشمند، ورود به شبکههای اجتماعی، و غیره. این دادههای بزرگ مکانی-زمانی فرصت بیسابقهای را برای مطالعات جغرافیایی زمانی فراهم میکند تا الگوهای تحرک مردم و تعاملات آنها با محیط شهری را آشکار کند [ 23 ، 24 ، 25 ، 26 ، 27 ، 28 ، 29 ، 30]. برای حمایت از چنین مطالعات زمانی-جغرافیایی در عصر دادههای بزرگ مکانی-زمانی، الگوریتمهای ژئومحاسباتی کارآمد برای ساخت NTP در شبکههای جادهای در مقیاس بزرگ به شدت مورد نیاز است.
در بیشتر مطالعات قبلی جغرافیایی زمانی، NTP ها توسط یک الگوریتم ساده ساخته می شوند [ 31]، که از دو جستجوی کوتاه ترین مسیر یک به همه، بر اساس الگوریتم Dijkstra استفاده می کند. این الگوریتم ساده از این پس برای سهولت به عنوان الگوریتم NTP-Dij شناخته می شود. در الگوریتم NTP-Dij، ابتدا جستجوی کوتاهترین مسیر رو به جلو از مبدا انجام میشود تا زودترین زمان رسیدن در هر گره مشخص شود. سپس، جستجوی کوتاهترین مسیر به عقب از مقصد انجام می شود تا آخرین زمان حرکت در هر گره به دست آید. در نهایت، گره های قابل دسترسی (و پیوندها) را می توان با بررسی اینکه آیا اولین زمان رسیدن آنها بزرگتر از آخرین زمان خروج است یا خیر، تعیین می شود. چنین الگوریتم NTP-Dij با استفاده مستقیم از الگوریتم کلاسیک کوتاهترین مسیر (یعنی الگوریتم Dijkstra) آسان است. با این حال، نیاز به کاوش در کل شبکه دو بار دارد و منجر به سربار محاسباتی قابل توجهی می شود. با توجه به این واقعیت که گره های قابل دسترسی در NTP عموما تنها بخش کوچکی از کل شبکه هستند. برای کاهش تعداد گره های کاوش شده، Kuijpers و Othman [28 و 29 ] یک الگوریتم (به نام NTP-SN در این مطالعه) برای ساخت NTP در یک شبکه فرعی به جای کل شبکه پیشنهاد کرد. زیرشبکه با انتخاب گره ها و پیوندهای درون STP در فضای مسطح تولید می شود. با این وجود، مزیت محاسباتی این الگوریتم NTP-SN حاشیه ای است، زیرا STP در فضای مسطح به طور کلی در مقایسه با NTP واقعی بسیار بزرگ است [ 28 ، 29 ]. علاوه بر این، اگرچه چندین الگوریتم ساخت NTP توسعه یافته است، کمبود آزمایشهای عددی در ادبیات برای بررسی سیستماتیک عملکرد محاسباتی الگوریتمهای ساخت NTP موجود در شبکههای جاده واقعی وجود دارد.
برای پر کردن این شکاف، این مطالعه به بررسی مدلها و الگوریتمهای ژئومحاسباتی برای ساخت موثر NTP در شبکههای جادهای واقعی میپردازد. این مطالعه از جنبه های زیر به ادبیات جغرافیای زمانی کمک می کند:
در مرحله اول، یک مدل NTP بهبود یافته با در نظر گرفتن پیچیدگیهای شبکههای جادهای، از جمله محدودیتهای پیچ و جادههای تقسیمشده/تقسیم نشده، پیشنهاد میشود. مدل NTP پیشنهادی، جادههای تقسیمشده و تقسیمنشده را متمایز میکند و به افراد اجازه میدهد تا دوربرگردان انجام دهند و به پیوندهای جزئی در جادههای تقسیم نشده دسترسی داشته باشند. بنابراین، مدل پیشنهادی، نمایش واقعی NTP ها را در شبکه های جاده ای افزایش می دهد.
ثانیا، یک الگوریتم زمین محاسباتی کارآمد، به نام NTP-A*، برای ساخت NTPها در شبکه های جاده ای در مقیاس بزرگ توسعه یافته است. در الگوریتم NTP-A* پیشنهادی، محدودیتهای پیچ و پیوندهای نیمه قابل دسترسی در جادههای تقسیم نشده به صراحت در نظر گرفته شدهاند. تکنیکهای A* و شاخه و کران برای بهبود عملکرد ساخت NTP با دور انداختن پیوندهای غیرقابل دسترس در طول جستجوهای کوتاهترین مسیر، استفاده میشوند. تکنیکهای اصلاح برچسب و برچسبگذاری پیوند گره ترکیبی نیز به منظور بهبود عملکرد ساخت NTP معرفی شدهاند. بنابراین، الگوریتم NTP-A* پیشنهادی به طور قابل توجهی عملکرد ساخت و ساز NTP را در شبکه های جاده ای در مقیاس بزرگ بهبود می بخشد.
سوم، یک مطالعه موردی جامع با استفاده از چندین شبکه جاده واقعی برای بررسی عملکرد محاسباتی الگوریتم پیشنهادی NTP-A* انجام شده است. دو الگوریتم ساخت NTP موجود، NTP-Dij و NTP-SN نیز برای مقاصد مقایسه پیاده سازی شده اند. چندین تکنیک کاشت (از جمله تکنیک A *، تکنیک شاخه و کران، تکنیک تصحیح برچسب و تکنیک برچسبگذاری پیوند گره هیبریدی) در ساخت NTP مورد بررسی و بحث قرار میگیرند. نتایج مطالعه موردی نشان میدهد که الگوریتم NTP-A* پیشنهادی میتواند به طور قابلتوجهی الگوریتمهای NTP-Dij و NTP-SN موجود را با ضریب 100 در شبکههای جادهای در مقیاس بزرگ بهبود بخشد.
ساختار باقیمانده این مقاله به شرح زیر است. در بخش بعدی، مدل کلاسیک STP در فضای مسطح به اختصار معرفی می شود تا زمینه لازم را فراهم کند. مدل NTP بهبود یافته در بخش 3 معرفی شده است . الگوریتم NTP-A* پیشنهادی در بخش 4 ارائه شده است . آزمایشهای محاسباتی با استفاده از شبکههای جادهای در دنیای واقعی در بخش 5 گزارش شدهاند . در نهایت، نتیجه گیری و توصیه های تحقیقاتی آتی در بخش 6 ارائه شده است .
2. مدل کلاسیک منشور فضا-زمان در فضای مسطح
این بخش به طور خلاصه مدل کلاسیک فضا-زمان (STP) را در فضای مسطح معرفی می کند. شکل 1 این مدل منشور را در یک فضای سه بعدی (3 بعدی) نشان می دهد که در آن محورهای x و y فضای جغرافیایی دو بعدی (2D) و محور t نشان دهنده زمان است. فرض کنید فردی در حال برنامه ریزی برای انجام دو فعالیت ثابت در مبدا است o = (ایکسo،yo)�=(��,��)و نمونه زمانی تیo��، و مقصد د= (ایکسد،yد)�=(��,��)و نمونه زمانی تید��، به ترتیب. STP محدوده های فضا-زمانی را برای فرد تعیین می کند تا فعالیت انعطاف پذیر دیگری را بین این دو فعالیت ثابت برنامه ریزی کند. از نظر تحلیلی، STP را می توان با تقاطع یک مخروط جلو، یک مخروط عقب و یک استوانه ساخت. مخروط جلو، FC ( t )FC(t)، شامل تمام مکان هایی است که می توان از مبدا در آن زمان به آنها دسترسی داشت تی�; مخروط عقب، قبل از میلاد ( t )BC(t)، شامل تمام مکان هایی است که با توجه به زمان باقی مانده می توانند به مقصد برسند تیس– تی��−�; و سیلندر، CY ( t )CY(t)، تمام مکان های جغرافیایی را در محدوده مسیر بالقوه (PPA) مشخص می کند. با توجه به مرجع [ 2 ]، STP در فضای مسطح می تواند به طور رسمی بیان شود
جایی که جدقیقه�minحداقل مدت زمان مشارکت در فعالیت های انعطاف پذیر است، تیo wE����زمان سفر اقلیدسی از مبدأ تا یک مکان است w = (ایکسw،yw)�=(��,��)، و تیw dE����زمان سفر اقلیدسی از محل است w�به مقصد در فضای مسطح، زمانهای سفر اقلیدسی (یعنی تیo wE����و تیw dE����) را می توان به سادگی به عنوان فواصل اقلیدسی محاسبه کرد (که با نشان داده می شوند دo wE����و دw dE����) بین این دو مکان تقسیم بر حداکثر سرعت سفر vحداکثر�max.
طرح STP بر روی فضای جغرافیایی دوبعدی یک PPA را تشکیل میدهد که شامل تمام مکانهای قابل دسترس برای مشارکت در فعالیتهای انعطافپذیر در فضای جغرافیایی دوبعدی است:
جایی که b =تید–تیo–جدقیقه�=��−��−�minحداکثر بودجه زمانی برای سفر است. ارتفاع منشور فضا-زمان در مکان w�حداکثر مدت زمان فعالیت را نشان می دهد، جw��، در محل به عنوان:
جایی که تی–w=تیo+تیo wE��−=��+����اولین زمان رسیدن به محل است و تی+w=تید–تیw dE��+=��−����آخرین زمان خروج از محل است.
مدل STP کلاسیک فوق در فضای مسطح می تواند به راحتی ساخته شود و رسمی سازی دقیقی داشته باشد. با این حال، این مدل بر اساس یک فرض غیر واقعی است که حرکات با سرعت ثابت در همه جای فضای مسطح رخ می دهد [ 2 ، 12 ، 13 ، 15 ]. در واقعیت، مردم در مناطق شهری آزادانه در فضای مسطح حرکت نمی کنند، بلکه در داخل شبکه های جاده ای جاسازی شده فضایی حرکت می کنند. بنابراین، مدل کلاسیک STP، پیچیدگیهای محیط واقعی سفر را بیش از حد ساده میکند و برای برنامهریزی فعالیت و سفر یک فرد ناکافی است.
3. ساخت منشورهای فضا-زمان در شبکه های جاده ای
این بخش یک مدل منشور شبکه-زمان (NTP) را با در نظر گرفتن پیچیدگی های شبکه های جاده ای، از جمله محدودیت های پیچ و جاده های تقسیم شده/تقسیم نشده، فرموله می کند. یک شبکه جاده ای را می توان به عنوان یک نمودار جهت دار نشان داد G ( N، A ، Ψ)�(�,�,�)، شامل مجموعه ای از گره ها است ن�، مجموعه ای از پیوندها آ�، و مجموعه ای از چرخش های مجاز Ψ�. هر لینک هدایت شده آمن ج∈ الف���∈�یک گره دم دارد من�، یک گره سر j�، و زمان سفر پیوند تیمن ج���. یک چرخش ψمن j k∈ Ψ����∈�، از طریق پیوندها عبور می کند آمن ج���و آj k���، یک حرکت مجاز در گره را نشان می دهد j�(مثلاً گردش به راست یا دور برگردان). به علاوه، ψمن j k∉ Ψ����∉�به این معنی است که حرکت از پیوند آمن ج���برای پیوند دادن آj k���در گره محدود شده است j�(به عنوان مثال، گردش به چپ ψ125�125در شکل 2 ). علاوه بر چرخش در گره ها، چرخش های U در هر مکانی در یک پیوند تقسیم نشده (مثلاً یک جاده کوچک) مجاز است، اما در یک پیوند تقسیم شده (مثلاً یک جاده شریانی) محدود می شود. مثلا، آ12�12و آ21�21در شکل 2 دو پیوند متضاد یک جاده تقسیم نشده وجود دارد و مسافران می توانند آزادانه بین این دو پیوند دور برگردند. لازم به ذکر است که یک جاده دو طرفه، صرف نظر از اینکه تقسیم یا تقسیم نشده باشد، با دو پیوند جهت دار مخالف نشان داده می شود، در حالی که یک جاده یک طرفه تنها با یک پیوند هدایت شده نشان داده می شود.
هر مکان w = (ایکسw،yw)�=(��,��)در شبکه را می توان به صورت نمایش داد (آمن ج،θw)(���,��)با استفاده از تکنیک مرجع خطی [ 23 ، 32 ]، که در آن θw∈ [ 0 , 1 ]��∈[0,1]موقعیت نسبی روی پیوند است آمن ج∈ الف���∈�. به عنوان مثال، مکان w = (آ23، 0.5 )�=(�23,0.5)در شکل 2 وسط پیوند را نشان می دهد آ23�23. زمان سفر پیوندهای جزئی آمن w���و آw j���متناسب با فاصله آنها فرض می شود:
اجازه دهید پw lآر����حداقل مسیر زمانی بین دو مکان باشد، w = (ایکسw،yw)�=(��,��)و l = (ایکسل،yل)�=(��,��). زمان سفر مسیر، تیw lآر����را می توان با جمع کردن زمان سفر لینک مربوطه در طول مسیر محاسبه کرد:
جایی که δw lمن ج�����رابطه وقوع پیوند-مسیر است، δw lمن ج= 1�����=1به معنای آن پیوند (جزئی) است آمن ج���در مسیر است پw lآر����، و در غیر این صورت δw lمن ج= 0�����=0. در شبکه جادهای با محدودیتهای پیچ، کمترین مسیر زمانی را میتوان با الگوریتم کوتاهترین مسیر با استفاده از تکنیک برچسبگذاری مبتنی بر پیوند تعیین کرد [ 33 ]. باید توجه داشت که الگوریتم کلاسیک Dijkstra مبتنی بر گره [ 34 ] محدودیتهای نوبتی را نادیده میگیرد و ممکن است به مسیرهای غیرقابل اجرا منجر شود.
اجازه دهید تیo wآر����کمترین زمان سفر از مبدا تا مکان باشد w�، و اجازه دهید تیw dآر����کمترین زمان سفر از مکان باشد w�به مقصد با تعویض تیo wآر����و تیw dآر����با تیo wE����و تیw dE����در معادلات (1)-(4)، NTP در شبکه جاده را می توان به صورت بیان کرد
این NTP مکانهای فضا-زمان قابل دسترس یک فرد را در شبکه جادهای بین مبدأ مشخص میکند o = (آo،θo)�=(��,��)و مقصد د= (آد،θد)�=(��,��)در طول دوره زمانی تیo��به تید��. ارتفاع NTP در محل w�حداکثر مدت زمان فعالیت را نشان می دهد جw��در محل به صورت:
جایی که تی–w=تیo+تیo wآرتی�–=تی�+تیآر��و تی+w=تید–تیw dآرتی�+=تید–تیآر�دبه ترتیب، اولین زمان ورود و آخرین زمان خروج از محل است.
شکل 3 یک NTP ساده در یک شبکه جاده ای را نشان می دهد. همانطور که در شکل مشاهده می شود، NTP شامل مجموعه ای از چند ضلعی های فضا-زمان دو بعدی است { … ,سمن ج… }{…،سمن�…}در پیوندهای شبکه هر چند ضلعی فضا-زمان سمن ج= { (ایکسمن،yمن،تی+من) , … , (ایکسj،yj،تی+j) ، (ایکسj،yj،تی–j) , … , (ایکسمن،yمن،تی–من) }سمن�={(ایکسمن،�من،تیمن+)،…،(ایکس�،��،تی�+)،(ایکس�،��،تی�–)،…،(ایکسمن،�من،تیمن–)}همه مکانهای فضا-زمان قابل دسترسی را در امتداد پیوند شبکه نشان میدهد آمن جآمن�[ 23 ]. طرح NTP بر روی فضای جغرافیایی دوبعدی، منطقه شبکه بالقوه (PNA) است که شامل مجموعه ای از پیوندهای قابل دسترس (جزئی) است. { … ,آمن ج… }{…،آمن�…}. اجازه دهید پo jآرپآر��کمترین مسیر زمانی از مبدأ باشد o�به گره j�عبور از لینک آمن جآمن�، و اجازه دهید پمن dآرپآرمندکمترین مسیر زمانی از گره باشد منمنبه مقصد ددعبور از لینک آمن جآمن�. زمان سفر مسیر آنها می باشد تیo jآرتیآر��و تیمن dآرتیآرمند، به ترتیب. لینک قابل دسترسی آمن ج∈پنآآمن�∈پنآباید محدودیت بودجه زمان سفر زیر را برآورده کند:
از شکل 3 می توان مشاهده کرد که پیوندهای تقسیم شده و تقسیم نشده می توانند تفاوت های قابل توجهی در چند ضلعی های دو بعدی خود داشته باشند. اولاً، چند ضلعی های فضا-زمان یکسان را می توان در دو پیوند مخالف یک جاده تقسیم نشده، اما نه یک جاده تقسیم شده، ایجاد کرد. مثلاً مبدا o = (آ12، 0.5 )�=(آ12،0.5)در شکل روی پیوند تقسیم نشده قرار دارد آ12آ12. از آنجایی که مسافران میتوانند آزادانه در جادههای تقسیمنشده دور برگردند، چندضلعیهای فضا-زمان یکسان (یعنی سo 2=س2 oس�2=س2�و سo 1=س1 oس�1=س1�) در پیوندهای مخالف ایجاد می شوند آ12آ12به آ21آ21. با این حال، وضعیت برای مقصد متفاوت است د= (آ36، 0.5 )د=(آ36،0.5)، واقع در پیوند تقسیم شده آ36آ36. از آنجایی که مسافران نمی توانند در پیوندهای تقسیم شده چرخش U را انجام دهند، اشکال مختلف چندضلعی های فضا-زمان (به عنوان مثال، س63≠س3 دس63≠س3دو س63≠سد6س63≠سد6) در پیوندهای مخالف ایجاد می شوند آ36آ36به آ63آ63. ثانیاً، پیوندهای جزئی در NTP فقط در جاده های تقسیم نشده و نه در جاده های تقسیم شده قابل مشاهده است. به عنوان مثال، از شکل می توان دریافت که گره 1 در PNA است، اما گره 4 نیست. به عنوان پیوند آ14آ14بدون تقسیم است، مسافران می توانند به بخشی از مکان های موجود در پیوند دسترسی داشته باشند و به گره 1 برگردند. و بنابراین، پیوندهای جزئی آ1 eآ1هو آe 1آه1با چند ضلعی های فضا-زمان قابل دسترسی هستند س1 eس1هو سe 1سه1. همچنین از شکل می توان دریافت که پیوندهای جزئی برای پیوندهای تقسیم شده قابل دسترسی نیستند آ56آ56و آ65آ65. اگرچه گره 6 در داخل PNA قابل دسترسی است، مسافران نمی توانند به مکان های دیگر در پیوند برسند و با چرخش U بر روی پیوند تقسیم شده به گره 6 بازگردند. بنابراین، پیوندهای تقسیم شده و تقسیم نشده می توانند چند ضلعی های فضا-زمان به طور قابل توجهی متفاوت داشته باشند و باید به صراحت در مدل NTP در نظر گرفته شوند.
4. الگوریتم های ژئو محاسباتی برای ساخت منشورهای شبکه-زمان
مشابه الگوریتم NTP-Dij موجود [ 6 ، 31 ]، یک الگوریتم ساده برای ساخت یک NTP، اعمال دو جستجوی کوتاه ترین مسیر با استفاده از الگوریتم یک-همه Dijkstra مبتنی بر پیوند است [ 33 ]. جستجوی رو به جلو برای محاسبه کمترین زمان سفر استفاده می شود تیo jآرتیآر��از مبدا o�به هر لینک آمن جآمن�(یعنی گره سر j�). جستجوی معکوس برای محاسبه کمترین زمان سفر است تیمن dآرتیآرمنداز هر لینک آمن جآمن�(یعنی گره دم منمن) به مقصد دد. سپس، پیوندهای قابل دسترسی ∀آمن ج∈ پنآ∀آمن�∈پنآرضایت بخش تیo jآر+تیمن dآر–تیمن ج≤ بتیآر��+تیآرمند–تیمن�≤برا می توان شناسایی کرد. پیاده سازی این الگوریتم ساده با استفاده مستقیم از الگوریتم Dijkstra مبتنی بر پیوند موجود آسان است. با این حال، با توجه به این واقعیت که پیوندهای قابل دسترسی در NTP عموماً بخش کوچکی از کل شبکه را تشکیل میدهند، میتواند با دوبار کاوش در تمام پیوندهای شبکه منجر به سربار محاسباتی قابل توجهی شود.
در این مطالعه، یک الگوریتم کارآمد (به نام الگوریتم NTP-A*) با استفاده از تکنیک های A* و شاخه و کران پیشنهاد شده است. ثابت شده است که تکنیک A* با استفاده از یک تابع ارزیابی اکتشافی در بهبود عملکرد جستجوی کوتاهترین مسیر موثر است. تکنیک شاخه و کران سعی می کند پیوندهای غیرقابل دسترسی را کنار بگذارد ∀آمن ج∉ Pنآ∀آمن�∉پنآ(یعنی تیo jآر+تیمن dآر–تیمن ج> b =تید–تیo–جدقیقهتیآر��+تیآرمند–تیمن�>ب=تید–تی�–جدقیقه) در طول جستجوهای کوتاهترین مسیر به جلو و عقب، به جای جستجوهای کوتاهترین مسیر. با استفاده از این دو تکنیک، الگوریتم NTP-A* پیشنهادی میتواند تعداد لینکهای کاوششده را با دو جستجوی کوتاهترین مسیر به میزان قابل توجهی کاهش دهد و در نتیجه میتواند عملکرد ساخت NTP را بهبود بخشد. مراحل دقیق الگوریتم NTP-A* در زیر توضیح داده شده است.
مرحله 1. اصلاح شبکه راه. در الگوریتم های کلاسیک کوتاه ترین مسیر، مبدا و مقصد باید در گره های شبکه قرار گیرند. این مرحله برای رسیدگی به وضعیت مبدا در پیوند است آمن جآمن�(مقصد در لینک آu vآتو�) با افزودن گره موقت o�( دد) و پیوندها آمن oآمن�و آo jآ��( آu dآتودو آدvآد�) به شبکه جیجی. اگر لینک آمن جآمن�( آu vآتو�) یک پیوند تقسیم نشده، پیوندهای موقت اضافی است آo منآ�منو آj oآ��( آدتوآدتوو آv dآ�د) نیز در جهت مخالف اضافه می شوند.
مرحله 2. جستجوی کوتاهترین مسیر را به جلو بفرستید. این مرحله برای تعیین کمترین زمان سفر است تیo jآرتیآر��از مبدا به هر پیوند شبکه آمن جآمن�با استفاده از رویه R-FSP زیر (رویه جستجوی جاده- جلو). با استفاده از تکنیک A*، یک تابع ارزیابی اکتشافی اف( j ) =تیo jآر+ h ( j )اف(�)=تیآر��+ساعت(�)به عنوان هزینه اکتشافی برای کوتاه ترین مسیر رو به جلو استفاده می شود پo jآرپآر��از مبدا تا پیوند آمن جآمن�، جایی که h ( j )ساعت(�)حد پایین تخمین زده شده است تیمن dآر–تیمن جتیآرمند–تیمن�. از زمان سفر اقلیدسی تیj dEتی��داز گره j�به مقصد همیشه راضی می کند تیj dE≤تیمن dآر–تیمن جتی��د≤تیآرمند–تیمن�، این مطالعه اتخاذ می کند تیj dEتی��دبه عنوان قابل قبول h ( j )ساعت(�)ارزش. این تیj dEتی��ددر فضای مسطح را می توان توسط دj dE/vحداکثرآرد��د/�آرحداکثر، جایی که vحداکثرآر�آرحداکثرحداکثر سرعت حرکت در شبکه جاده ها است. با استفاده از تکنیک A*، اطلاعات هر پیوند به مقصد می تواند به طور کامل برای هدایت جستجوی کوتاه ترین مسیر به جلو مورد استفاده قرار گیرد. تکنیک شاخه و کران بیشتر در جستجوی رو به جلو گنجانده شده است تا همه مسیرها را کنار بگذارد پo jآر، ∀آمن ج∈ الفپآر��،∀آمن�∈آرضایت بخش اف( j ) =تیo jآر+تیj dE> باف(�)=تیآر��+تی��د>ب. زیرا تیo jآر+تیمن dآر–تیمن ج≥ F( j ) =تیo jآر+تیj dEتیآر��+تیآرمند–تیمن�≥اف(�)=تیآر��+تی��دهمیشه برقرار است، همه مسیرها راضی کننده است اف( j ) > باف(�)>بمی توان آنها را به عنوان پیوندهای غیرقابل دسترس خارج از NTP شناسایی کرد و بنابراین می توان آنها را در طول جستجوی رو به جلو حذف کرد. به این ترتیب، جستجوی رو به جلو تنها بخشی از پیوندها را بررسی می کند پo jآر≠ ϕ ، ∀آمن ج∈ الفپآر��≠�،∀آمن�∈آ; لینک های دیگر پo jآر= ϕ ، ∀آمن ج∈ الفپآر��=�،∀آمن�∈آخارج از NTP کاوش نمی شوند.
| رویه R-FSP |
| ورودی ها: مبدا o�و مقصد دد، بودجه زمان سفر بب |
| خروجی ها: کمترین زمان سفر در لینک های قابل دسترسی |
| مرحله 1. مقداردهی اولیه: |
| 01: برای هر پیوند آمن ج∈ الفآمن�∈آ |
| 02: مسیر رو به جلو را تنظیم کنید پo jآر: = ϕپآر��:=�، زمان سفر آن است تیo jآر: = ∞تیآر��:=∞و هزینه اکتشافی اف( j ) : = ∞اف(�):=∞. |
| 03: پایان برای |
| 04: برای هر پیوند آo jآ��برخاسته از مبدأ o� |
| 05: یک مسیر رو به جلو ایجاد کنید پo jآر: =آo jپآر��:=آ��، و تنظیم کنید تیo jآر: =تیo jتیآر��:=تی��و اف( j ) : =تیo j+تیj dEاف(�):=تی��+تی��د. |
| 06: درج کنید پo jآرپآر��به اسکن واجد شرایط اسE: = SE∪ {پo jآر}اس�:=اس�∪{پآر��}. |
| 07: پایان برای |
| مرحله 2. انتخاب مسیر: |
| 08: اگر اسE= ϕاس�=�، سپس متوقف شوید؛ در غیر این صورت ادامه دهید |
| 09: انتخاب کنید پo منآرپآر�مندر بالای اسEاس�، و آن را از آن حذف کنید اسE: = SE– {پo منآر}اس�:=اس�–{پآر�من}. |
| مرحله 3. گسترش مسیر: |
| 10: برای هر حرکت مجاز ψk i j�کمن�از لینک انتخاب شده آk iآکمنبرای پیوند دادن آمن جآمن� |
| 11: یک مسیر رو به جلو ایجاد کنید پ^o jآر: =پo منآر⊕آمن جپ^آر��:=پآر�من⊕آمن�، و تنظیم کنید تی^o jآر: =تیo منآر+تیمن جتی^آر��:=تیآر�من+تیمن�و اف( j ) : =تی^o jآر+تیj dEاف(�):=تی^آر��+تی��د. |
| 12: اگر اف( j ) ≤ باف(�)≤بسپس |
| 13: اگر تی^o jآرتی^آر��کمتر از هزینه سفر موجود در مسیر است تیo jآرتیآر��سپس |
| 14: اگر مسیر موجود باشد پo jآر∈ اسEپآر��∈اس�، سپس تنظیم کنید اسE: = SE– {پo jآر}اس�:=اس�–{پآر��}. |
| 15: مجموعه پo jآر: =پ^o jآرپآر��:=پ^آر��و اسE: = SE∪ {پ^o jآر}اس�:=اس�∪{پ^آر��}. |
| 16: پایان اگر |
| 17: پایان اگر |
| 18: پایان برای |
| 19: به مرحله 2 برگردید. |
مرحله 3. جستجوی کوتاهترین مسیر به عقب. این مرحله برای تعیین کمترین زمان سفر است تیمن dآرتیآرمنداز هر پیوند شبکه آمن جآمن�با استفاده از روش R-BSP زیر (روش جستجوی جاده ای به عقب) به مقصد برسید. با استفاده از تکنیک A*، تابع ارزیابی اکتشافی اف( من ) =تیمن dآر+ h ( i )اف(من)=تیآرمند+ساعت(من)به عنوان هزینه اکتشافی مسیر برای کوتاهترین مسیر از مقصد به پیوند استفاده می شود آمن جآمن�، جایی که h ( من )ساعت(من)یک حد پایین تخمینی است تیo jآر–تیمن جتیآر��–تیمن�. در این تحقیق کمترین زمان سفر تیo jآر–تیمن جتیآر��–تیمن�محاسبه شده در جستجوی رو به جلو به عنوان استفاده می شود h ( من )ساعت(من)ارزش در این جستجوی عقب افتاده است. پیوندهای ناشناخته (با پo jآر= ϕ _تیo jآر+تیj dE> بپآر��=�،تیآر��+تی��د>ب) در جستجوی رو به جلو خارج از NTP هستند و بنابراین می توان آنها را با خیال راحت در جستجوی عقب انداخت. با استفاده از این روش، نتایج جستجوی رو به جلو به طور کامل برای سرعت بخشیدن به جستجوی عقب استفاده می شود. تکنیک شاخه و کران برای کنار گذاشتن همه پیوندهای خارج از NTP (یعنی همه مسیرهای رضایت بخش) گنجانده شده است. اف( من ) =تیo jآر+تیمن dآر–تیمن ج> باف(من)=تیآر��+تیآرمند–تیمن�>ب) در طول فرآیند جستجوی کوتاهترین مسیر به عقب. پس از جستجوی برگشتی، پیوندها را با پمن dآر≠ ϕ ، ∀آمن ج∈ الفپآرمند≠�،∀آمن�∈آرا می توان به عنوان پیوندهای کامل در دسترس در NTP تعیین کرد.
| رویه R-BSP |
| ورودی ها: مبدا o�و مقصد دد، بودجه زمان سفر بب |
| خروجی ها: همه پیوندهای قابل دسترسی در منشور زمان شبکه |
| مرحله 1. مقداردهی اولیه: |
| 01: برای هر پیوند آمن ج∈ الفآمن�∈آ |
| 02: مسیر عقب را تنظیم کنید پمن dآر: = ϕپآرمند:=�، زمان سفر آن است تیمن dآر: = ∞تیآرمند:=∞و هزینه اکتشافی اف( i ) : = ∞اف(من):=∞. |
| 03: پایان برای |
| 04: برای هر پیوند آمن dآمندادغام به مقصد دد |
| 05: اگر مسیر رو به جلو باشد پo dآر≠ ϕپآر�د≠�در لینک آمن dآمندسپس |
| 06: یک مسیر به عقب ایجاد کنید پمن dآر: =آمن dپآرمند:=آمند، و تنظیم کنید تیمن dآر: =تیمن dتیآرمند:=تیمندو اف( من ) : =تیمن dآر+تیo dآر–تیمن dاف(من):=تیآرمند+تیآر�د–تیمند. |
| 07: درج کنید پمن dآرپآرمندبه اسکن واجد شرایط اسE: = SE∪ {پمن dآر}اس�:=اس�∪{پآرمند}. |
| 08: پایان اگر |
| 09: پایان برای |
| مرحله 2. انتخاب مسیر: |
| 10: اگر اسE= ϕاس�=�، سپس متوقف شوید؛ در غیر این صورت ادامه دهید |
| 11: انتخاب کنید پj dآرپآر�ددر بالای اسEاس�، و آن را از آن حذف کنید اسE: = SE– {پj dآر}اس�:=اس�–{پآر�د}. |
| مرحله 3. گسترش مسیر: |
| 12: برای هر حرکت مجاز ψمن j k�من�کاز لینک آمن جآمن�به لینک انتخاب شده آj kآ�ک |
| 13: اگر مسیر رو به جلو باشد پo jآر≠ ϕپآر��≠�در لینک آمن جآمن�سپس |
| 14: یک مسیر به عقب ایجاد کنید پ^من dآر: =آمن ج⊕پj dآرپ^آرمند:=آمن�⊕پآر�د، و تنظیم کنید تی^من dآر: =تیj dآر+تیمن جتی^آرمند:=تیآر�د+تیمن�و اف( من ) : =تی^من dآر+تیo jآر–تیمن جاف(من):=تی^آرمند+تیآر��–تیمن�. |
| 15: اگر اف( i ) ≤ باف(من)≤بسپس |
| 16: اگر تی^من dآرتی^آرمندکمتر از هزینه سفر موجود در مسیر است تیمن dآرتیآرمندسپس |
| 17: اگر برچسب موجود باشد پمن dآر∈ اسEپآرمند∈اس�، سپس تنظیم کنید اسE: = SE– {پمن dآر}اس�:=اس�–{پآرمند}. |
| 18: مجموعه پمن dآر: =پ^من dآرپآرمند:=پ^آرمندو اسE: = SE∪ {پ^من dآر}اس�:=اس�∪{پ^آرمند}. |
| 19: پایان اگر |
| 20: پایان اگر |
| 21: پایان اگر |
| 22: پایان برای |
| 23: به مرحله 2 برگردید. |
مرحله 4. ساخت منطقه شبکه بالقوه. این مرحله تعیین پیوندهای کامل و جزئی قابل دسترسی در NTP است. با استفاده از نتایج مرحله 3، تمام پیوندهای کامل قابل دسترسی را می توان به راحتی به عنوان پیوندهای کاوش شده (با پمن dآر≠ ϕ ، ∀آمن ج∈ الفپآرمند≠�،∀آمن�∈آ). در میان آنها پیوندهای کامل تقسیم شده و تقسیم نشده به ترتیب در دو مجموعه پیوند نگهداری می شوند. دی ال��و UL��. برای هر پیوند کامل تقسیم نشده قابل دسترسی آمن ج∈ ULآمن�∈��، پیوند مقابل آن آj iآ�مننیز در آن گنجانده شده است UL��. همه پیوندهای جزئی قابل دسترسی شناسایی و در مجموعه دیگری ذخیره می شوند. پLپ�. هر پیوند جزئی قابل دسترسی آj k∈ پLآ�ک∈پ�در صورت پیوند قابل شناسایی است آj kآ�کتقسیم نشده است، ارضا می کند آj k∉ ( D L ∪ Uل )آ�ک∉(��∪��)، و به یک پیوند قابل دسترسی متصل می شود آمن ج∈ ( D L ∪ Uل )آمن�∈(��∪��)، ∃ψمن j k= (آمن ج،آj k)∃�من�ک=(آمن�،آ�ک).
مرحله 5. ساخت منشور شبکه-زمان. این مرحله ساخت چندضلعی فضا-زمان است سمن جسمن�برای هر پیوند قابل دسترسی (جزئی). آمن جآمن�. اشکال مختلفی از چند ضلعی های فضا-زمان برای پیوندها ساخته شده اند دی ال��، UL��و پLپ�به شرح زیر است:
- ➢
-
سناریوی پیوند تقسیم شده (یعنی آمن ج∈ D Lآمن�∈��). اولین زمان ورود و آخرین زمان خروج در گره دم منمنرا می توان به صورت محاسبه کرد تی–من=تیo+تیo jآر–تیمن جتیمن–=تی�+تیآر��–تیمن�و تی+من=تید–تیمن dآرتیمن+=تید–تیآرمند. زودترین زمان ورود و آخرین زمان خروج در سر گره j�به عنوان تعیین می شوند تی–j=تیo+تیo jآرتی�–=تی�+تیآر��و تی+j=تید–تیمن dآر+تیمن جتی�+=تید–تیآرمند+تیمن�. چند ضلعی فضا-زمان را می توان به صورت سمن ج= { (ایکسمن،yمن،تی+من) ،(ایکسj،yj،تی+j) ،(ایکسj،yj،تی–j) ،(ایکسمن،yمن،تی–من) }سمن�={(ایکسمن،�من،تیمن+)،(ایکس�،��،تی�+)،(ایکس�،��،تی�–)،(ایکسمن،�من،تیمن–)}. اگر لینک آمن جآمن�پس یک یا چند رأس میانی دارد (ایکسw،yw،تی–w) ، (ایکسw،yw،تی+w)(ایکس�،��،تی�–)،(ایکس�،��،تی�+)نیز محاسبه و درج می شوند سمن جسمن�برای هر رأس میانی w�. این تی–wتی�–و تی+wتی�+مقادیر در هر رأس w�را می توان از گره های دم و سر درون یابی کرد.
- ➢
-
سناریوی پیوند تقسیم نشده (یعنی آمن ج∈ULآمن�∈��). اول، دو چند ضلعی فضا-زمان سمن جسمن�و سj iس�منبرای دو پیوند مخالف ساخته شده اند آمن جآمن�و آj iآ�من، با استفاده از همان روش سناریوی پیوند تقسیم شده فوق الذکر. سپس چند ضلعی ساخته شد سمن جسمن�و سj iس�مندر یک چند ضلعی جدید ادغام می شوند س¯¯¯من جس¯من�. در نهایت، چند ضلعی ادغام شده است س¯¯¯من جس¯من�به عنوان چند ضلعی برای هر دو پیوند تنظیم شده است آمن جآمن�و آj iآ�من.
- ➢
-
سناریوی پیوند جزئی (یعنی آj k∈پLآ�ک∈پ�). اجازه دهید پDاس(آj k) = {ψمن j k= (آمن ج،آj k) ∈ Ψ}پ�اس(آ�ک)={�من�ک=(آمن�،آ�ک)∈�}مجموعه ای از پیوندهای قبلی قابل دسترسی پیوند باشد آj kآ�ک. زودترین زمان ورود و آخرین زمان خروج در گره j�به عنوان تعیین می شوند تی–j= دقیقه (تیo+تیo jآر)تی�–=دقیقه(تی�+تیآر��)و تی+j= حداکثر (تید–تیمن dآر+تیمن ج)تی�+=حداکثر(تید–تیآرمند+تیمن�)در میان همه پیوندهای پیشین در دسترس، ∀آمن ج∈ پدی اس(آj k)∀آمن�∈پ�اس(آ�ک). برای تعیین پیوند جزئی قابل دسترسی آj eآ�ه، گره انتهایی آن e = (آj k،θه)ه=(آ�ک،�ه)محاسبه می شود θه= (تی+j–تی–j–جدقیقه) / (تیj k+تیk j)�ه=(تی�+–تی�––جدقیقه)/(تی�ک+تیک�). زودترین زمان ورود و آخرین زمان خروج آن محاسبه می شود تی–ه=تی–j+تیj kθهتیه–=تی�–+تی�ک�هو تی+ه=تی+j–تیj kθهتیه+=تی�+–تی�ک�ه. یک چندضلعی فضا-زمان برای پیوند جزئی ساخته شده است آj eآ�هاز طریق ψمن j k�من�کمانند سj e= { (ایکسj،yj،تی+j) ، (ایکسه،yه،تی+ه) ، (ایکسه،yه،تی–ه) ، (ایکسj،yj،تی–j) }س�ه={(ایکس�،��،تی�+)،(ایکسه،�ه،تیه+)،(ایکسه،�ه،تیه–)،(ایکس�،��،تی�–)}. اگر لینک جزئی آj eآ�هدارای یک یا چند رأس میانی و سپس مربوطه است (ایکسw،yw،تی–w) ، (ایکسw،yw،تی+w)(ایکس�،��،تی�–)،(ایکس�،��،تی�+)نیز محاسبه و درج می شوند سj eس�هبرای هر راس میانی w�. سپس با استفاده از روش مشابه، چند ضلعی سe kسهکبرای پیوند جزئی آk eآکهدر جهت مخالف ساخته شده است. این دو چند ضلعی ساخته شده، سj eس�هو سe kسهک، در یک چند ضلعی جدید ادغام می شوند س¯¯¯j kس¯�ک. در نهایت، چند ضلعی ادغام شده است س¯¯¯j kس¯�کبه عنوان چند ضلعی برای هر دو جهت تنظیم شده است.
مرحله 6. ترمیم شبکه راه. این مرحله برای بازسازی شبکه جاده ای است جیجیبا حذف گره ها و پیوندهای موقت اضافه شده در مرحله 1.
پیچیدگی محاسباتی الگوریتم NTP-A* پیشنهادی تحلیل میشود. با اجرای یک صف اولویت با استفاده از ساختار F-heap [ 35 ]، هر دو جستجوی کوتاه ترین مسیر به جلو و عقب (مرحله 2 و 3) نیاز دارند. O ( | Ψ| + | A | L o g| A | )�(|�|+|آ|���|آ|)در بدترین حالت، جایی که | Ψ||�|تعداد پیچ ها در شبکه راه ها و | A ||آ|تعداد پیوندهای شبکه راه است. در مراحل 4 و 5، هر دو ساخت PNA و ساخت NTP اجرا می شوند O ( | A | )�(|آ|). به طور خلاصه، کل زمان محاسباتی است O ( | Ψ| + | A | L o g| A | )�(|�|+|آ|���|آ|). بنابراین، عملکرد الگوریتم NTP-A* تحت سلطه دو جستجوی کوتاه ترین مسیر در مراحل 2 و 3 است.
بهبود دو جستجوی کوتاه ترین مسیر (یعنی الگوریتم های R-FSP و R-BSP) می تواند عملکرد ساخت NTP را به طور قابل توجهی افزایش دهد. علاوه بر تکنیکهای A* و شاخه و کران، چندین مسئله پیادهسازی میتواند بر عملکرد جستجوی کوتاهترین مسیر تأثیر بگذارد. به طور معمول، جستجوهای کوتاهترین مسیر مبتنی بر A* از تکنیک تنظیم برچسب با استفاده از ساختارهای داده صف اولویت (به عنوان مثال، F-heap) برای پیاده سازی SE (واجد شرایط اسکن) استفاده می کنند. تکنیک تصحیح برچسب، با استفاده از ساختار داده لیست پیوندی، برای الگوریتم NTP-A* پیشنهادی به دلیل کارایی محاسباتی آن پیشنهاد شده است. در الگوریتم های R-FSP و R-BSP فوق الذکر، تکنیک برچسب گذاری مبتنی بر پیوند [ 33 ] برای در نظر گرفتن محدودیت های پیچ در شبکه جاده ها به کار گرفته شده است. اخیراً لی و همکاران [36 ] با استفاده از تکنیک برچسبگذاری مبتنی بر گره در گرهها بدون محدودیت نوبتی و یک تکنیک برچسبگذاری مبتنی بر پیوند در گرههایی با محدودیتهای نوبتی، یک تکنیک برچسبگذاری پیوند-گره ترکیبی جدید پیشنهاد کرد. گزارش شد [ 36] که تکنیک برچسبگذاری پیوند گره ترکیبی میتواند کمترین مسیر زمانی را در یک شبکه جادهای با محدودیتهای پیچی تعیین کند، در حالی که عملکرد محاسباتی مشابهی با الگوریتم کلاسیک مبتنی بر گره Dijkstra بدست میآورد. خاطرنشان میشود که از نظر تئوری، این تکنیکها (به عنوان مثال، تکنیکهای A* و شاخه و کران، و تکنیکهای تصحیح برچسب و برچسبگذاری پیوند گره ترکیبی) بر پیچیدگی بدترین حالت الگوریتم NTP-A* تأثیر نمیگذارند. که مشابه الگوریتم های NTP-Dij و NTP-SN موجود است). در عمل، این تکنیک ها می توانند به طور قابل توجهی عملکرد ساخت NTP را در شبکه های جاده ای واقعی افزایش دهند. اثربخشی چنین تکنیک هایی در بخش بعدی از طریق یک مطالعه موردی جامع مورد بررسی و بحث قرار خواهد گرفت.
5. مطالعه موردی
در این مطالعه، یک مطالعه موردی جامع با استفاده از شبکههای جادهای دنیای واقعی برای بررسی عملکرد محاسباتی الگوریتم پیشنهادی NTP-A* انجام شده است. الگوریتم پیشنهادی NTP-A* با استفاده از زبان برنامه نویسی Visual C# پیاده سازی شد. یک ساختار فهرست مجاورت مبتنی بر پیوند [ 33] برای بارگذاری شبکه جاده در حافظه استفاده شد. تکنیک تصحیح برچسب مبتنی بر پیوند برای اجرای رویههای R-FSP و R-BSP به کار گرفته شد. برای مقایسه، سه الگوریتم ساخت NTP دیگر نیز با استفاده از همان زبان برنامه نویسی پیاده سازی شدند. الگوریتم اول، به نام NTP-BB، تنها از تکنیک شاخه و کران استفاده می کند، اما تابع ارزیابی اکتشافی را برای هر دو الگوریتم R-FSP و R-BSP صفر می کند. الگوریتم دوم که NTP-Dij نام دارد، نه از تکنیک A* و نه از تکنیک شاخه و کران استفاده می کند. این الگوریتم از الگوریتم ساده موجود اصلاح شد [ 31] با استفاده از الگوریتم Dijkstra مبتنی بر پیوند برای در نظر گرفتن محدودیتهای پیچ در شبکههای جادهای. الگوریتم سوم (به نام NTP-SN) بر اساس الگوریتم موجود ساخت NTP در یک شبکه فرعی [ 28 ، 29 ] پیاده سازی شد. در این الگوریتم NTP-SN، زیرشبکه با انتخاب گره ها و پیوندهای درون STP در فضای مسطح ساخته شد. و سپس الگوریتم NTP-Dij به طور مستقیم برای ساخت NTP ها مورد استفاده قرار گرفت. در پیاده سازی، زیرشبکه به سادگی با تنظیم یک ویژگی «فعال کردن» به عنوان درست برای گره ها و پیوندهای مربوطه در زیرشبکه ایجاد شد. حداکثر سرعت سفر (یعنی vحداکثرآر�آرحداکثر) 120 کیلومتر بر ساعت تنظیم شد. در این مطالعه موردی، تمام آزمایشها بر روی یک لپتاپ مکبوک ایر با یک CPU چهار هستهای اینتل i7 با فرکانس 2.0 گیگاهرتز و سیستم عامل ویندوز 7 انجام شد.
شبکه جاده در ووهان، چین، با اطلاعات دقیق از محدودیتهای پیچ و جادههای تقسیمشده/تقسیم نشده، برای این مطالعه موردی اتخاذ شد. همانطور که در شکل 4 نشان داده شده است ، شبکه جاده ووهان از 19306 گره، 46757 پیوند و 128965 پیچ تشکیل شده است. در این شبکه جاده ای، 24909 لینک تقسیم شده است (یعنی 53.3 درصد کل پیوندها) و 21848 پیوند دیگر (یعنی 46.7 درصد از کل پیوندها) تقسیم نشده است. تعداد چرخش های محدود 1681 است که تنها 1.30٪ از کل پیچ ها را تشکیل می دهد. برای به دست آوردن زمان سفر پیوند شبکه جاده ای ووهان، داده های ماشین شناور دنیای واقعی (FCD) در یک پنجشنبه معمولی (3 سپتامبر 2009) جمع آوری شد. شکل 4زمان تخمینی سفر را در یک دوره اوج عصر (6 عصر تا 7 بعد از ظهر) نشان می دهد. برای روش دقیق برآورد این زمان سفر، خوانندگان علاقه مند می توانند به مرجع [ 5 ] مراجعه کنند.
جدول 1 عملکرد محاسباتی هر چهار الگوریتم (یعنی NTP-A*، NTP-BB، NTP-Dij و NTP-SN) را در شبکه جاده ای ووهان گزارش می کند. بودجه زمان سفر (یعنی بب) مقادیر از 10 تا 150 دقیقه تنظیم شد. اندازه یک NTP با درصد پیوندهای درون NTP در کل شبکه اندازه گیری شد. عملکرد محاسباتی همه الگوریتمها با زمانهای محاسباتی ( تی˜تی˜) و تعداد پیوندهای انتخاب شده ( n˜�˜). عملکرد محاسباتی گزارش شده میانگین 100 اجرا با استفاده از جفت های مختلف مبدا و مقصد (OD) بود. 100 جفت OD به طور تصادفی در شبکه تولید شد و از همان مجموعه جفت OD برای همه الگوریتمها استفاده شد.
همانطور که از جدول مشاهده می شود، عملکرد محاسباتی الگوریتم NTP-A* با افزایش بودجه زمان سفر کاهش می یابد (به عنوان مثال، بب) ارزش های. مثلاً وقتی b = 10ب=10در دقیقه، الگوریتم NTP-A* تنها به 5.75 میلی ثانیه نیاز دارد. چه زمانی b = 150ب=150دقیقه، این زمان محاسباتی به طور قابل توجهی به 593.18 میلی ثانیه افزایش می یابد. این نتیجه بدیهی است، به دلیل افزایش اندازه NTP از 1.02٪ به 96.71٪ زمانی که ببمقادیر از 10 به 150 دقیقه افزایش می یابد. از جدول می توان مشاهده کرد که پارامتر بودجه زمان سفر هیچ تاثیری بر عملکرد محاسباتی الگوریتم NTP-Dij ندارد که برای همه 629.23 میلی ثانیه مصرف می کند. ببارزش های. این به این دلیل است که الگوریتم NTP-Dij از دو جستجوی کوتاه ترین مسیر یک به همه برای تعیین اولین زمان حرکت و آخرین زمان رسیدن برای هر پیوند شبکه، صرف نظر از موارد مختلف، استفاده می کند. ببارزش های. بنابراین، الگوریتم NTP-Dij میتواند با کاوش تعداد زیادی پیوند شبکه غیر ضروری، زمانی که اندازه NTP کوچک است، سربار محاسباتی قابل توجهی داشته باشد. مثلاً وقتی b = 10ب=10دقیقه، زمان محاسباتی مصرف شده توسط الگوریتم NTP-Dij حدود 108 برابر (یعنی 629.23/5.75-1) بیشتر از زمان الگوریتم پیشنهادی NTP-A * بود.
در مقایسه با الگوریتم NTP-Dij، الگوریتم NTP-SN به جای کل شبکه، NTP را در یک زیرشبکه در STP در فضای مسطح می سازد. از جدول می توان دریافت که این الگوریتم NTP-SN می تواند عملکرد ساخت NTP را زمانی که بودجه زمان سفر بسیار کم است بهبود بخشد (به عنوان مثال، b = 10ب=10دقیقه). با این حال، این بهبود محاسباتی به سرعت با افزایش بودجه زمان سفر کاهش می یابد (به عنوان مثال، b = 30ب=30دقیقه). این به این دلیل است که شبکه فرعی تعریف شده توسط STP در فضای مسطح معمولاً کمی بزرگتر از NTP واقعی بود. وقتی بودجه زمان سفر زیاد می شود (به عنوان مثال، b > 30ب>30دقیقه)، شبکه فرعی ممکن است به کل شبکه برسد. در این حالت، تولید زیرشبکه میتواند بار محاسباتی اضافی ایجاد کند.
الگوریتم پیشنهادی NTP-A* از هر دو تکنیک A* و شاخه و کران برای بهبود عملکرد ساخت NTP استفاده می کند. اثربخشی تکنیک شاخه و کران از طریق مقایسه بین الگوریتمهای NTP-Dij و NTP-BB مورد بررسی قرار گرفت. با استفاده از تکنیک شاخه و کران، الگوریتم NTP-BB میتواند پیوندهای شبکه غیرقابل دسترس را که زمان سفر به مقصد (یعنی، تیمن dآرتیآرمند) (یا از مبدا، به عنوان مثال، تیo jآرتیآر��) از بودجه زمان سفر داده شده بزرگتر هستند بب. در مقایسه با الگوریتم NTP-Dij، این تکنیک شاخه و کران معرفی شده می تواند به طور قابل توجهی تعداد پیوندهای غیر ضروری بررسی شده را کاهش دهد و در نتیجه عملکرد ساخت NTP را بهبود بخشد. مثلاً وقتی b = 10ب=10در دقیقه، تکنیک شاخه و کران تعداد پیوندهای انتخابی را 98.96٪ کاهش داد (یعنی 1 – 7694/743853). بنابراین الگوریتم NTP-BB حدود 83 برابر سریعتر از الگوریتم NTP-Dij اجرا می شود. b = 10ب=10دقیقه با این وجود، می توان از جدول دریافت که اثربخشی تکنیک شاخه و کران با افزایش مقادیر بودجه زمان سفر کاهش می یابد، و زمانی که اندازه NTP به کل شبکه (یعنی 100٪) نزدیک می شود، حاشیه ای می شود.
اثربخشی تکنیک A* با مقایسه بین الگوریتم های NTP-BB و NTP-A* مورد بررسی قرار گرفت. در الگوریتم NTP-A* پیشنهادی، هر دو تکنیک A* و شاخه و کران برای کنار گذاشتن پیوندهای غیرضروری که هزینه های اکتشافی به مقصد دارند (یعنی، تیمن dآر+ h ( i )تیآرمند+ساعت(من)) (یا از مبدا، به عنوان مثال، تیo jآر+ h ( j )تیآر��+ساعت(�)) از بودجه زمان سفر داده شده بزرگتر هستند بب. در جستجوی رو به جلو، یک تابع اکتشافی h ( j ) =تیj dEساعت(�)=تی��دبا ترکیب اطلاعات هر پیوند به مقصد معرفی شد، در حالی که، در جستجوی عقب، تابع اکتشافی h ( i ) =تیo منآرساعت(من)=تیآر�منبا بهترین استفاده از نتایج جستجوی رو به جلو اتخاذ شد. در مقایسه با الگوریتم NTP-BB، تکنیک A* معرفی شده در کاهش تعداد پیوندهای انتخابی به میزان 60.75٪ موثر بود و عملکرد ساخت NTP را تا 30.78٪ بهبود بخشید. b = 10ب=10دقیقه اثربخشی این تکنیک A* زمانی که یک NTP با اندازه متوسط استفاده شد مشخص تر شد. مثلاً وقتی b = 40ب=40در دقیقه، تکنیک A* می تواند تعداد لینک های انتخابی را تا 62.63% کاهش دهد و عملکرد ساخت NTP را تا 103.90% بهبود بخشد. مشابه تکنیک شاخه و کران، اثربخشی تکنیک A* زمانی که اندازه NTP به کل شبکه نزدیک شود، حاشیه ای می شود.
چندین تکنیک پیاده سازی الگوریتم NTP-A* پیشنهادی نیز مورد بررسی قرار گرفت. ابتدا اثربخشی تکنیک تصحیح برچسب در اجرای SE مورد بررسی قرار گرفت. به طور معمول، الگوریتم کوتاه ترین مسیر نوع A از تکنیک تنظیم برچسب استفاده می کند [ 37 ، 38 ]. برای مقایسه، این تکنیک تنظیم برچسب نیز در مطالعه موردی با استفاده از ساختار داده F-heap [ 35 ] (به نام الگوریتم NTP-A*-LS) اجرا شد. شکل 5عملکرد محاسباتی الگوریتمهای NTP-A* و NTP-A*-LS در شبکه جادهای ووهان را نشان میدهد. همانطور که در شکل نشان داده شده است، الگوریتم NTP-A* با استفاده از تکنیک تصحیح برچسب سریعتر از الگوریتم NTP-A*-LS با استفاده از تکنیک تنظیم برچسب اجرا می شود. این به این دلیل است که ساختار صف اولویت در تکنیک تنظیم برچسب نسبت به ساختار داده لیست پیوندی که در تکنیک تصحیح برچسب استفاده می شود، از نظر محاسباتی گران بود.
سپس تکنیکهای برچسبگذاری برای در نظر گرفتن محدودیتهای نوبتی مورد بررسی قرار گرفت. الگوریتم NTP-A* (یعنی رویههای R-FSP و R-BSP) مبتنی بر تکنیک برچسبگذاری مبتنی بر پیوند را میتوان با استفاده از تکنیک برچسبگذاری پیوند-گره ترکیبی [36] بهبود بخشید .]. تکنیک برچسبگذاری پیوند-گره ترکیبی به طور تطبیقی از تکنیک برچسبگذاری مبتنی بر گره برای گرههای نامحدود بدون محدودیت نوبتی و از تکنیک برچسبگذاری مبتنی بر پیوند برای گرههای محدود با محدودیتهای نوبتی استفاده میکند. با استفاده از این تکنیک برچسبگذاری پیوند گره ترکیبی، میتوان تعداد مسیرهای تولید، ارزیابی و نگهداری در گرههای نامحدود را در مقایسه با روش برچسبگذاری مبتنی بر پیوند کاهش داد. از آنجایی که تعداد گرههای محدود شده در اکثر شبکههای جادهای (مثلاً شبکه ووهان) کم بود، چنین تکنیک برچسبگذاری پیوند-گره ترکیبی میتواند عملکرد محاسباتی رویههای R-BSP و R-BSP را به طور قابل توجهی بهبود بخشد. الگوریتم بهبود یافته برای راحتی به عنوان الگوریتم NTP-A*-HLN معرفی شد. همانطور که در شکل مشاهده می شود، الگوریتم NTP-A*-HLN 1.99 برابر سریعتر از الگوریتم NTP-A* اجرا می شود. b = 60ب=60دقیقه
عملکرد محاسباتی الگوریتم NTP-A*-HLN پیشنهادی با استفاده از چهار شبکه جاده با اندازههای مختلف بیشتر مورد بررسی قرار گرفت. دو الگوریتم موجود (NTP-Dij و NTP-SN) نیز برای مقایسه مورد بررسی قرار گرفتند. علاوه بر شبکه ووهان، سه شبکه دیگر، RTIS هنگ کنگ، شبکه منطقه ای شیکاگو و شبکه پکن، از منابع به دست آمد [ 36 ، 38 ]. جدول 2 عملکرد محاسباتی سه الگوریتم را نشان می دهد. عملکرد محاسباتی گزارش شده میانگین 100 اجرا با استفاده از جفت های OD تولید شده به طور تصادفی برای هر شبکه بود. پارامتر بودجه زمان سفر برای همه شبکه ها 30 دقیقه تنظیم شد.
همانطور که از جدول مشاهده می شود، زمان های محاسباتی سه الگوریتم با اندازه شبکه افزایش می یابد. الگوریتم NTP-A*-HLN تنها 2.85 میلی ثانیه برای ساخت NTPها در RTIS هنگ کنگ با 3655 پیوند مصرف کرد. وقتی از شبکه پکن استفاده شد، اندازه شبکه جادهای 30.39 برابر و زمان محاسباتی 17.24 برابر به 52.01 میلیثانیه افزایش یافت. در مقایسه با الگوریتم NTP-A*-HLN، الگوریتم NTP-Dij به میزان قابل توجهی با اندازه شبکه کاهش می یابد. به عنوان مثال، زمانی که شبکه پکن مورد تجزیه و تحلیل قرار گرفت، زمان محاسباتی مورد نیاز الگوریتم NTP-Dij حدود 890.53 برابر افزایش یافت (7809.83/8.76 – 1). این به این دلیل است که الگوریتم NTP-Dij با دوبار کاوش کل شبکه، NTP را می سازد. در این حالت، زمان محاسباتی الگوریتم NTP-Dij به اندازه شبکه حساس تر است. از جدول می توان مشاهده کرد که الگوریتم NTP-SN به روشی مشابه الگوریتم NTP-Dij اجرا می شود. این نتیجه تایید کرد که اثربخشی ساخت NTP در شبکههای فرعی با استفاده از STP در فضای مسطح حاشیهای است.
6. نتیجه گیری
منشور فضا-زمان یک مفهوم کلیدی در جغرافیای زمانی برای تحلیل رفتار فعالیت-سفر انسان تحت محدودیت های فضا-زمان مختلف است. کاربردهای گسترده ای در بسیاری از مطالعات جغرافیایی زمانی دارد. با این حال، چند الگوریتم ژئومحاسباتی کارآمد در ادبیات برای ساخت منشورهای شبکه-زمان (NTPs) در شبکههای جادهای واقعی توسعه داده شدهاند. برای پر کردن این شکاف، این مطالعه مدلهای NTP و الگوریتمهای زمین محاسباتی را بررسی کرد. یک مدل NTP برای متمایز کردن جادههای تقسیمبندیشده و تقسیمناپذیر پیشنهاد شد و به افراد اجازه میدهد تا دور برگردان انجام دهند و به پیوندهای جزئی در جادههای تقسیم نشده دسترسی داشته باشند. یک الگوریتم جغرافیایی محاسباتی (به نام NTP-A*) برای ساخت موثر NTP در شبکه های جاده ای در مقیاس بزرگ توسعه داده شد. در الگوریتم پیشنهادی، تکنیکهای A* و شاخه و کران برای بهبود عملکرد ساخت NTP با دور انداختن پیوندهای غیرقابل دسترس در طول دو جستجوی کوتاهترین مسیر به کار گرفته شد. تکنیکهای برچسبگذاری تصحیح برچسب و پیوند گره ترکیبی برای بهبود عملکرد ساخت NTP در شبکههای جادهای با محدودیتهای چرخشی مورد استفاده قرار گرفتند. یک مطالعه موردی جامع با استفاده از چهار شبکه جاده واقعی برای نشان دادن مزیت محاسباتی الگوریتم NTP-A* پیشنهادی انجام شد. نتایج تجربی نشان داد که الگوریتم NTP-A* پیشنهادی میتواند الگوریتمهای موجود (یعنی NTP-Dij و NTP-SN) را با ضریب 100 در شبکههای جادهای در مقیاس بزرگ (به عنوان مثال، شبکه پکن) بهبود بخشد. تکنیکهای برچسبگذاری تصحیح برچسب و پیوند گره ترکیبی برای بهبود عملکرد ساخت NTP در شبکههای جادهای با محدودیتهای چرخشی مورد استفاده قرار گرفتند. یک مطالعه موردی جامع با استفاده از چهار شبکه جاده واقعی برای نشان دادن مزیت محاسباتی الگوریتم NTP-A* پیشنهادی انجام شد. نتایج تجربی نشان داد که الگوریتم NTP-A* پیشنهادی میتواند الگوریتمهای موجود (یعنی NTP-Dij و NTP-SN) را با ضریب 100 در شبکههای جادهای در مقیاس بزرگ (به عنوان مثال، شبکه پکن) بهبود بخشد. تکنیکهای برچسبگذاری تصحیح برچسب و پیوند گره ترکیبی برای بهبود عملکرد ساخت NTP در شبکههای جادهای با محدودیتهای چرخشی مورد استفاده قرار گرفتند. یک مطالعه موردی جامع با استفاده از چهار شبکه جاده واقعی برای نشان دادن مزیت محاسباتی الگوریتم NTP-A* پیشنهادی انجام شد. نتایج تجربی نشان داد که الگوریتم NTP-A* پیشنهادی میتواند الگوریتمهای موجود (یعنی NTP-Dij و NTP-SN) را با ضریب 100 در شبکههای جادهای در مقیاس بزرگ (به عنوان مثال، شبکه پکن) بهبود بخشد.
در این تحقیق زمان سفر در شبکه های جاده ای ایستا و قطعی فرض شده است. الگوریتم پیشنهادی NTP-A* را می توان به راحتی برای ساخت NTP در شبکه های پویا گسترش داد، جایی که زمان سفر پیوند با زمان روز متفاوت است. در این حالت پویا، الگوریتمهای کوتاهترین مسیر وابسته به زمان [ 39 ] باید به جای الگوریتم کلاسیک Dijkstra اتخاذ شوند. تکنیکهای پیادهسازی معرفیشده (شامل تکنیکهای A* و شاخه و کران) هنوز برای چنین مورد پویا مؤثر هستند. الگوریتم پیشنهادی NTP-A* همچنین می تواند برای ساخت منشورهای فضا-زمان قابل اعتماد گسترش یابد [ 17]] در شبکه های جاده ای با عدم قطعیت زمان سفر. در این مورد تصادفی، هر دو تکنیک A* و شاخه و کران موثر هستند، اما الگوریتمهای کوتاهترین مسیر قابل اعتماد [ 38 ، 40 ، 41 ] باید برای دو جستجوی کوتاهترین مسیر استفاده شوند. با این حال، مشکل ساخت و ساز NTP زمانی چالش برانگیز می شود که هر دو ویژگی پویا و تصادفی زمان سفر در نظر گرفته شود. در شبکههای پویا و تصادفی، زمانهای سفر مسیر غیرقابل برگشت هستند [ 42 ] و نمیتوانند در جهت معکوس از مقصد تولید شوند. این یک سوال باز است که چگونه می توان یک رویکرد کارآمد برای تعیین آخرین زمان خروج برای همه گره های در دسترس ایجاد کرد. این بسط مهم را به تحقیقات آینده واگذار می کنیم.
بدون نظر