2011-02-04 46 views
2

我正在为Android创建一个有机体模拟器,所以我猜算法理想情况下会在Java中。我意识到YouTube上有一整套关于机器学习的课程,但我根本没有时间来完成整个课程,我认为就我的目的而言,解决方案可能非常简单。任何人都可以帮助我创建一个“宠物”应用程序的简单机器学习算法

生物体将主要通过触摸屏进行交互,或者即使通过麦克风或加速计与其交互,算法中的输入将主要用于协调不同肢体的位置。我认为对随机行为采取“责骂”或“奖励”机制是不雅观的,所以我想避免这种情况。因此,跟踪运动中的一般方向或模式,并在足够频率时重复这些方向或模式将成为目标。

说实话,我不太确定这是多么的难以完成,但我希望听到任何反馈意见,以便知道在我能实施它之前还有多少研究。

编辑:这是遗传算法吗?问题是我不知道如何衡量成功或不成功的进化。编辑2:好吧,我会尽量添加尽可能多的细节。目前应用程序仍处于概念阶段,但我只是想知道该算法的难度。所以我在Processing中构建它,这真的只是Java。有机体由肢体组成,它们之间有固定的距离,但可以独立于中心片移动。四肢自由移动,并会随机找到随机点以缓解疼痛。生物有一个中心附属物,它也有x和y坐标,并且每个外部肢体都会相对于它移动。用户可以通过在触摸屏上用拖动手动移动附件或中心部件来与生物体进行交互。当生物体与之互动时,算法将被使用,因为从随机数中学习没有意义。所以我想这个算法会考虑中心片的x和y坐标,每个附件都有自己独立学习的算法版本。例如,如果用户不断地拖动有机体到触摸屏的右侧,那么当它不与其进行交互时,它可能更多地被该地点吸引。我希望澄清一点。

+0

你能更具体地说明你想要什么吗? – jzd 2011-02-04 02:44:09

回答

2

我认为对于你的情况,你应该尝试坐下来,写下来,你可以看到什么是要预测

  • 观测变量变量的变量:位置附属物,一个特定多少次与互动,持续多久,...
  • 要预测变量:这附属物将与下一次进行交互,...

一旦你的输入变量和输出变量,你可以尝试请阅读标准机器学习算法列表。 Weka(Java),Rapidminer,KNIME ...都是库和独立工具。试着把你的问题放在可用的工具上,看看你是否比机会做得更好。

如果你是,调整它的参数。如果你的表现不如机会好,你应该问你的数据挖掘/机器学习的朋友。他们会知道最适合你的问题。

,可能会影响你的算法选择其它的事情:

  • 是否有隐藏的状态?
  • 变量是否独立?
1

我看到它的方式,所有你需要做的是一个数组,例如,附属物坐标,那么就平均出来,并把它朝着那个点在屏幕上移动

相关问题