在一台机器上规划任务
Assume you have
Formally speaking, given
Special cost functions¶
Linear cost function¶
First of all, we consider the case where all functions are linear functions, that is,
Consider two permutations
So we use the sorting strategy that if
To deal with this problem, we need to consider the transformation after small change and greedily select the optimal solution.
Exponential cost function¶
Consider the form of the cost function as
We follow the previous method and consider the change in cost caused by swapping the elements at
The same monotonically increasing function¶
We consider that all
Livshits-Kladov theorem¶
The Livshits-Kladov theorem is valid if and only if the cost function is one of the following three cases:
- Linear function:
f_i(t) = c_it + d_i c_i\ge 0 - Exponential function:
f_i(t) = c_i e^{a t} + d_i c_i,a>0 - Same monotonically increasing function:
f_i(t) = \phi(t) \phi(t)
The theorem is proved under the assumption that the cost function is sufficiently smooth (there is a third derivative). In these three cases, the optimal solution of the problem can be solved in
Part of this page is translated from the blog post Задача Джонсона с одним станком and its English version Scheduling jobs on one machine. The copyright license for the Russian version is Public Domain + Leave a Link; And the copyright license for the English version is CC-BY-SA 4.0.
buildLast update and/or translate time of this article,Check the history
editFound smelly bugs? Translation outdated? Wanna contribute with us? Edit this Page on Github
peopleContributor of this article OI-wiki
translateTranslator of this article Visit the original article!
copyrightThe article is available under CC BY-SA 4.0 & SATA ; additional terms may apply.