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

انتشار: · نویسنده: زدتک

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

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

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

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

چهار مفهوم کلیدی

عامل (Agent)

همان موجودی که تصمیم می‌گیرد؛ در این لیگ، خودروی مجازی شما.

محیط (Environment)

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

حالت و عمل (State و Action)

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

پاداش و سیاست (Reward و Policy)

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

خودروی خودران مجازی چطور یاد می‌گیرد؟

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

هنر طراحی تابع پاداش

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

یک نمونه‌ی ساده از منطق پاداش به زبان پایتون (به‌عنوان ایده، نه کد رسمی مسابقه):

def reward(distance_from_center, track_width, on_track, speed):
    if not on_track:
        return -1.0
    closeness = 1.0 - (distance_from_center / (track_width / 2))
    return max(closeness, 0.0) * (0.5 + 0.5 * speed)

تعادل بین کاوش و بهره‌برداری

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

چطور نتیجه‌ی آموزش را تحلیل کنیم؟

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

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

چه پیش‌نیازهایی لازم است؟

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

چک‌لیست آمادگی لیگ خودروی خودران

چرا این لیگ برای آینده‌ی شما مهم است؟

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

سؤالات متداول

یادگیری تقویتی برای نوجوانان خیلی سخت نیست؟

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

تفاوت یادگیری تقویتی با برنامه‌نویسی معمولی ربات چیست؟

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

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

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

آیا برای این لیگ به کارت گرافیک قوی یا خودروی واقعی نیاز دارم؟

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

چطور در لیگ خودروی خودران زدتک شرکت کنم؟

در zedtech.ir ثبت‌نام کنید، لیگ خودروی خودران را انتخاب کنید، کد رهگیری را ذخیره کنید و مدرک شناسایی را برای احراز هویت بارگذاری کنید.

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

ثبت‌نام و انتخاب لیگ