пятница, 16 марта 2012 г.

Робот для состязаний: Робот "Ван Гог". Часть II

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

Т.е. если мы имеем робота захватишего кубик в одной из четырех разных позициях на поле, то робот должен уметь проложить маршрут из каждой позции к каждому столбику. Иными словами, в общем случае, робот должен хранить в памяти 16 различных маршрутов (пока вопрос, что маршруты по больше части очень похожи, не рассматриваем).





Аналогичным образом, возникает необходимость, после того как кубик надет на один из столбиков, переместиться к следующему кубику. Если принять во внимание, что за первым кубиком ехать не надо – очевидно, что его легче взять сразу после старта робота, то от каждого из 4 столбиков робот должен знать маршрут до каждого из 3 столбиков.




Соответственно, возникает вопрос, а можно ли как-то упростить поведение робота, так чтобы не закладывать в робота 29 различных маршрутов (1 маршрут для первого кубика + 16 + 12)?

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



  • Первый маршрут – прямо и налево (зеленая и красная стрелочки)
  • Второй маршрут – прямо и направо (зеленая и синяя стрелочки)

Очевидно, что маршрутов возврата от столбиков к центру тоже два.

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



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

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

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

Related Posts Plugin for WordPress, Blogger...