مروری بر تاریخچه مسابقات ACM و روند برگزاری آن در ایران

یک‌شنبه ۲۱ آذر ۱۳۹۵ - ۱۱:۳۰
مطالعه 5 دقیقه
مطابق سنت هرساله، دانشگاه صنعتی شریف مسابقات منطقه‌ای ACM را برای انتخاب تیم‌های برتر غرب آسیا، ابتدای دی‌ماه برگزار می‌کند.
تبلیغات

هرساله مسابقاتی چندمرحله‌ای با عنوان ACM ICPC یا ACM International Collegeiate Programming Contest میان تیم‌های برنامه‌نویسی از دانشگاه‌های مختلف در سطح جهان برگزار می‌شود و IBM حمایت از مرحله‌ی نهایی آن را به عهده دارد. تیم‌هایی که در مرحله‌ی نهایی شرکت می‌کنند، باید در مسابقات منطقه‌ای و قاره‌ای حضور یابند و پس از رسیدن به مقام قهرمانی راهی مسابقه‌ی فینال شوند. همان‌طور که از نام این مسابقات می‌توان برداشت کرد، رقابت‌های ACM ICPC، زیر نظر انجمن ماشین‌های محاسباتی (Association for computing Machinary) بر اساس قوانین و روش‌های ICPC برگزار می‌شود.

مسابقات ACM

ریشه‌ی برگزاری مسابقات ACM ICPC به سال ۱۹۷۰ و برگزاری مسابقات در دانشگاه A&M تگزاس برمی‌گردد که البته در آن زمان خبری از مشارکت ACM در برگزاری مسابقه‌ی مورد نظر نبود. اولین دور از رقابت‌ها با نام مسابقات قهرمانی برنامه‌نویسی بین دانشگاهی تگزاس نام‌گذاری شد و هر دانشگاه با در اختیار داشتن یک تیم پنج‌نفره در این رقابت‌ شرکت کرد. در این رقابت‌ زبان برنامه‌نویسی فورترن برای حل مسئله‌ها مورد استفاده قرار گرفت. در اولین دور از مسابقات که دانشگاه تگزاس میزبان آن بود، تیم دانشگاه هیوستون با حل هر سه مسئله عنوان اول را به نام خود ثبت کرد، حال آنکه سایر تیم‌ها موفق نشدند سه مسئله‌ی تعیین‌شده را در زمان مقرر حل کنند و  از این‌رو هیچ تیمی موفق به کسب رتبه‌ی دوم و سوم در این رقابت‌ نشد. رقابت‌های برنامه‌نویسی از سال ۱۹۷۷ به این‌سو با همکاری ACM برگزار می‌شود. ACM را باید یک انجمن علمی در رشته‌ی کامپیوتر خواند که گستره‌ای بین‌المللی دارد. این انجمن علمی ریشه‌دار در تاریخ فناوری، در سال ۱۹۴۷ تأسیس شد که از این‌رو بزرگ‌ترین انجمن علمی و آموزشی موجود در حوزه‌ی رایانه است. بر اساس آخرین آمارها، این انجمن در سال ۲۰۱۱ بیش از صد هزار عضو داشت.

البته باید به این نکته اشاره کرد که این رقابت‌ها، حتی پس از مشارکت ACM هنوز گستردگی امروز خود را پیدا نکرده بود و  در فاصله‌ی سال‌های ۱۹۷۷ تا ۱۹۸۹ فقط با حضور چهار تیم از دانشگاه‌های مختلف آمریکا و کانادا برگزار می‌شد. در سال ۱۹۸۹ دانشگاه بیلور به‌عنوان مرکز اصلی برگزاری رقابت‌ فینال برگزیده شد و پیش از برگزاری فینال، رقابت‌هایی تحت نظر ACM در سایر کشور‌ها و قاره‌های جهان برگزار شدند تا فینالیست‌ها راهی آمریکا شوند و مسابقه‌ی فینال را برگزار کنند. به این ترتیب بود که ICPC با حضور ACM به یک رقابت جهانی بدل شد. برای افزایش دسترسی به رقابت‌های ACM، برگزارکنندگان تعداد اعضای هر تیم را به سه نفر کاهش دادند.

مسابقات ACM

این روزها می‌توان نام IBM را به‌عنوان حامی اصلی این رقابت‌ها مشاهده کرد؛ این کمپانی از سال ۱۹۹۷ حمایت از رقابت‌های ACM ICPC را بر عهده دارد. با حضور IBM مشارکت در این رقابت‌ها بیش از ۱۶ برابر افزایش یافت. در سال ۲۰۱۵ میلادی بیش از ۴۰,۲۶۶ دانشجو از ۲۷۳۶ دانشگاه در بیش از ۱۰۲ کشور به‌صورت محلی در رقابت‌های انتخابی شرکت کردند.مسابقه‌ی فینال این ACM ICPC یک گردهمایی چهارروزه است که در آخرین دوره‌ی آن در سال ۲۰۱۶، ۱۲۸ تیم از سراسر دنیا شرکت داشتند.

مسابقه‌ی برنامه‌نویسی ای‌سی‌ام در منطقه‌ی غرب آسیا از سال ۱۳۷۸ در تهران و توسط دانشگاه صنعتی شریف برگزار می‌شود که امسال کافه بازار مانند سال گذشته به‌عنوان حامی اصلی این رقابت‌ها در کنار دانشگاه صنعتی شریف قرار گرفته است.

مسابقات ACM

در جریان برگزاری رقابت ACM، معمولا در رقابت‌هایی که در ایران برگزار می‌شود، آغاز رقابت با فرستادن بادکنک‌هایی به هوا اعلام می‌شود. همان‌طور که در لوگوی رقابت‌های ACM ICPC نیز مشاهده می‌کنید، بادکنک یکی از نمادهای اصلی در لوگوی رقابت‌ها است. طی هر رقابت معمولا بیش از ۱۰ تا ۱۱ مسئله ارائه می‌شود. در مسابقات جهانی با حل اولین مسئله توسط هر یک از تیم‌ها، یک بادکنک طلایی به میز تیم متصل می‌شود. در مسابقه‌ی فینال و مسابقه‌ی انتخابی برگزارشده در ایران، هر تیمی که زودتر از سایر تیم‌ها مسئله‌ای را حل کند، در آخر جایزه‌ی ویژه‌ای دریافت می‌کند.

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

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

مسابقات ACM

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

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

تبلیغات
داغ‌ترین مطالب روز

نظرات

تبلیغات