python - 使用机器学习进行简单的机器人控制

标签 python machine-learning scikit-learn robotics

我想通过机器学习改进我的小机器人。

到目前为止,它在其主要功能中使用简单的 while 和 if then 决策来充当割草机器人。

我的想法是为此目的使用 SKLearn。

请帮助我找到正确的第一步。

我有一些传感器可以了解外面的世界:

World ={yaw, pan, tilt, distance_to_front_obstacle, ground_color}

我有一个状态向量

状态 = {left_motor, right_motor, cutter_motor}

控制机器人的 3 个 Actor 。

我想建立一个输入和输出值的数据集来教 sklearn 期望的行为,之后输入值应该为 Actor 提供正确的输出值。

一个例子:如果电机开启并且机器人应该向前移动但距离计显示恒定值,则机器人似乎被阻挡了。现在它应该决定后退并转向另一个方向。

首先,您认为 sklearn 可以做到这一点吗?其次,我应该如何开始?

我的(简单的)机器人控制代码在这里:http://github.com/bgewehr/RPiMower

请帮助我完成第一步!

最佳答案

我建议使用 Reinforcement Learning .这里有Q-Learning的教程这很适合您的问题。

如果你想要 python 中的代码,现在我认为 scikit-learn 中没有 Q-learning 的实现。但是,我可以为您提供一些您可以使用的 Python 代码示例:1 , 23 .

另请记住,强化学习旨在最大化所有 future 奖励的总和。你必须关注一般观点。

祝你好运:-)

关于python - 使用机器学习进行简单的机器人控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34565916/

相关文章:

python - Bokeh 在 GridPlot 中叠加多个绘图对象

python - 移位插值没有给出预期的行为

python - 如何将 Hermite 多项式与随机梯度下降 (SGD) 结合使用?

matlab - TreeBagger() (MATLAB) 以及训练集和测试集上不同数量的变量

python - 在 sklearn NearestNeighbor 中使用每个邻居一次

python - scikit 中大型数据集的 ICA 在线学习

python - Keras 和交叉验证

python - python中构造函数/析构函数中的线程锁定/解锁

python - SQLAlchemy 自引用 parent_id 困境

python - 是否可以安装 sklearn 管道的单独部分?