Студия "Марсоход"

Материал из StemCamp
Перейти к: навигация, поиск

​​​​​​​Название лаборатории

​​​​​​​​​​​​​​RTENOTITLE

Руководители лаборатории

Личман Илья Владимирович

Научные руководители

Лобарев Андрей Игоревич,

Лях Татьяна Викторовна, ИАиЭ СО РАН

Анонс

В лаборатории вам предстоит познакомиться с алгоритмами исследования лабиринта и алгоритмами решения задач на клеточные автоматы, выбора оптимального направления движения робота в условиях недостаточной информации, построения алгоритмов, устойчивых к активности роботов-соперников.

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

Короткая формулировка задачи: Написать программу для виртуального робота, способного быстро обходить 
произвольный связный лабиринт с некоторой целью. 

Развернутая формулировка:
На поле NxN, в каждой клетке которого есть яблоко, забрасывают k роботов (как правило, от разных команд). Цель роботов: собрать как можно больше
яблок за минимальное время (игра заканчивается, когда на поле кончились яблоки или после совершения M ходов). 

В начальный момент времени робот может знать, а может и не знать свое  местоположение. В каждый следующий момент времени робот может совершить 
одно из пяти действий: попытаться сдвинуться в одном из четырёх направлений или остаться на прежнем месте. После каждого хода робот узнаёт 
результат своего хода ("прошёл + собрал яблоко", "прошёл на пустое поле", "не прошёл, потому что упёрся в стенку", "не прошёл, потому что столкнулся 
с другим роботом"). Соответственно, если несколько роботов хотят одновременно зайти на одно поле, то все они получают последний статус. 
Если один хочет остаться на своём месте, а другой хочет зайти на его поле, то первый получает ответ "прошёл на пустое поле", а второй -  "не прошёл, 
потому что столкнулся с другим роботом". Если один робот из клетки успешно выходит, а другой в неё в этот же ход хочет зайти, то ему это удастся.  

Уровень сложности:** (средний)

 Результат работы

21 Августа.

  1. Командообразующая игра "Фильм-фильм-фильм"
  2. Вводная лекция по теории игр
  3. Решение задач на клеточные автоматы
  4. Игра-демонстрация выбора наилучшей стратегии для движения робота 
  5. Разработка алгоритма для робота. Робот движется по квадратному лабиринту размером NxN клеток. Робот ровно один, он знает свои координаты. Цель - как можно быстрее обойти все клетки.

22 августа

  1. Вводная лекция по языку Java
  2. Вводная лекция по движку роботов "Марсоход"
  3. Создание на языке Java алгоритмов движения робота по квадратному лабиринту размером NxN клеток с целью обойти все клетки за минимальное количество шагов. Учащимися были разработаны и закодированы несколько версий алгоримтов "Змейка" и "Лестница". 
  4. Разработка сюжета и концепции выпускного трейлера студии

 Марсокодеры.JPG

Робот.jpeg

Змейка.jpg

23 августа

  1. Создание на языке Java алгоритмов движения робота по квадратному лабиринту размером NxN клеток. В лабиринте без колонн несколько роботов конкурируют друг с другом, своих начальных координат не знают. Цель - собрать яблок больше, чем противники.
  2. Турнир роботов-собирателей яблок. От каждого учащегося было представлено по роботу.

Предметные знания и навыки, которые получат участники в ходе работы

Теория игр, построение стратегии, проверка гипотез.

Требования к участникам

Увлечение программированием (знания программирования на уровне школьного курса общеобразовательной школы будет недостаточно). 

Материалы для подготовки  учащимся

Материалы для работы

https://ru.wikipedia.org/wiki/Теория_игр

http://javarush.ru

https://ru.wikipedia.org/wiki/Клеточный_автомат

https://ru.wikipedia.org/wiki/Ним_(игра)

Работа студии

Сегодня 21 августа 2016 года. Греча вкусная была. Мы решали неплохие математические задачи. Шишки собирали. Настя от дедушки ушла, от бабушки ушла, и от нас ушла.

DSC 3729.JPG


Танцули.jpg

Шло 22 августа. Мы уже сбились с счёту сколько мы здесь. Мы работали сверх своих возможностей. Не было времени посмотреть на время. На обед была твердая, горелая, как сидушки нашего стула, картошка. Код писался, яблоки собирались, дети убивались,  ноутбуки ломались. Нашу комнату настигли тяжелые времена. При создании трейлера наступил творческий кризис. Запасы печенек подходили к концу. Мы готовились к худшему...

Комната марсоходов.jpg​​​​​​​


23 августа. Мы позавтракали и отправились на Марс. Там мы страдали собирали марсоход. В ходе его теста пострадало аж 1 яблоко. Так же у нас была битва роботов. 

На ужин было очень много кефира. Слишком много. Чересчур. Аж 4 стакана. Теперь болит живот.

Фильм еще долго делать.