🎯要点

  1. 使用小规模磁态训练模型,并在二维三维爱德华兹-安德森模型上使用四种算法测试:贪婪算法、模拟退火算法、并行回火算法和本模型。
  2. 将磁态基态搜索视为马尔可夫决策过程 (MDP),学习最优策略以累积其最大回报。
  3. 设计图神经网络式编码器表征状态和动作。
  4. 模型求解非确定性多项式时间问题。

🍁磁态分析

Python和MATLAB自旋玻璃投资组合神经网络广义方程

%%{init:{'gitGraph':{'mainBranchName':'自旋玻璃'},'themeVariables':{'commitLabelBackground': 'None','commitLabelFontSize':'30px'}}}%%
  gitGraph
   commit id:"数学"
   commit id:"凝聚态物理学"
   branch "Python和MATLAB自旋玻璃投资组合神经网络广义方程"
   branch "Python和C++及MATLAB低温磁态机器学习模型"
   checkout "Python和MATLAB自旋玻璃投资组合神经网络广义方程"
   commit id:"模拟"
   commit id:"热图"
   commit id:"量子近似优化算法"
   checkout "Python和C++及MATLAB低温磁态机器学习模型"
   commit id:"小规模磁态训练模型"
   commit id:"贪婪算法"
   commit id:"模拟退火算法"
   commit id:"并行回火算法"
   commit id:"图神经网络"
   commit id:"机器学习"
   checkout "自旋玻璃"
   merge "Python和MATLAB自旋玻璃投资组合神经网络广义方程"
   merge "Python和C++及MATLAB低温磁态机器学习模型"

🍪语言内容分比

pie title 语言分比
 "Python":90
 "C/C++":70
 "MATLAB":30
pie title 内容分比
 "算法模型":90
 "凝聚态物理学":80
 "数学":50
 "磁性行为":30
 "爱德华兹-安德森模型":20
 "自旋玻璃":30

✂️梗概

🍇Python马尔可夫决策过程策略选择

我们将要实现的马尔可夫决策过程是一个离散时间随机控制过程。它提供了一个数学框架,用于在结果部分随机、部分受决策者控制的情况下对决策进行建模。马尔可夫决策过程是一种对顺序决策问题进行建模的工具,其中决策者以顺序方式与环境进行交互。

假设问题是:我们有一个由 12 个状态组成的世界,1 个障碍初始状态(状态 5)和 2 个结束状态(状态 10、11)。对于每个状态,我们都有一个奖励,我们希望找到实施最佳奖励累积的策略。对于每个状态,奖励为 -0.04(r=-0.4)。对于状态 10,奖励为 1,对于结束状态 11,奖励为 -1。

$$ \begin{array}{|l|l|l|l|} \hline 1 & 4 & 7 & 10 \\ \hline 2 & 5 & 8 & 11 \\ \hline 3 & 6 & 9 & 12 \\ \hline \end{array} $$

对于所处的每一个状态,我们都想找到最好的行动,是向北(N)、向南(S)、向东(E)还是向西(W)走。基本上,我们希望以最短的路到达状态 10。首先,让我们创建一个世界类,它将在我们的世界中用于解决问题。这个对象可以帮助我们声明世界、绘制世界并绘制我们发现的移动世界的策略。方法 plot_world 绘制了我们上面看到的图像,将使用值迭代方法代替策略迭代。

使用策略迭代求解马尔可夫决策过程,其中 γ = 0.9 和 r = 0.04。我们使用均匀随机策略初始化了策略迭代算法。并且分别使用 World 类的绘制值和绘制策略函数,将每次迭代步骤后的值函数和策略绘制成网格世界的两个不同图形,我们得到了以下结果:

初次迭代:网格世界值