2048 (проект): различия между версиями

Материал из Wiki - Факультет компьютерных наук
Перейти к навигации Перейти к поиску
Нет описания правки
 
(не показано 18 промежуточных версий 4 участников)
Строка 2: Строка 2:
|name=2048
|name=2048
|mentor=Алексей Гусаков
|mentor=Алексей Гусаков
|mentor_login={{URLENCODE:{{REVISIONUSER}}|WIKI}}
|mentor_login={{URLENCODE:Gusakov|WIKI}}
|semester=Весна 2015
|semester=Весна 2015
|course=1
|course=1
|summer=
|summer=
|categorize=yes
|categorize=yes
|is_archived=yes
}}
}}


Строка 18: Строка 19:
* Альфа-бета отсечениям
* Альфа-бета отсечениям
* Monte Carlo tree search для оценки позиций
* Monte Carlo tree search для оценки позиций
* Хакать javascript
* Делать плагин для браузера, который общается с С++ программой


=== Какие начальные требования? ===
=== Какие начальные требования? ===
Строка 24: Строка 25:


=== Какие будут использоваться технологии? ===
=== Какие будут использоваться технологии? ===
* git, github
* gtest
* gtest
* javascript


=== Темы вводных занятий ===
=== Темы вводных занятий ===
Строка 37: Строка 38:


=== Критерии оценки ===
=== Критерии оценки ===
Должен получиться бот, который с неплохой вероятностью получает в одном из квадратов:
Должен получиться бот, который с неплохой вероятностью (скажем, 10%) получает в одном из квадратов:


* удв - 4096
* 7 - 4096
* хор - 8192
* 9 - 8192
* отл - 16384
 
+1 балл за попытку использования машинного обучения или за достижение >= 16342 любым способом

Текущая версия от 07:33, 20 октября 2015

Ментор Алексей Гусаков
Учебный семестр Весна 2015
Учебный курс 1-й курс


Внимание! Данный проект находится в архиве и реализован не будет.

Что это за проект?

2048 - игра, известная многим офисным работникам. В неё можно играть онлайн, например, здесь http://go2048.com/

Цель проекта - создать бота, который будет набирать больше, чем могут люди.

Чему вы научитесь?

  • Переборным решениям для игровых задач
  • Альфа-бета отсечениям
  • Monte Carlo tree search для оценки позиций
  • Делать плагин для браузера, который общается с С++ программой

Какие начальные требования?

Программирование на C/C++ (в рамках прослушанного курса)

Какие будут использоваться технологии?

  • gtest
  • javascript

Темы вводных занятий

  • Основы теории игр
  • Перебор с возвратом, альфа-бета отсечения
  • Monte Carlo tree search

Направления развития

  • Использование машинного обучения при оценке позиций
  • Более серьёзные хаки в джава-скрипте - предсказание последующих ходов сервера

Критерии оценки

Должен получиться бот, который с неплохой вероятностью (скажем, 10%) получает в одном из квадратов:

  • 7 - 4096
  • 9 - 8192

+1 балл за попытку использования машинного обучения или за достижение >= 16342 любым способом