گروه فناوری اطلاعات شریف

گروه فناوری اطلاعات شریف

گزارش یازدهمین دوره مسابقات برنامه نویسی چالش های حوزه فناوری اطلاعات کشور | ICT CHALLENGE 11

توضیحات

یازدهمین دوره مسابقات برنامه نویسی ICT CHALLENGE 11 برگزار شد
گزارش یازدهمین دوره مسابقات برنامه نویسی چالش های حوزه فناوری اطلاعات کشور | ICT CHALLENGE 11

یازدهمین دوره مسابقات برنامه نویسی چالش های حوزه فناوری اطلاعات کشور |  ICT CHALLENGE 11 به تاریخ 31 تیر و 1 مرداد سال 1405 و در محل دانشگاه صنعتی شریف برگزار شد.

این مسابقات توسط گروه فناوری اطلاعات شریف | Sharif ICT Group  تحت نظر پژوهشگاه فناوری اطلاعات و ارتباطات پیشرفته دانشگاه صنعتی شریف و با حمایت معاونت علمی و فناوری ریاست جمهوری با هدف حمایت از شناسایی برنامه نویسان با استعداد و توانمند از کل کشور، ایجاد خودباوری و اعتماد به نفس، ایجاد اشتغال و جلوگیری از فرار مغزها برگزار شد.

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

در صفحات بعد رتبه بندی تیم ها، چالش های مسابقه؛ تصاویر و فیلم ها و … به تفکیک خدمتتان ارائه شده است.

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

چالش های اصلی مسابقات

سوال اول:

درخواست‌های تسهیلات بانکی

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

سناریوی مسئله
هر درخواست وام باید قبل از تأیید نهایی از چند مرحله عبور کند. هر بانک Workflow مخصوص به خود را دارد.

ثبت درخواست

اعتبارسنجی

بررسی تقلب

اعتبارسنجی مالی

تأیید مدیر

تأیید نهایی

نمونه Workflow بانک‌ها

بانک اول
Validation

Fraud Check

Credit Check

Approve

بانک دوم
Validation

AML

Fraud Check

Guarantor Check

Credit Check

Approve

بانک سوم
Validation

Manager Approval

Approve

اهداف پروژه
ثبت درخواست وام
اجرای Workflow
نمایش وضعیت فعلی
نمایش تاریخچه مراحل
ذخیره دائمی اطلاعات
جلوگیری از اجرای تکراری پردازش

قابلیت‌های الزامی
REST API
Docker
Persistence
ثبت تاریخچه
مدیریت وضعیت
اجرای Workflow

موارد خارج از محدوده
Authentication
Authorization
Frontend
Email
SMS
Kafka
RabbitMQ
Kubernetes
Cloud Deployment
CI/CD
Microservice

ذینفع: داتین

سوال دوم:

چالش توسعه مدل یادگیری ماشین جهت شناسایی بدافزارهای اسکریپتی

داده‌های مسابقه
با گسترش استفاده از زبان‌های اسکریپتی مانند JavaScript، PowerShell، VBScript، Python، Batch و سایر زبان‌های مشابه، مهاجمان نیز به‌طور گسترده از این فایل‌ها برای توسعه بدافزار استفاده می‌کنند. تشخیص خودکار این نوع بدافزارها یکی از مسائل مهم امنیت سایبری است. هدف این چالش، طراحی و پیاده‌سازی یک سامانه هوشمند برای تشخیص فایل‌های اسکریپتی مخرب از فایل‌های سالم با استفاده از روش‌های یادگیری ماشین، یادگیری عمیق یا سایر روش‌های مبتنی بر داده است.

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

فایل‌های سالم (Benign)
فایل‌های مخرب (Malware)
نمونه زبان‌های موجود در مجموعه داده
JavaScript (.js) PowerShell (.ps1) VBScript (.vbs)
Batch (.bat) Python (.py) سایر زبان‌های اسکریپتی
تقسیم‌بندی مجموعه داده
Training Set
Validation Set
Test Set (برچسب‌های این مجموعه منتشر نخواهد شد)
خروجی مورد انتظار
مدل باید برای هر فایل موجود در Test Set تنها یک مقدار دودویی تولید کند:

0 : فایل‌های سالم (Benign)
1 : فایل‌های مخرب (Malware)
خروجی باید صرفاً شامل مقدار 0 یا 1 و نام فایل Test Set باشد و ارسال احتمال، امتیاز اطمینان (Confidence Score) یا سایر مقادیر پیوسته مجاز نیست.

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

ساختار پروژه
پروژه ارسالی باید شامل ساختار زیر باشد:

TeamName.zip

├── source/
├── train.py
├── predict.py
├── model/
├── requirements.txt
├── README.md
└── predictions.csv

ذینفع: امن پرداز

سوال سوم:

دستیار هوشمند پیشنهاد و تعیین اهلیت محصولات و خدمات بانکی

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

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

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

برای هر مشتری، دستیار باید دو خروجی اصلی تولید کند:

۱. پیشنهاد شخصی‌سازی‌شده
مشخص کند کدام محصولات و خدمات بانکی، متناسب با شرایط همان مشتری برای ارائه پیشنهاد می‌شوند.

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

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

ذینفع: شرکت داده و اعتبار سنجی تجارت ایرانیان (داتا)

سوال چهارم:

محصول تشخیص مغایرت و تعارض بخشنامه‌ها

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

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

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

خروجی مورد انتظار
سامانه باید برای هر بخشنامه جدید و همچنین برای کل مجموعه بخشنامه‌ها، گزارشی تحلیلی شامل موارد زیر تولید کند:

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

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

تناقض جزئی
تنها بخشی از احکام یا بندهای دو بخشنامه با یکدیگر در تعارض هستند.

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

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

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

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

ذینفع: گروه فناوری اطلاعات شریف

سوال پنجم:

چالش هوشمند تخصیص انبار ایکامرس

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

صورت مسئله (Problem Statement)
هدف، طراحی و پیاده‌سازی یک سرویس هوشمند تخصیص انبار (Warehouse Routing Service) است که پس از ثبت سفارش در پلتفرم تجارت الکترونیک، تصمیم بگیرد کالا از کدام انبار تأمین شود تا هزینه‌های لجستیک به حداقل برسد. (بررسی SKU و موجودی، محل و زمان مورد انتظار دریافت مشتری و …)

ذینفع: هلدینگ دکا لجستیک

چالش های اصلی مسابقات

هوش مصنوعی و امنیت و محرمانگی
آموزش و یادگیری هوشمند
فین تک و پرداخت هوشمند

سخنرانی های کلیدی

سخنرانی دکتر کاویانی در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
دکتر حمید رضا ربیعی در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
سخنرانی مسعود زند وکیلی در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
سخنرانی امید مطهری‌فر در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
سخنرانی رامین مراد جم در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
سخنرانی میرحسین آقاجری در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
سخنرانی احسان مدرسی در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
سخنرانی احسان احسانی مقدم سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13

تیم‌های برتر

سومین دوره مسابقات برنامه نویسی ICT Challenge 11 در تاریخ 31 تیر و 1 مرداد در محل دانشگاه صنعتی شریف برگزار شد. در این مسابقات 250 نفر درقالب 110 تیم به رقابت پرداختند و در نهایت سه تیم برتر به شرح زیر معرفی شدند.

سه تیم برتر یازدهمین دوره مسابقات برنامه نویسی چالش های فناوری کشور معرفی شدند

🥇مقام اول
تیم Rusted Automata
  • ابوالفضل انصاری، متولد 1384 از شهر کرج، کارشناسی مهندسی کامپیوتر دانشگاه بین‌المللی امام خمینی قزوین
  • پویان دلیوندانی متولد 1383، از شهر تهران، کارشناسی مهندسی کامپیوتر دانشگاه بین‌المللی امام خمینی قزوین
  • امیرحسین نوروزی متولد 1383، از شهر کرج، کارشناسی مهندسی کامپیوتر دانشگاه بین‌المللی امام خمینی قزوین

سه تیم برتر یازدهمین دوره مسابقات برنامه نویسی چالش های فناوری کشور معرفی شدند

🥈مقام دوم
تیم  Lornux
  • رضا محمدنیا | متولد 1385 | از شهر خرم آباد | کارشناسی مهندسی کامپیوتر دانشگاه لرستان
  • حسین محمدی کیا | متولد 1384 | شهر خرم آباد | کارشناسی مهندسی کامپیوتر دانشگاه لرستان
  • امیرطاها نعمتی | متولد 1385 | شهر خرم آباد | کارشناسی مهندسی کامپیوتر دانشگاه لرستان

سه تیم برتر یازدهمین دوره مسابقات برنامه نویسی چالش های فناوری کشور معرفی شدند

🥉مقام سوم
تیم Novo
  • میثم رزاقی | متولد 1384 | شهر کرج | کارشناسی علوم کامپیوتر دانشگاه آزاد واحد کرج
  • محمد مهدی اسکندری | متولد 1384 | شهر کرج | کارشناسی علوم کامپیوتر دانشگاه آزاد واحد کرج
  • کاردو صیدی | متولد 1384 | شهر کرج | دیپلم ریاضی-فیزیک دبیرستان بهمن
  • پارسا محمدپور نامی | متولد 1385 | شهر کرج | کارشناسی علوم کامپیوتر دانشگاه آزاد واحد کرج

ارائه تیم های برتر

ارائه تیم تدویر در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم Psycho Lab در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم Syntax در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم لارویگو در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم DXCode در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم Bug Makers در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم Nova در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم DevX در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم پند در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13
ارائه تیم AZ در سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13

رتبه‌بندی تیم‌ها

ویدیوها

سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13 | آذر 1404 | دانشگاه شریف
مصاحبه شبکه خبر با محمد علی روزی طلب مدیر گروه فناوری اطلاعات شریف
پوشش خبری صدا و سیما از سیزدهمین ماراتون برنامه نویسی تلفن همراه کشور | MPM13

تصاویر

ویدیوها

کلیپ رسمی یازدهمین دوره مسابقات برنامه نویسی چالش های حوزه فناوری اطلاعات کشور | ICT CHALLENGE 11
پوشش خبری صدا و سیما از یازدهمین دوره مسابقات برنامه نویسی ICT CHALLENGE
مصاحبه محمد علی روزی طلب با خبر گزاری صدا سیما در مورد مسابقات برنامه نویسی ICT CHALLENGE
سخنرانی محمد علی روزی طلب در یازدهمین دوره مسابقات برنامه نویسی ICT CHALLENGE
سخنرانی سجاد نفیسی (گروه امن پرداز) در یازدهمین دوره مسابقات برنامه نویسی ICT CHALLENGE
سخنرانی هومن پشنگیان (هلدینگ دکا) در یازدهمین دوره مسابقات برنامه نویسی ICT CHALLENGE
سخنرانی فاطمه سلطانی (مجموعه داتین) در یازدهمین دوره مسابقات برنامه نویسی ICT CHALLENGE

حامیان

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