分支限界法与回溯法的横向比较

分支限界法与回溯法的相同点:都是在问题的解空间上搜索问题解的算法,都是一种既带有系统性又带有跳跃性的搜索算法
不同点:
		1、求解目标不同
		2、搜索方式不同
		3、对扩展节点的扩展方式不同
		4、存储空间的要求不同

回溯法解题的算法框架:
(1)递归回溯 (2)迭代回溯
(3)子集树算法框架 (4)排列树算法框架

分支限界法的算法框架:
(1)队列式分支限界法 (2)优先队列式分支限界法

回溯法的求解目标是找出解空间中满足约束条件的所有解,而分支限界法的求解目标则是找出解空间中满足约束条件的一个解(或是在满足约束条件的解中找出是某一目标函数值达到极大或极小的解,即某种意义下的最优解)。

回溯法以深度优先的方式搜索解空间树,而分支限界法则以广度优先或以最小耗度优先的方式搜索解空间树(常见的解空间树:子集树排列树)(分治法以最大效益优先搜索)。

搜索解空间树时,分支限界法与回溯法的主要区别在于他们对当前扩展结点采取的扩展方式不同。

分支限界法:每一个活结点只有一次机会成为扩展结点,一旦成为扩展结点,就一次性产生所有儿子结点,并舍弃不可行解或非最优解的子结点。其余儿子结点加入活结点表。此后,从活动结点表中取出下一结点成为当前扩展结点,并重复以上过程(从活结点表中取下一扩展结点的不同方式导致不同的分支限界法,常见的两种:队列式优先队列式)。

回溯法:当探索到某一结点时,要先判断该结点是否包含问题的解,如果包含,就从该结点出发继续探索下去,如果该结点不包含问题的解,则逐层向其祖先结点回溯。

存储空间:分支限界法的存储空间比回溯法大得多,因此当内存容量有限时,回溯法成功的可能性更大

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值