Какой алгоритм машинного обучения подходит для стрельбы по баскетболу? - PullRequest
1 голос
/ 13 февраля 2012

Мы делаем робота, который стреляет в баскетбольные мячи.

Из изображения и наших знаний об угле камеры и размерах цели (цели покрыты световозвращающей лентой), мы знаем, как далеко мы находимся, X и Y (расстояние Z больше или меньше)

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

  1. Скорость для отправки в канон
  2. Горизонтальный наклон
  3. Вертикальный наклон

Что это за алгоритм машинного обучения и как вы его тренируете?

Ответы [ 2 ]

4 голосов
/ 13 февраля 2012

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

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

Одним из возможных вариантов использования машинного обучения здесь может быть запоминание и экстраполяция этих смещений.Функциональный аппроксиматор (такой как нейронная сеть) может быть использован для изучения смещений из опыта.Как только ваш метод поиска удастся поместить мяч в обруч, используйте его в качестве учебного примера для аппроксиматора, который учится сопоставлять то, что физическая модель говорит использовать со смещениями, из-за которых выполнялся выстрел.Затем для следующего снимка (из любой позиции) будет использоваться аппроксиматор функции, чтобы угадать смещения для использования.Если этот выстрел отсутствует, повторяйте поиск, пока не будут найдены правильные смещения.Обновите аппроксиматор функции, промойте и повторите.Кроме того, вероятно, было бы полезно, если бы ваш аппроксиматор функции был инициализирован таким образом, чтобы изначально всегда указывалось, что смещения не применяются - в конце концов, лучшее первое предположение должно заключаться в том, чтобы просто использовать то, что физическая модель говорит вам использовать.

1 голос
/ 13 февраля 2012

Я бы рекомендовал подход к обучению с подкреплением.Это будет медленно;поэтому, возможно, вы могли бы инициализировать решение с вашей собственной оценкой (базовая физика) и уточнить ее с помощью обучения с подкреплением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...