2012-02-13 60 views
1

我们制作的机器人可以将篮球投篮。什么机器学习算法适合射击篮球?

从图像和我们的摄像机的角度和目标的尺寸(各项指标均涂有逆反射带),我们知道的知识,我们是多么的遥远,X和Y(距离为Z,更多或更少)

此被送入的机器学习算法,该算法应吐出

  1. 速度被发送到佳能
  2. 水平倾斜
  3. 垂直倾斜

这是一种什么样的机器学习算法,你将如何训练它?

+4

如果你知道你当前的位置,目标位置,为什么你需要机器学习?你可以计算速度和倾斜 – Archeg 2012-02-13 15:18:02

+0

@Archeg:我们只知道我们相对于目标的当前位置。机器学习算法的要点是确定输入如何与输出相关(例如,球的阻力是什么等) – Glycan 2012-02-13 15:22:43

+0

当您不知道环境变量会影响结果时,机器学习非常有用。或者如果难以对它们进行硬编码。在你的情况下,我仍然看不到它们。你需要检查风的强度,是否有可能有一些障碍,或者你应该使用不同的质量和表面不同的球?机器学习是一个伟大的工具,但速度很慢,从来不够聪明。所以很高兴思考,为什么你需要它。 – Archeg 2012-02-13 15:36:37

回答

1

我会推荐强化学习方法。它会很慢;所以也许你可以用你自己的估计(基础物理)初始化解决方案,并通过强化学习来完善它。

+0

你到底建议什么?你可以说得更详细点吗? (对不起,我对机器学习非常基本掌握) – Glycan 2012-02-13 15:29:43

+1

试着向上看[SARSA](http://en.wikipedia.org/wiki/SARSA) – 2012-02-14 09:32:32

4

机器学习可能不适合此任务。至少,不是本身。使用物理。你应该能够从第一学期的物理教科书中得到一个粗略的公式,尽管你需要决定你是瞄准中间还是后面的板子。

你的物理公式应该告诉你使用的角度和力,但是你的系统模型会有一些不准确的地方。不同的球可能具有不同的质量,并且您可能不想明确说明空气阻力等等。根据先前拍摄的距离有多大,可以通过偏移量空间进行搜索。 Mencel说,搜索方法的选择取决于你 - 模拟退火可以很好地工作。

这里可能用于机器学习的一个可能用途是记住和推断这些偏移量。函数逼近器(如神经网络)可以用来从经验中学习偏移量。一旦您的搜索方法成功将球放入篮框中,将其用作训练示例,以便学习从物理模型所使用的映射到导致射击的偏移。然后,对于下一个镜头(来自任何位置),函数逼近器将用于猜测要使用的偏移量。如果该镜头未命中,请重复搜索,直到找到正确的偏移。更新函数近似器,冲洗并重复。另外,如果你的函数逼近器初始化时最初总是说不应用偏移,那么它可能是有益的,毕竟,最好的首次猜测应该是使用物理模型告诉你使用的东西。

+0

大多数物理学给我们的是一个很粗略的近似 - 除非你知道一个带有烧伤痕迹的小泡沫篮球的阻力? 神经网络究竟会如何工作? – Glycan 2012-02-13 16:15:11