قوانین مسابقات لیگ خانه هوشمند

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

Rulebook (English PDF) کتابچه‌ی قوانین (PDF) دانلود ابزارها

🆕 به‌روزرسانی ۲۴ شهریور ۱۴۰۵، همراه با انتشار نسخه‌ی ۲٫۰٫۴ برنامه.

بخش‌های ۷ و ۸ حالا همان عددهایی را دارند که شبیه‌ساز واقعاً با آن‌ها بازی می‌کند: ناظرِ گیرکردنِ ۱۵ ثانیه‌ای، جابه‌جایی تصادفی با فاصله‌ی دستِ‌کم ۶ کاشی، جریمه‌ی پله‌ای −۵ / −۱۰ / −۱۲ کاشی، باتری صفری که به‌جای مردن با ۱۵٪ سرعت می‌خزد، و آبی که ۱۰٪ باتری هزینه دارد. نسخه‌ی ۲٫۰٫۴ را دانلود کنید تا کپی شما با همین قوانین یکی باشد.

تقدم اسناد رسمی: این صفحه یک روایت خوانا و کامل از قوانین است، اما مرجع نهایی کتابچه‌ی رسمی قوانین (PDF) و کتابچه‌ی قوانین (PDF) است. اگر جایی میان این صفحه و اسناد رسمی تفاوتی دیده شد، اسناد رسمی ملاک عمل هستند.

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

۱. هدف لیگ

لیگ خانه هوشمند (Smart Home League) یک بستر آموزشی و رقابتی زیر چتر مسابقات جهانی FIRA است. هدف آن، پیش از هر چیز، آموزش و ایجاد انگیزه است: دانش‌آموز به‌جای حفظ‌کردن مفاهیم، یک مسئله‌ی واقعی را حل می‌کند — چطور یک ربات جاروبرقی می‌تواند تنها با داده‌ی سنسورها یک خانه‌ی ناشناخته را بگردد و تمیز کند؟

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

۲. رده‌های سنی و شرایط شرکت

لیگ سه بخش سنی دارد. هر تیم فقط در یک رده ثبت‌نام می‌کند و شرایط سنی باید برای همه‌ی اعضای تیم برقرار باشد:

ردهمحدوده‌ی سنیکد پایهربات چه چیزی می‌تواند داشته باشد
First Step (قدم اول) زیر ۱۳ سال — بدون حداقل سن خود برنامه بازش می‌کند ریگ ثابت: سه سنسور فاصله‌ی جلو، حلقه‌ی ضربه‌گیر و سنسور رنگ
U14 زیر ۱۴ سال خود برنامه بازش می‌کند همان ریگ به‌علاوه‌ی قطب‌نما؛ خود تیم ربات را از فروشگاه قطعات می‌بندد
U19 ۱۴ سال به بالا خود برنامه بازش می‌کند فروشگاه قطعات کاملاً باز است — سنسور موقعیت و goto() — به‌علاوه‌ی باتری و پد شارژ بی‌سیم؛ امکان زبان‌های پیشرفته‌تر

رده‌ی First Step عمداً حداقل سن ندارد؛ هدف این است که کودکی که تازه با مفهوم حلقه و شرط آشنا شده هم بتواند بدون ترس وارد شود. رده‌ی U19 سخت‌ترین رده است و امکانات بیشتری (موقعیت‌یابی دقیق و مدیریت انرژی) در اختیار تیم می‌گذارد و در عوض انتظار الگوریتم پیچیده‌تری دارد.

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

۳. زبان برنامه‌نویسی

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

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

۴. پلتفرم و نرم‌افزار مسابقه

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

۴-۱. چه چیزی باید نصب شود

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

همه‌ی دانلودها یک‌جا

مراحل کامل نصب — با تصویر، برای ویندوز و مک، همراه با خطاهای رایج — در آموزش نصب برنامه آمده است.

۴-۲. داخل برنامه چه چیزی هست؟

کجاکاربرد
صفحه‌ی آماده‌سازیرده، خانه، مدت مسابقه، نام و رنگ تیم‌ها — و کنترل‌های داور
ویرایشگر کدپایتونِ ربات شما، با کد پایه‌ی همان رده که از قبل باز شده است
ابزارهای کمکیراهنمای پرسش‌وپاسخ و بلوک‌ها که برای دانش‌آموزی که هنوز نمی‌تواند تایپ کند، پایتونِ واقعی می‌نویسند
درس‌ها و کتابچه‌ی قوانینداخل خود برنامه: کارت قوانین هر رده (📖)، جزوه‌های درسی، و RULES.md با همه‌ی عددهایی که داور با آن‌ها کار می‌کند
هیچ نصبی لازم نیستخانه، ربات، سنسورها و خودِ پایتون همه داخل همان یک فایلی هستند که دانلود کرده‌اید
نمایی از دنیای مسابقه‌ی لیگ خانه هوشمند در برنامه‌ی لیگ — خانه با اتاق‌ها، مبلمان و ربات جاروبرقی

۵. ربات و سنسورهای آن

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

حسکارکردFirst StepU14U19
سه سنسور فاصله‌ی جلو
frontleft · front · frontright
فاصله تا دیوار و مبلمان در زاویه‌های ‎+۳۰°، ۰° و ‎−۳۰°، تا ۲ متر
حلقه‌ی ضربه‌گیر
bumperfront · bumperback
می‌گوید به چیزی خورده‌ای و اینکه جلو بوده یا عقب
سنسور رنگ
color
کف جلوی ربات را می‌خواند: سفیدِ تمیز، رنگ خودت، رنگ حریف، فرش یا فرشِ نشانه‌ی در
آگاهی از اتاق
room · clean1…clean5
الان در کدام‌یک از شش ناحیه‌ای، و چند درصد هر اتاق رنگ توست
قطب‌نما
heading
ربات رو به کدام طرف است، ۰ تا ۳۵۹ درجه
سنسور موقعیت
x · y · goto() · distto()
ربات واقعاً کجاست، و رفتن به یک مختصات — خانواده‌ی GPS فقط با این قطعه کار می‌کند
باتری و پد شارژ
battery · dockx · docky
مدیریت انرژی، و جای ثابت پد شارژ بی‌سیم

در First Step ریگ سنسورها ثابت است و تنها انتخاب تیم، رنگ تیم است. تیم‌های U14 خودشان ربات را از فروشگاه قطعات با بودجه‌ی ۲۰۰ اعتبار می‌بندند — قطب‌نما مال آن‌هاست، سنسور موقعیت نه. در U19 فروشگاه کاملاً باز است.

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

۶. ساختار بازی و زمین مسابقه

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

۷. سیستم باتری و شارژ بی‌سیم (ویژه‌ی U19)

در رده‌ی U19 ربات با باتری کار می‌کند و انرژی‌اش در طول مسابقه کم می‌شود. پد شارژ بی‌سیم جای ثابتی در خانه دارد و مختصاتش در شروع مسابقه به هر دو ربات داده می‌شود (dockx و docky) — هیچ چیز پنهان نیست. عددهایی که شبیه‌ساز واقعاً با آن‌ها کار می‌کند این‌هاست:

موردمقدار
یک شارژ کامل۱۰۰٪ یعنی حدود ۶۰ ثانیه رانندگی با تمام گاز (تقریباً ۱٫۷٪ در ثانیه)
ایستادن بی‌حرکتیک‌چهارم مصرف رانندگی — حدود ۰٫۴۲٪ در ثانیه
روی پد۲۵٪ در ثانیه — از صفر تا صد در چهار ثانیه
باتری صفرربات را نمی‌کشد: با ۱۵٪ سرعت می‌خزد و هنوز می‌تواند خودش را به پد برساند. خودِ خزیدن مجازات است — بیشترِ مسابقه را می‌خورد
آب روی زمینفقط U19. لکه‌ها از ثانیه‌ی اول روی زمین دیده می‌شوند؛ هر ورود تازه ۱۰٪ باتری هزینه دارد و هیچ کاشی‌ای کم نمی‌کند. ایستادن داخل آب دوباره حساب نمی‌شود

ساعتِ «گیر کردن» داور در حال شارژ متوقف است — ولی به‌محض رسیدن باتری به ۱۰۰٪ دوباره راه می‌افتد؛ پس چادر زدن روی پد راهبرد نیست: شارژ کن و برو. انتظار کنار پدی که ربات دیگری روی آن است، «صف» است و گیر کردن حساب نمی‌شود.

تخلیه‌ی زباله در این فصل خاموش است. ایستگاه تخلیه در خانه‌های مسابقه گذاشته نمی‌شود، مخزن هرگز پر نمی‌شود و dumpx / dumpy برابر -1 خوانده می‌شوند. این بند برای فصلی که دوباره روشن شود در آیین‌نامه می‌ماند.

پس تیم‌های U19 علاوه بر تمیزکاری یک مسئله‌ی دوم هم دارند: مدیریت انرژی. کِی تمیزکاری را رها کنیم و برویم شارژ؟ آیا این دور زدن به‌صرفه است یا چند کاشی دیگر؟ تخمین سرانگشتی سفرِ برگشت distto(dockx, docky) / 25 درصد شارژ است — به‌علاوه‌ی یک حاشیه‌ی چاق، چون مسیر واقعی هرگز خط مستقیم نیست. همین تصمیم‌ها تفاوت تیم‌های خوب و عالی را می‌سازد.

۸. امتیازدهی — معیار پاکیزگی

امتیاز هر تیم بر پایه‌ی میزان تمیزکاری محاسبه می‌شود. دو مؤلفه‌ی اصلی در ارزیابی نقش دارند:

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

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

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

۸-۱. صاحب کاشی کیست؟ «لمس آخر»

هر کاشی کفی که ربات از رویش رد شود رنگ آن ربات را می‌گیرد و یک امتیاز دارد، و لمسِ آخر صاحب کاشی است: رد شدن از روی کاشی‌ای که حریف تمیز کرده، آن را از او پس می‌گیرد. این «دزدی» در هر سه رده روشن است و هیچ رده‌ای خاموشش نمی‌کند. فرش‌ها و کفِ زیر مبلمان اصلاً شمرده نمی‌شوند و تابلوی امتیاز درصد تمیزی خانه را هم نشان می‌دهد.

۸-۲. گیر کردن، جابه‌جایی و جریمه‌ی پله‌ای

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

رویدادشرطهزینه
گیر کردن (خودکار) ربات ۱۵ ثانیه داخل دایره‌ای به شعاع ۰٫۸۵ متر بماند — دور خود چرخیدن هم گیر کردن است به یک کاشی آزادِ تصادفی در هر جای خانه، دستِ‌کم ۶ کاشی دورتر از جای گیرکردن منتقل می‌شود و جریمه‌ی زیر را می‌دهد
جابه‌جایی توسط داور دکمه‌ی Relocate در منوی ☰ دقیقاً همان جریمه — جابه‌جاییِ بدون جریمه وجود ندارد

جریمه پله‌ای است و برای هر ربات جدا شمرده می‌شود: بار اول ۵ کاشی، بار دوم ۱۰ کاشی، از بار سوم به بعد ۱۲ کاشی. جریمه همیشه از کفِ رنگ‌شده‌ی خود تیم برداشته می‌شود — به همان تعداد کاشی دوباره سفید می‌شود — و اگر تیم آن‌قدر کاشی نداشته باشد، فقط همان‌قدر که دارد از دست می‌دهد. تصادفی و دور بودنِ نقطه‌ی فرود عمدی است: جابه‌جایی نباید هرگز مثل یک آسانسور مجانی به جای بهتر باشد.

دو استثنا ناظرِ گیرکردن را منصف نگه می‌دارد: رباتِ در حال شارژ گیرکرده نیست (ساعت تا پر شدن باتری متوقف است) و باتری خالی هم گیر کردن نیست — رباتی که نمی‌تواند حرکت کند جابه‌جا و جریمه نمی‌شود.

۸-۳. تساوی مسابقه را تمام نمی‌کند

اگر با تمام شدن ساعت امتیازها برابر باشد، بازی ادامه پیدا می‌کند: اول +۱۰ ثانیه، بعد هر بار +۵ ثانیه — شش نوبت، جمعاً ۳۵ ثانیه. اگر باز هم برابر بود، نتیجه تساوی ثبت می‌شود. بازی‌های حذفی مساوی نمی‌شوند: بعد از این نردبان، با «مرگ ناگهانی» هر بار +۵ ثانیه ادامه می‌یابند تا یک تیم جلو بیفتد. دکمه‌ی «پایان بازی» داور مسابقه را همان لحظه تمام می‌کند و هیچ وقت اضافه‌ای نمی‌دهد.

۹. بازی جوانمردانه

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

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

۱۰. آیین‌نامه‌ی اخلاقی و اصالت کد

کدی که هر تیم ارسال می‌کند باید اثر خودِ اعضای تیم باشد. سرقت ادبی و کپی‌برداری از کد تیم‌های دیگر یا کد آماده‌ی اینترنت ممنوع است و با آن مطابق بند ۹ برخورد می‌شود.

۱۱. اختیارات برگزارکنندگان

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

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

۱۲. چک‌لیست روز مسابقه

پیش از شروع، این مسیر را یک بار کامل روی کامپیوتر خودتان تمرین کنید تا روز مسابقه غافلگیر نشوید:

  1. نرم‌افزار برنامه‌ی لیگ نصب و باز است.
  2. رده‌ی خود را انتخاب کنید.
  3. کد تیم را در حالت مسابقه بارگذاری کنید و مطمئن شوید خط وضعیتِ کد همان فایلی را نشان می‌دهد که می‌خواستید.
  4. یک بار شروع را بزنید و یک مسابقه‌ی کامل را بدون خطای کد ببینید.
  5. یک نسخه‌ی پشتیبان از کد نهایی روی حافظه‌ی جانبی یا فضای ابری داشته باشید.

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

۱۳. اسناد رسمی

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

Rulebook (English PDF) کتابچه‌ی قوانین (PDF)

پایگاه دانش و اطلاعیه‌های رسمی لیگ نیز در سایت smarthomerobot.ir و درس‌های خود لیگ در smarthomeleague.ir/lessons در دسترس است.

۱۴. ارتباط با کمیته‌ی فنی

هر سؤالی درباره‌ی قوانین، ابهام در یک بند، یا مشکل فنی در اجرای شبیه‌ساز دارید، از این مسیرها بپرسید:

کانالمناسب براینشانی
تلگراماطلاعیه‌ها، ثبت‌نام، پرسش‌های عمومیt.me/firasmarthome
دیسکوردپرسش‌های فنی و رفع اشکال کدdiscord.gg/Pf4ND7bbHR
سایت لیگقوانین، درس‌ها و همه‌ی دانلودهاsmarthomeleague.ir

سؤالات پرتکرار درباره‌ی قوانین

قوانین رسمی مسابقات لیگ خانه هوشمند را از کجا بگیرم؟

متن کامل و خوانای قوانین در همین صفحه آمده است. اسناد رسمی هم در دسترس‌اند: کتابچه‌ی قوانین (PDF). در صورت هرگونه تفاوت میان این صفحه و اسناد رسمی، اسناد رسمی ملاک عمل هستند.

برای شرکت در لیگ چه سنی لازم است؟

سه رده وجود دارد: First Step برای زیر ۱۳ سال که هیچ حداقل سنی ندارد، U14 برای زیر ۱۴ سال و U19 برای ۱۴ سال به بالا. شرایط سنی باید برای همه‌ی اعضای تیم برقرار باشد.

آیا می‌توان به‌جای پایتون از زبان دیگری استفاده کرد؟

زبان رسمی لیگ پایتون است و کد پایه‌ی همه‌ی رده‌ها با پایتون نوشته شده است. در رده‌ی U19 امکان استفاده از روش‌های پیشرفته‌تر هم وجود دارد، اما پیش از استفاده باید با کمیته‌ی فنی هماهنگ شود.

نقشه‌ی خانه در روز مسابقه از قبل اعلام می‌شود؟

خیر. در هر راند یک نقشه‌ی متفاوت از خانه استفاده می‌شود تا الگوریتم عمومی سنجیده شود، نه حفظ‌کردن یک مسیر ثابت. در رده‌ی U19 خانه ثابت است ولی جای اشیا و موانع میان راندها جابه‌جا می‌شود.

امتیاز مسابقه چطور محاسبه می‌شود؟

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

استفاده از کد آماده‌ی اینترنت یا کد تیم دیگر مجاز است؟

خیر. کد ارسالی هر تیم باید اثر خودِ اعضای تیم باشد. کپی‌برداری و سرقت ادبی ممنوع است و می‌تواند تا حذف کامل تیم پیش برود. استفاده از کنترلرهای نمونه‌ی داخل پروژه به‌عنوان نقطه‌ی شروع آزاد است.

اگر با تصمیم داور یا کمیته‌ی فنی اختلاف نظر داشتم چه کنم؟

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

برای شرکت در مسابقه باید سخت‌افزار بخرم؟

خیر. کل مسابقه در برنامه‌ی لیگ انجام می‌شود و تنها به یک کامپیوتر معمولی ویندوز یا مک نیاز دارید.

قدم بعدی

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

دانلود ابزارها و شروع جوایز و رتبه‌های نهایی لیگ ربات جاروبرقی چیست؟ Rules in English