پرش به محتوای اصلی

لیگ امدادگر ماز (Rescue Maze)؛ کاوش هزارتو، نقشه‌برداری و نجات قربانی

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

به همین دلیل، ماز از نظر فنی یک پله بالاتر از خطی است و معمولاً انتخاب دانش‌آموزانی است که مرحلهٔ خطی را گذرانده‌اند.

ساختار میدان

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

قربانی‌ها چطور شناسایی می‌شوند؟

دو نوع قربانی وجود دارد و هرکدام حسگر متفاوتی می‌خواهد:

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

وقتی ربات قربانی را تشخیص داد، باید در همان کاشی توقف کند، علامت بدهد و کیت نجات بیندازد — تعداد کیت هم به نوع قربانی بستگی دارد. اشتباه در نوع قربانی یعنی هدررفتن کیت و امتیاز.

امتیاز پنهان: بازگشت به خانه. بخش قابل‌توجهی از امتیاز به رباتی می‌رسد که بعد از کاوش، خودش به نقطهٔ شروع برگردد. این یعنی ربات باید مسیر رفته را به‌خاطر سپرده باشد — و همین، ماز را از یک ربات ساده به یک مسئلهٔ واقعی الگوریتمی تبدیل می‌کند.

الگوریتم‌ها؛ قلب این لیگ

کاوش

ساده‌ترین روش، «دست راست روی دیوار» است: ربات همیشه دیوار سمت راست را دنبال می‌کند. جواب می‌دهد اما بهینه نیست و در برخی چیدمان‌ها بخشی از ماز را اصلاً نمی‌بیند. تیم‌های جدی سراغ کاوش مبتنی بر گراف می‌روند: هر کاشی یک گره، هر مسیر یک یال، و کشف با DFS یا BFS.

نقشه‌برداری و مکان‌یابی

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

مسیریابی بازگشت

برای برگشت به شروع، الگوریتم کوتاه‌ترین مسیر (مثل flood fill) روی نقشهٔ ساخته‌شده اجرا می‌شود — همان تکنیکی که در میکروماوس هم استفاده می‌شود.

سخت‌افزار پیشنهادی

  • حسگر فاصله در چهار جهت (تشخیص دیوار)
  • ژیروسکوپ یا IMU برای چرخش دقیق ۹۰ درجه
  • دوربین برای قربانی بصری و حسگر حرارتی برای قربانی گرمایی
  • مکانیزم رهاسازی کیت نجات
  • پردازندهٔ قوی‌تر از میکروکنترلر ساده (به‌دلیل پردازش تصویر)

واقع‌بینانه چقدر طول می‌کشد؟

برای تیمی که قبلاً تجربهٔ لیگ خطی دارد، حدود ۶ تا ۹ ماه تا آمادگی رقابتی. برای تیم کاملاً تازه‌کار، بهتر است اول یک فصل روی Rescue Line کار شود. تیم‌های ماز نوین ذهن هم همین مسیر پلکانی را طی می‌کنند.

پرسش‌های پرتکرار

ماز سخت‌تر از امدادگر خطی است؟

بله، به‌طور محسوس. Rescue Line عمدتاً کنترل حرکت است، اما ماز پردازش تصویر، حسگر حرارتی، نقشه‌برداری و مسیریابی می‌خواهد.

آیا برای ماز حتماً به دوربین نیاز است؟

برای شناسایی قربانی بصری بله. برخی تیم‌ها با تمرکز روی قربانی حرارتی شروع می‌کنند، اما بخشی از امتیاز را از دست می‌دهند.

چه پیش‌نیازی برای شروع لازم است؟

تسلط بر کنترل موتور، کار با حسگر فاصله و برنامه‌نویسی ساختاریافته. آشنایی با پایتون یا ++C برای بخش نقشه‌برداری بسیار کمک می‌کند.

می‌خواهی وارد لیگ امدادگر ماز شوی؟

تیم‌های مسابقاتی نوین ذهن هر سال از صفر تا سکوی جهانی آموزش می‌بینند — حضوری در تهران و آنلاین در سراسر کشور.

ثبت‌نام و مشاوره رایگان دورهٔ ربات امدادگر

مقالات مرتبط