参考答案和解析
正确答案: (1)针对所给问题,定义问题的解空间(对解进行编码);
(2)确定易于搜索的解空间结构(按树或图组织解);
(3)以广度优先或以最小耗费(最大收益)优先的方式搜索解空间,并在搜索过程中用剪枝函数避免无效搜索。
更多“用分支限界法设计算法的步骤是什么?”相关问题
  • 第1题:

    从活结点表中选择下一个扩展结点的不同方式将导致不同的分支限界法,以下除()之外都是最常见的方式。

    • A、队列式分支限界法
    • B、优先队列式分支限界法
    • C、栈式分支限界法
    • D、FIFO分支限界法

    正确答案:C

  • 第2题:

    常见的两种分支限界法的算法框架是什么?


    正确答案: (1)队列式(FIFO)分支限界法:按照队列先进先出(FIFO)原则选取下一个节点为扩展节点。
    (2)优先队列式分支限界法:按照优先队列中规定的优先级选取优先级最高的节点成为当前扩展节点。

  • 第3题:

    在分支限界算法中,根据从活结点表中选择下一扩展结点的不同方式可有几种常用分类,以下()描述最为准确。

    • A、采用FIFO队列的队列式分支限界法
    • B、采用最小值堆的优先队列式分支限界法
    • C、采用最大值堆的优先队列式分支限界法
    • D、以上都常用,针对具体问题可以选择采用其中某种更为合适的方式

    正确答案:D

  • 第4题:

    简述分支限界法及其算法思想。


    正确答案: 这是一种用于求解组合优化问题的排除非解的搜索算法。类似于回溯法,分枝定界法在搜索解空间时,也经常使用树形结构来组织解空间。然而与回溯法不同的是,回溯算法使用深度优先方法搜索树结构,而分枝定界一般用宽度优先或最小耗费方法来搜索这些树。因此,可以很容易比较回溯法与分枝定界法的异同。相对而言,分枝定界算法的解空间比回溯法大得多,因此当内存容量有限时,回溯法成功的可能性更大。
    算法思想:分枝限界(branch and bound)是另一种系统地搜索解空间的方法,它与回溯法的主要区别在于对E-节点的扩充方式。每个活节点有且仅有一次机会变成E-节点。当一个节点变为E-节点时,则生成从该节点移动一步即可到达的所有新节点。在生成的节点中,抛弃那些不可能导出(最优)可行解的节点,其余节点加入活节点表,然后从表中选择一个节点作为下一个E-节点。从活节点表中取出所选择的节点并进行扩充,直到找到解或活动表为空,扩充过程才结束。
    有两种常用的方法可用来选择下一个E-节点(虽然也可能存在其他的方法):
    1)先进先出(FIFO)即从活节点表中取出节点的顺序与加入节点的顺序相同,因此活
    节点表的性质与队列相同。
    2)(优先队列)最小耗费或最大收益法在这种模式中,每个节点都有一个对应的耗费或收益。如果查找一个具有最小耗费的解,则活节点表可用最小堆来建立,下一个E-节点就是具有最小耗费的活节点;如果希望搜索一个具有最大收益的解,则可用最大堆来构造活节点表,下一个E-节点是具有最大收益的活节点。

  • 第5题:

    下列算法中不能解决0/1背包问题的是()

    • A、贪心法
    • B、动态规划
    • C、回溯法
    • D、分支限界法

    正确答案:A

  • 第6题:

    常见的两种分支限界法为()

    • A、广度优先分支限界法与深度优先分支限界法
    • B、队列式(FIFO)分支限界法与堆栈式分支限界法
    • C、排列树法与子集树法
    • D、队列式(FIFO)分支限界法与优先队列式分支限界法

    正确答案:D

  • 第7题:

    问答题
    分支限界法的搜索策略是什么?

    正确答案: 在扩展结点处,先生成其所有的儿子结点(分支),然后再从当前的活结点表中选择下一个扩展结点。为了有效地选择下一扩展结点,加速搜索的进程,在每一个活结点处,计算一个函数值(限界),并根据函数值,从当前活结点表中选择一个最有利的结点作为扩展结点,使搜索朝着解空间上有最优解的分支推进,以便尽快地找出一个最优解。
    解析: 暂无解析

  • 第8题:

    单选题
    在分支限界算法中,根据从活结点表中选择下一扩展结点的不同方式可有几种常用分类,以下()描述最为准确。
    A

    采用FIFO队列的队列式分支限界法

    B

    采用最小值堆的优先队列式分支限界法

    C

    采用最大值堆的优先队列式分支限界法

    D

    以上都常用,针对具体问题可以选择采用其中某种更为合适的方式


    正确答案: B
    解析: 暂无解析

  • 第9题:

    填空题
    分支限界法主要有()分支限界法和()分支限界法。

    正确答案: 队列式(FIFO),优先队列式
    解析: 暂无解析

  • 第10题:

    问答题
    简述分支限界法及其算法思想。

    正确答案: 这是一种用于求解组合优化问题的排除非解的搜索算法。类似于回溯法,分枝定界法在搜索解空间时,也经常使用树形结构来组织解空间。然而与回溯法不同的是,回溯算法使用深度优先方法搜索树结构,而分枝定界一般用宽度优先或最小耗费方法来搜索这些树。因此,可以很容易比较回溯法与分枝定界法的异同。相对而言,分枝定界算法的解空间比回溯法大得多,因此当内存容量有限时,回溯法成功的可能性更大。
    算法思想:分枝限界(branch and bound)是另一种系统地搜索解空间的方法,它与回溯法的主要区别在于对E-节点的扩充方式。每个活节点有且仅有一次机会变成E-节点。当一个节点变为E-节点时,则生成从该节点移动一步即可到达的所有新节点。在生成的节点中,抛弃那些不可能导出(最优)可行解的节点,其余节点加入活节点表,然后从表中选择一个节点作为下一个E-节点。从活节点表中取出所选择的节点并进行扩充,直到找到解或活动表为空,扩充过程才结束。
    有两种常用的方法可用来选择下一个E-节点(虽然也可能存在其他的方法):
    1)先进先出(FIFO)即从活节点表中取出节点的顺序与加入节点的顺序相同,因此活
    节点表的性质与队列相同。
    2)(优先队列)最小耗费或最大收益法在这种模式中,每个节点都有一个对应的耗费或收益。如果查找一个具有最小耗费的解,则活节点表可用最小堆来建立,下一个E-节点就是具有最小耗费的活节点;如果希望搜索一个具有最大收益的解,则可用最大堆来构造活节点表,下一个E-节点是具有最大收益的活节点。
    解析: 暂无解析

  • 第11题:

    填空题
    分支限界法是一种既带有()又带有()的搜索算法。

    正确答案: 系统性,跳跃性
    解析: 暂无解析

  • 第12题:

    问答题
    常见的两种分支限界法的算法框架是什么?

    正确答案: (1)队列式(FIFO)分支限界法:按照队列先进先出(FIFO)原则选取下一个节点为扩展节点。
    (2)优先队列式分支限界法:按照优先队列中规定的优先级选取优先级最高的节点成为当前扩展节点。
    解析: 暂无解析

  • 第13题:

    试比较回溯法与分支限界算法,分别谈谈这两个算法比较适合的问题?


    正确答案: 不同点:求解目标,搜索方式,空间消耗。
    回溯法的求解目标是找出解空间中满足约束条件的所有解,而分支限界法的求解目标则是找出满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。
    搜索方式:回溯法以深度优先的方式搜索解空间,而分支限界法则以广度优先或以最小耗费优先的方式搜索解空间。
    回溯法:以深度优先方式系统搜索问题解的算法为回溯法,适合解组合数较大的问题。
    分支限界法适合解决大量离散最优化的问题。

  • 第14题:

    分支限界法的搜索策略是什么?


    正确答案:在扩展结点处,先生成其所有的儿子结点(分支),然后再从当前的活结点表中选择下一个扩展结点。为了有效地选择下一扩展结点,加速搜索的进程,在每一个活结点处,计算一个函数值(限界),并根据函数值,从当前活结点表中选择一个最有利的结点作为扩展结点,使搜索朝着解空间上有最优解的分支推进,以便尽快地找出一个最优解。

  • 第15题:

    回溯法与分支限界法的区别是什么?


    正确答案:两者都是问题的解空间树上搜索问题解的算法。回溯法与分支限界法的的求解目标不同,回溯法的求解目标是找出解空间树中满足约束条件的所有解,而分支限界法的求解目标是找出解空间树中满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。

  • 第16题:

    分支限界法是一种既带有()又带有()的搜索算法。


    正确答案:系统性;跳跃性

  • 第17题:

    分支限界法主要有()分支限界法和()分支限界法。


    正确答案:队列式(FIFO);优先队列式

  • 第18题:

    应用Johnson法则的流水作业调度采用的算法是()

    • A、贪心算法
    • B、分支限界法
    • C、分治法
    • D、动态规划算法

    正确答案:D

  • 第19题:

    单选题
    应用Johnson法则的流水作业调度采用的算法是()
    A

    贪心算法

    B

    分支限界法

    C

    分治法

    D

    动态规划算法


    正确答案: A
    解析: 暂无解析

  • 第20题:

    单选题
    常见的两种分支限界法为()
    A

    广度优先分支限界法与深度优先分支限界法

    B

    队列式(FIFO)分支限界法与堆栈式分支限界法

    C

    排列树法与子集树法

    D

    队列式(FIFO)分支限界法与优先队列式分支限界法


    正确答案: A
    解析: 暂无解析

  • 第21题:

    问答题
    回溯法与分支限界法的区别是什么?

    正确答案: 两者都是问题的解空间树上搜索问题解的算法。回溯法与分支限界法的的求解目标不同,回溯法的求解目标是找出解空间树中满足约束条件的所有解,而分支限界法的求解目标是找出解空间树中满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。
    解析: 暂无解析

  • 第22题:

    问答题
    用分支限界法设计算法的步骤是什么?

    正确答案: (1)针对所给问题,定义问题的解空间(对解进行编码);
    (2)确定易于搜索的解空间结构(按树或图组织解);
    (3)以广度优先或以最小耗费(最大收益)优先的方式搜索解空间,并在搜索过程中用剪枝函数避免无效搜索。
    解析: 暂无解析

  • 第23题:

    问答题
    试比较回溯法与分支限界算法,分别谈谈这两个算法比较适合的问题?

    正确答案: 不同点:求解目标,搜索方式,空间消耗。
    回溯法的求解目标是找出解空间中满足约束条件的所有解,而分支限界法的求解目标则是找出满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。
    搜索方式:回溯法以深度优先的方式搜索解空间,而分支限界法则以广度优先或以最小耗费优先的方式搜索解空间。
    回溯法:以深度优先方式系统搜索问题解的算法为回溯法,适合解组合数较大的问题。
    分支限界法适合解决大量离散最优化的问题。
    解析: 暂无解析