Изменения

Перейти к: навигация, поиск

O2Cmax

300 байт убрано, 13:04, 21 июня 2012
Доказательство корректности алгоритма
Расписание, построенное данным алгоритмом, является корректным и оптимальным.
|proof=
Для доказательства оптимальности полученного расписания рассмотрим только первый случай. Второй доказывается аналогично.Рассмотрим 3 последовательности выполнения работыЧтобы доказать корректность, надо доказать, начиная с нулевого времени: все работы что на первом каждом станкеникакая из работ не пересекается, все работы на втором станке и первая что каждая работа в каждый момент времени выполняется только на втором одном станке плюс последняя - на первом.<br/>ДокажемПервое утверждение вытекает из того, что время окончания одной из этих трёх последовательностей максимальное из всех возможных окончаний.мы строили расписание, опираясь на <br/tex>Пронумеруем работы в порядке выполнения их на первом станке и рассмотрим последовательностьC_{max}<br/tex><ul>. Из построения <tex>0 \rightarrow a_C_{1max} \rightarrow ge \dots sum \rightarrow limits_{i = 1}^{n}a_{i} , \sum \rightarrow limits_{i = 1}^{n}b_{i} </tex>, следовательно на каждом станке нет пересечения работ.<br/>Докажем теперь второе утверждение. У нас имеется 3 блока: <tex> I \rightarrow setminus \dots {x\}, \rightarrow b_{n-1x\}, J</tex></ul>.
<ol>
<li>Если Для блока <tex>i \in I{x\}</tex>пересечения отсутствуют из того, то<ul>что <tex>\sum \limits _C_{j = 1max}^{i}a_{j} + \sum\limits_{j = i}^{n -1}b_{j} \le \sum\limits_{j = 1}^{i-1}b_{j} +ge a_{ix}+ \sum\limits_{j = i}^{n -1}b_{jx}</tex>, а этот блок выполняется с разных концов станков, значит он не может пересекаться.</ulli>Это неравенство получаем из первого случая и того, что <li>Для блока <tex>i \in I \Rightarrow \ \forall j < i, j setminus \in I \Rightarrow \forall j < i, a_{j} x\le b_{j}</tex>рассмотри сумму:<ul><tex>\sum \limits_{j i = 1}^{i-1}b_{j} +k a_{i}+ \le \sum\limits_{j i = i1}^{n -1}k b_{ji} \le \sum \limits_{j i = 1}^{nk - 1} b_{ji} + b_{x}</tex></ul>Это неравенство получено следует из выбора <tex>I</tex> и из того, что <tex>a_b_{ix} \le ge a_{nx} \le b_ge a_{ni}, \forall i \in I</tex>, где <tex>n = x.<br/tex>Получили, что этот блок тоже не пересекается.</li><li>Если Для блока <tex>i \in J</tex>, торассмотри сумму:<ul><tex>\sum \limits _limits_{j i = 1}^k b_{i}a_{j} + \le \sum\limits_{j i = i1}^k a_{n -1}b_{ji} \le \sum\limits_{j i = 1}^{ik - 1}a_{j} +b_{i}+ \sum\limits_{j = i+1}^{n -1}a_{jx}</tex></ul>Это неравенство получаем следует из первого случая и того, что выбора <tex>i \in J \Rightarrow \ \forall j > i, j \in I \Rightarrow \forall j > i, b_{j} \le a_{j}</tex><ul><tex>\sum \limits_{j = 1}^{i}a_{j} +b_{i}+ \sum\limits_{j = i+1}^{n -1}a_{j} \le \sum \limits_{j = 1}^{n} a_{j}</tex></ul>Это неравенство получено и из того, что <tex>b_a_{ix} \le ge a_{i} , \le a_{n}forall i \in I</tex>, где <tex>n = x.<br/tex>Получили, что этот блок тоже не пересекается.</li>
</ol>
Три последовательности выполнения работИтого мы доказали корректность.<br/>Оптимальность вытекает, из того, что <tex>C_{max}</tex> не может быть меньше <tex>\sum \limits_{i = 1}^{n} a_i, которые мы рассмотрели вначале\sum \limits_{i = 1}^{n} b_i, являются нижней оценкой для OpenShop problem\max \limits_{i = 1}^{n}\{a_i + b_{i}\}</tex>, следовательно они и дают оптимальное решениеа из построения оно равно максимум из них.
}}
148
правок

Навигация