Branch Limit Method

Source: Internet
Author: User

Learning points:

1. Branch restriction and backtracking

2. pruning search strategy for the branch Limit Method

3. Branch restriction algorithm framework:

(1) Queue (FIFO) Branch restriction Method

(2) priority queue branch restriction Method

4. Application Example:

(1) single-source shortest path problem

(2) device Problems

(3) wiring problems

(4) 0-1 backpack Problems

(5) Major Issues

(6) Traveling Salesman Problems

(7) board arrangement problems

(8) Batch Job Scheduling

 

1. Relationship between the branch restriction method and the Backtracking Method:

The branch limit method is similar to the Backtracking Method, and is also an algorithm used to search for the problem solution on the spatial tree of the problem.

The difference between the branch Limit Method and the backtracing method:

1. Different solutions: the solution objective of the backtracking method is to find all solutions that meet the constraints in the solution space, while the solution objective of the branch restriction method is to find a solution that meets the constraints, or, in the solution that satisfies the constraints, find a solution that makes a certain target function value extremely large or extremely small, that is, the optimal solution in a certain sense.

2. Different search methods for the solution space: the Backtracking Method searches for the solution space in depth-first mode, while the branch restriction method searches for the solution space in width-first or minimum-cost-first mode.

The main difference is that they use different expansion methods for the current expansion nodes. In the branch restriction method, each dynamic node has only one chance to become an extension node. Once a dynamic node becomes an extended node, all its son nodes are generated at one time. In these son nodes, the son nodes that are not feasible or optimal are discarded, and the other son nodes are added to the dynamic node table. After that, remove a node from the active node table to become the current expansion node, and repeat the above node expansion process. This process continues until the desired solution or dynamic knots are found to be empty.

 

2. Search policy of the branch restriction method:

At the expansion node, Mr. Cheng becomes all of his son nodes (branches), and then selects the next extension node from the current active node table. To effectively select the next extended node, add the search process, calculate a function value (Restriction) at each dynamic node, and according to the function value, select the most favorable node from the current active node table as the expansion node, so that the search moves toward the branch with the optimal solution space, and then find an optimal solution as soon as possible.

Note: You can use the pruning function to accelerate the search. This function provides an upper bound of the maximum value that each feasible node can obtain from the corresponding subtree. If the upper bound is not greater than the current optimal value, it indicates that the corresponding subtree does not contain the optimal solution, and thus can be cut out. On the other hand, you can take the upper bound of each node determined by the upper bound function as the priority and extract the current extended node in non-incrementing order of the priority. This policy can sometimes find the optimal solution more quickly.

  Basic Idea:

The branch restriction method usually searches for the spatial tree of a problem in a breadth-first or least-consumed (maximum-benefit)-First manner. The space tree for solving the problem is an ordered tree that represents the space for resolving the problem. It is common to have a subset tree and an arrangement tree. When you search for the spatial tree of a problem, the main difference between the restriction method and the backtracking method is that they use different expansion methods for the current expansion node. In the branch restriction method, each active node has only one chance to become an extension node. Once a dynamic node becomes an extended node, all its son nodes are generated at one time. In these son nodes, the son nodes that are not feasible or optimal are discarded, and the other son nodes are added to the dynamic node table. After that, remove a node from the active node table to become the current expansion node, and repeat the above node expansion process. This process continues until the desired solution or dynamic knots table is null.

 

3. Two different branch Restriction Methods (Algorithm Framework)-- This is caused by different methods of selecting the next extension node from the dynamic nodes table.

(1) queue-type (FIFO) Branch restriction method: organizes the dynamic node table into a queue, and selects the next node as the current extended node according to the first-in-first-out principle of the queue.

(2) priority queue branch restriction method: organizes the dynamic nodes table into a priority queue, and selects the next node with the highest priority as the node priority specified in the priority queue to become the current expansion node.

 

4. Application Example:

0-1 backpack problems:

 

 

 

 

  

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.