الگوریتم آسانسور (قسمت دوم)

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

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

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

 

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

 

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

 

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

 

رایانه‌های پیشرفته وارد می‌شوند!

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

الگوریتم آسانسور

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

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

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.