路径规划之Backward search and forward search

6 篇文章 2 订阅
5 篇文章 1 订阅

应该翻译成正向搜索和反向搜索?

反正意思就是backward指从目标节点到起始节点的搜索,forward指从起始节点到目标节点的搜索

常见的比如A* 就是forward search,D* 是backward search。那么问题来了,两种方法肯定是有优劣的。

我们简单的用下面这个例子描述问题

这里写图片描述

如果正向搜索显然会因为很多分支导致效率下降,但是如果反向搜索会得到如下结果,访问的节点数会少很多

这里写图片描述

现在我们这样来定义这个问题,f(v,d)表示一组节点的集合,其中节点距离节点v的距离都小于距离d。现在假设起始节点为s,目标节点为t。
那么,当f(s,d) < f(t,d) forward search更好,也就是起始节点附近满足距离d的节点数小于目标节点附近满足距离d的节点数
当f(s,d) > f(t,d) backward search更好


这里我联想到RRT(Rapidly-exploring random tree)算法,也顺便记一笔

在我们迭代RRT的时候,我们定义的节点是可以有多个子节点,但只有一个父节点。当迭代条件停止(迭代数达到最大或者树中的节点距离目标点已经足够近了)。我们从目标点附近往回开始backward search就可以找到整条路径

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
forward-loss-backward-update 是一种在神经网络中常用的训练方法。它由以下四个步骤组成: 首先是"forward"(前向传播)步骤。在该步骤中,输入数据会通过网络的各个层级进行计算和传递。每一层都会执行一些权重计算和激活函数的操作,将结果传递给下一层。最终,前向传播会生成网络的输出。 接下来是"loss"(损失计算)步骤。该步骤主要用于计算网络的预测结果与真实标签之间的差距,即损失函数。损失函数可以是交叉熵、平方误差等。通过计算损失,我们可以得到一个衡量网络预测准确性的值。 然后是"backward"(反向传播)步骤。在该步骤中,反向传播算法会利用损失函数的梯度信息来计算每个参数的梯度。这些梯度指示了网络中各个参数对最终损失函数的贡献程度。通过反向传播,我们可以得到网络中各个参数的梯度值。 最后是"update"(参数更新)步骤。在该步骤中,我们使用梯度下降法或其他优化算法来更新网络中的参数。通过使用计算得到的梯度信息,我们可以调整网络中的参数,使其向着最小化损失函数的方向更新。 总结起来,forward-loss-backward-update 是一种有效的神经网络训练方法。通过前向传播计算网络输出,计算损失函数评估网络性能,利用反向传播计算参数梯度,最后使用参数更新方法来优化网络性能。这个过程迭代进行,使得网络能够逐渐学习到更好的表示和预测能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值