среда, 6 февраля 2013 г.

Робот для состязаний: "Батик". Часть III

Что ж, можно считать WRO-марафон официально начавшимся - оргкомитет World Robot Olympiad выложил финальные правила на своем сайте.
Поэтому надо посмотреть, что же теперь изменилось, относительно предыдущих заметок (часть I, часть II), посвященных состязанию "Батик", публиковавшихся на блоге.

Итак, условно основные изменения можно разделить на две части: уточнение в области сортировки и изменения правила финиширования.

1. Область сортировки.
Правила теперь следует трактовать так, что судья перед стартом определяет в каком порядке робот должен выкладывать кубики в сортировочные корзины. При этом, команды сами закладывают кубики в робота - исходя из конструкции могут внутрь, а могут на поле. Порядок закладки не важен. Важно то, что оценка выполнения задания будет выполнятся по тому, в каком порядке робот в итоге выложит кубики. Если ровно в том же порядке, что и задавался судьями, то команда получает дополнительные 10 очков. Порядок корзин при этом задается тоже случайным образом.

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

Решая простую комбинаторную задачу различных положений корзин трех цветов можно увидеть, что раскладок всего шесть. Проще всего это показать на трехзначных числах, кодируя каждый цвет цифрой: 1 - зеленый, 2 - синий, 3 - красный. Тогда возможные сочетания это:

123132
213231
312321

Следовательно, программирование сортировки кубиков по корзинам можно было бы значительно упростить, если сделать так, чтобы на старте робот каким-то образом узнал их расположение. Правила явно ограничивают вариант с введением данных каким бы то ни было образом после запуска программы, так что на это сразу рассчитывать не стоит. Но остается открытым вопрос: а можно ли выбрать одну из шести программ, каждая из которых реализует алгоритм сортировки кубиков для соответствующего расположения корзин.

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

2. Барьеры и финиш.


Область финиша теперь разделена стенкой на две части. Это сделано для того, чтобы явно определять робот прошел по барьерам во время финиша или нет. Поэтому и черная линия с установленными барьерами теперь смещена и находится почти вплотную к центральной стене таким образом, что от линии до стены - 14 см.

На самом деле, это значительное упрощение - роботу теперь не обязательно двигаться вдоль линии - он может двигаться вдоль стены. А эта задача, как показывает практика, может решаться чисто механическим способом - просто установите ролики вдоль соответствующего борта робота и задайте ему минимальное отклонение вправо при движении вперед. Ролики будут упираться в борт, контролируя перемещение робота (его колесной базы) на одном и том же расстоянии от стены.

Комментариев нет:

Отправить комментарий

Related Posts Plugin for WordPress, Blogger...