神经网络与RC船

时间:2016-06-26 18:51:45

标签: neural-network robotics

在我开始制作任何东西之前,只是一个理论 我一直对NN很感兴趣,并且和他们一起做了一些较小的控制台项目,但这次我想在现实生活中使用它们。

让我们假设我家里有一个大水池 - 我有一个小型遥控船,配备了非常灵敏和准确的GPS和一个小型计算机,里面有一些SD卡模块来加载/保存神经网络数据。

该船有1x伺服(控制转弯)和1x马达向前移动。

我希望这艘船能够学会先导航到单个航点,然后使用该网络在多个航点之间导航。

我正在考虑以下输入

  • 与WPT的距离
  • WPT方向

输出

  • 电机油门
  • 伺服转弯

在训练期间,我无法弄清楚我是否应该使用监督方法(rc船,我可以在开始时控制它),或非监督学习?

问题

在我开始深入研究代码之前,我宁愿向专业人士寻求建议。

  1. a)甚至可以在这样的项目中使用NN吗?
  2. 如果是,我应该做有监督的学习(显示网络 如何导航到单个wpt这么多次的网络 学习它然后使用这个网络自动导航到 其他wpt?)
  3. 输入/输出 - 需要其他任何东西才能使其正常工作?
  4. 非常感谢您对此的任何意见。

    使用概念验证项目进行更新

    因为我无法得到答案,我尝试通过使用两个输入来学习网络巡航到下一个航路点:

    1. 当前船角[0,360]
    2. 下一个航点的角度[0,360]
    3. 一个输出

      1. 舵角[-1,1]
      2. 以下是结果,学习并不需要太多时间。

        • 黄色方块 - 训练船
        • 蓝盒神经网络驱动船

        https://youtu.be/_FDWSBYj7WM

1 个答案:

答案 0 :(得分:0)

我不确定这是否是神经网络的正确任务。应用强化学习(如Q-Learning)听起来像是一项任务。

https://en.wikipedia.org/wiki/Reinforcement_learning

https://en.wikipedia.org/wiki/Q-learning

如果您还想使用人工神经网络,您可以将它们用作函数逼近器。我认为Google使用他们的Alpha Go机器人做到了这一点。