正如我在前面的问题中提到的,我正在编写一个迷宫求解应用程序,以帮助我了解更多理论CS主题,可以演化一组规则(由布尔值处理),以便通过迷宫找到一个好的解决方案。即使我没有真正的神经网络工作知识(没有正式的理论CS教育),但我想用神经网络加强它。在对这个主题进行一些阅读之后,我发现可以使用神经网络来训练基因组以改善结果。比方说,我有一个基因组(基因组),如用神经网络和/或钢筋学习提高我的GA
1 0 0 1 0 1 0 1 0 1 1 1 0 0...
我怎么会用一个神经网络(我假设MLP?),以培养和提高我的基因?
除了这一点,我对神经网络一无所知我一直在寻找实施某种形式的钢筋学习,使用我的迷宫矩阵(2维数组),虽然我有点卡在什么下面的算法从我又想:
(从http://people.revoledu.com/kardi/tutorial/ReinforcementLearning/Q-Learning-Algorithm.htm)
1. Set parameter , and environment reward matrix R
2. Initialize matrix Q as zero matrix
3. For each episode:
* Select random initial state
* Do while not reach goal state
o Select one among all possible actions for the current state
o Using this possible action, consider to go to the next state
o Get maximum Q value of this next state based on all possible actions
o Compute
o Set the next state as the current state
End Do
End For
对我来说正好是实施奖励矩阵R,什么Q矩阵,并获得Q值的大问题。我为我的迷宫和枚举状态使用多维数组来处理每一个动作。这将如何用于Q-Learning算法?
如果有人能够帮助解释我需要做什么来实现以下内容,最好在Java中,尽管C#也会很好,但可能有一些源代码示例,这将是值得赞赏的。
这是一个非常复杂的课题。你在谈论的事情通常在AI的大学课程的整个学期中讨论。我不确定他们是否可以在Stackoverflow问题中得到很好的解答,但我肯定会对看到人们尝试的感兴趣。我从来没有把我的头围绕在这些算法中。 – 2010-03-17 14:57:12
另一方面,如果你愿意花费一些现金在关于这个主题的真正好的教科书上,那么我可以建议:http://www.amazon.com/Artificial-Intelligence-Modern-Approach-3rd/dp/0136042597/ref = sr_1_1?ie = UTF8&s = books&qid = 1268837913&sr = 1-1 – 2010-03-17 15:12:38
我已经瞥了几遍这本书,虽然它提供了一个体面的理论背景, 。如果有人能够写出一个基本的解决方案,根据我提供的信息来工作,即使它是伪代码,我也会很高兴尝试并实施它并给出一个可接受的答案。 – AlexT 2010-03-17 15:41:51