Backtracking related - Johnson Berman law Johnson-Bellman's Rule

1 Introduction

In the current design flow process of construction organization wide application, but in practice often encounter the problem of how to determine a reasonable order of the construction segment. Construction of a task because the construction is divided into several sections, each of the same construction section go through several processes, most of the natural order determination step construction process is not changed, but each process water on each section of the construction you can indeed change the order of, different total duration of the order flow. This requires us to find the shortest sequence of a total duration of water, proved Johnson - Bellman law can solve this problem.

2. The basic principle

First step of a short construction time for a subsequent step the top surface short construction period construction should arrange the construction behind. That is, the first listed in the "step of the task schedule table m, then successively selecting the minimum number in the table, and only once in each column is selected, if this number belongs to the first step , from the front, on the contrary, from the rear.

 3. Derivation and Application

With n set of machine parts referred to as: S = {J1, J2, J3 ..., Jn}, provided optimal processing program is part of a process i, when the first machining part i, a second machine idle time t down required . The first part starts processing program processed on a first machine to a final desired part on the second end of the total time the machine is T (S, t), as shown:

t There are two cases, may be smaller than t1i, also may be larger than t1i.

Next, when the first set of machining remaining parts S- {i}, the second machine needs t 'idle time down, as shown:

This idle time t 'is equal T2i (the first case), or equal to t - t1i + t2i (second case).

That is: t '= t2i + max {t-t1i, 0}.

Then the total processing time is: T (S, t) = t1i + T (S - {i}, t ') = t1i + T (S - {i}, t2i + max {t - t1i, 0})

Because they do not know that the first processing part is the number i, so S i may be any of a part number, then the optimal solution (minimum processing time) recursive formula is:

T(S,t)= min { t1i + T(S - { i },t2i + max{ t - t1i,0} ) }

Set S has n! Species processing sequence, but wherein the two part numbers i, j, only two solutions:

(1) processing the first i, then processing j.

(2) processing to j, then processed i.

Which program is the best of it?

Details are given below inference is not given directly to the following conclusions:

Scheme 1 processing time is : t (ij) = t2j + t2i + max {t - t (1i) - t (1j), -t (1j), - t (2i)}

Scheme 2 processing time is : t (ji) = t2j + t2i + max {t - t (1i) - t (1j), -t (1i), - t (2j)}

As can be seen the difference between Scheme 1 and Scheme 2 is that only the last two and tji tij of the max.

If the ratio of Scheme 1 Scheme 2 You, then:

max{ -t1j,-t2i } ≤ max{ -t1i,-t2j }。

The same on both sides by -1

max{ t1j,t2i } ≥ max{ t1i,t2j }。

Thus, a preferred embodiment of Scheme 2 than is necessary and sufficient:

max{ t1j,t2i } ≥ max{ t1i,t2j } !!!!!

Remember this conclusion! ! !

Published 57 original articles · won praise 9 · views 3606

Guess you like

Origin blog.csdn.net/Jayphone17/article/details/103013335