Threshold Accepting

advertisement

FORS 8450 • Advanced Forest Planning

Lecture 6

Threshold

Accepting

Threshold Accepting

Threshold Accepting

Background

Threshold accepting was introduced by Dueck and Scheuer (1990), and has been used in a number of fields, including forestry, to plan activities.

For forest planning, the general implementation goes something like this:

During the scheduling of activities, a management unit and time period are selected at random (proposed). Constraints are assessed. If the proposed solution is feasible, the threshold accepting algorithm accepts it if it is not

much worse than the previous current (or best) solution.

The approach is a form of Monte Carlo method that uses a local search, in which a subset of solutions is explored by moving from one solution to a neighboring solution.

To avoid converging and becoming stuck in a local maximum (or minimum) the procedure provides for an occasional acceptance of an inferior solution, which allows it to move away from a local maximum.

Threshold Accepting

Necessary parameters

1) A beginning threshold level (in objective function units).

2) An ending threshold level.

3) An assumption of the number of iterations per threshold.

4) A rate of change for the threshold.

Other assumptions

1) Do infeasible solutions or unsuccessful suggested changes count toward the number of iterations per threshold?

2) Can the initial threshold be taken out of the hands of the user and estimated based on the quality of the initial solution?

3) Is the threshold change linear or non-linear?

4) Does the threshold apply to the previous current or the best solution?

Threshold Accepting

A general note for this and other algorithms

Threshold accepting is in a class of algorithms that generally operate in a 1-opt or 2-opt random decision mode.

1-opt: A change is made to a single decision unit (e.g., the timing of a clearcut for a stand, or the assignment of a management regime to a stand).

• One stand is chosen at random

• A decision is chosen at random for the stand

2-opt: A change is made simultaneously to two decision units, and they swap assignments.

• Two stands are chosen at random

• The decisions assigned to each are swapped

Threshold Accepting

Characteristics of the algorithm

1) A solution is improved upon as the algorithm operates.

2) Changes that lead to higher quality solutions are always welcome.

3) Changes that lead to lower quality solutions are acceptable as well, as long as they are not too far away from the previously-saved best solution.

Example: A change is suggested that leads to a lower quality solution - $1,500 in NPV lower that the previously saved

"best" solution. As long as the decrease in quality is smaller than the current threshold, the change is acceptable.

4) The threshold begins as a large number (user-defined), but decreases in size as the algorithm operates.

5) The algorithm stops and reports the best solution when the threshold is very small (user-defined).

Threshold Accepting

Basic Process

Select a choice at random

Evaluate goals

Feasible, better solution?

Yes

Accept the choice

No

Feasible,

Within threshold?

Yes

Accept the choice

No

No

Have we reached the stopping criteria?

Yes

Stop and report the best solution found during search

Threshold Accepting

A Specific Forest

Planning Process

Four broad steps.

Step 3 is described in more detail next.

Step 1

Step 2

Step 3

Step 4

Read data

Clear arrays

Develop initial random solution

Schedule activities

Δ Th?

Change threshold

Done?

Report best solution

Threshold Accepting

A Specific Forest

Planning Process

Step 3

Develop a solution

Select unit and period

Check adjacency constraint

Calculate solution value

Check TA criteria

Revert to previous solution

Yes

Violated?

No

No

Best?

Yes

Save as best solution

No

Pass?

Yes Save as current solution

Exhausted?

Yes

No

(Return)

(Return)

Threshold Accepting

Change in solution value over about 8,000 iterations for a specific forest planning problem with a maximization objective.

Threshold Accepting

Change in solution value over about 8,000 iterations for a specific forest planning problem with a maximization objective.

Download