我需要求解一个简单的低维 Hamilton-Jacobi-Bellman 方程。
是否有使用有限差分方案以数值方式执行此操作的简单指南?我发现了一些讨论高阶方法或讨论数值方案的理论性质的研究文章,但没有什么能真正帮助我作为一个没有学术抱负的新手来实现一个实际的算法。我真的不关心运行时间,并且对于需要一整天才能获得 5% 相对准确度的东西完全没问题。
当我尝试一个简单的正向欧拉方法时,我得到了奇怪的振荡,即使我试图评估上游的导数。上游是什么取决于哈密顿量的解,当然,它本身需要对导数进行评估;因此,这里有一些循环,我想我弄错了。或者,我可能搞砸了边界条件。
作为我需要解决的一个例子:
我在有限的二维数组,(使用)上尝试了以下迭代:
(对于每个数组索引)解决哈密顿最小化问题以获得和。
(对于每个数组索引)定义
(对于每个数组索引)定义通过在上游方向差分
在边界处,我使用了,即每当上游方法要求我访问不存在的条目时,我都会评估下游。