Задачи календарного планирования

Автор работы: Пользователь скрыл имя, 19 Декабря 2011 в 17:25, курсовая работа

Краткое описание

Актуальность темы. В отечественной практике при построении автоматизированных систем управления производством активно используются новые управленческие технологии: управление ресурсами, промышленная логистика, управление проектами. Несмотря на различия в сфере применения данных технологий, цель их использования одна - оптимизировать использование имеющихся материальных ресурсов путем составления расписаний.
Достаточно глубоко рассматривались отечественными и зарубежными учеными задачи составления расписаний, и результаты их исследований достаточно полно изложены в литературе, но на практике расписание составляют, как правило, вручную. Эффективность составления расписания зависит от большого количества факторов, а известные методы предлагают решение лишь частных задач, общее решение задач теории расписания отсутствует.

Содержание работы

I. Введение………………………………………………………………….стр. 3

II. Современное состояние вопроса. Актуальность проблемы
составления оптимального расписания ………………………………стр. 4

III. Программное обеспечение календарного планирования и контроля.

Анализ рынка………………………………………………………… ...стр. 6

Базовые функциональные возможности системы календарного
планирования………………………………………………………… ...стр. 8

IV. Применение метода ветвей и границ для задач календарного планирования.

Понятие о методе ветвей и границ………………………………… …стр. 11

Применение метода ветвей и границ для задач календарного планирования……………………………………………………………стр. 18

V. Список использованной литературы……………………………… стр. 23

Содержимое работы - 1 файл

Добычин курсовая.doc

— 236.50 Кб (Скачать файл)

       Определить  такую очередность запуска деталей  в обработку, при которой минимизируется суммарное время завершения всех работ Tц.

       Можно показать, что в задаче трех станков  очередность выполнения первых, вторых и третьих операций в оптимальном решении может быть одинаковой (для четырех станков это свойство уже не выполняется). Поэтому достаточно определить очередность запуска только на одном станке (например, третьем).

       Обозначим sk = (i1, i2 , ..., ik) — некоторую последовательность очередности запуска длиной k (1 £ k £ п) и A (sk), В (sk), С (sk) — время окончания обработки последовательности деталей sk на первом, втором и третьем станках соответственно.

       Необходимо  найти такую последовательность sопт, что

С(sопт) = min С (s).

     s

      Покажем, как можно рекуррентно вычислять  A (sk), В (sk), С (sk). Пусть sk+1 = (sk ,ik+i), т. е. последовательность деталей sk+1 получена из деталей sk с добавлением еще одной детали ik+1.

        Тогда

A (sk+1) = A (sk)+ , 

В (sk+1) = max [A (sk+1);  В (sk)] + ,   

С (sk+1) = max [В (sk+1); С (sk)] +  

Для задачи трех станков можно использовать следующее правило доминирования .

Если  s некоторая  начальная  последовательность,   а под последовательность образованная из s перестановкой некоторых символов, то вариант s доминирует над , когда выполняются следующие неравенства: 

А (s) £ А ( ),     В (s) £ В ( ),    С (s) £ С ( ), 

причем  хотя бы одно из них  выполняется как  строгое неравенство.

       Способ  конструирования вариантов после- 
довательностей
s и вычисления оценок D(s) для каждого из них состоит в следующем.

       Пусть имеется начальная подпоследовательность s. Тогда вычисляются величины:

dC(s) = С(s) + ,                     (1)

dB(s) = В (s) + min cj , (2)

dA(s) = A (s) +   +  (3)

где J (s) — множество символов,  образующих последовательность s.

За оценку критерия С (s) для варианта s можно принять величину

D(s) = max {dA(s), dB (s), dC (s)}.    (4)

Тогда ход решения задачи трех станков можно представить следующей формальной схемой.

Нулевой шаг. Задание множества G(0), образуется всеми возможными последовательностями (s = 0).

Вычисление  оценки для множества G0:

где   D(0) = max {dA(0), dB (0), бC (0)},

.

Первый  шаг. Образование    множеств    G1(1) U G1(2) U... …G1(n).

Подмножество  Gk определяется всеми последовательностями с началом

 ik(k — 1, ...,n ).

Вычисление  оценок. Оценку для последовательности sk определяют из соотношения (4), т. е.

   D(sk) = max {dA(sk), dB (sk), dC (sk)};  k = 1, n.

Выбор варианта для продолжения. Из всех подпоследовательностей, построенных на предыдущем шаге, выбирают наиболее перспективную последовательность sk с наименьшей оценкой, т. е.

D(sk(1))=min D(sj(1)).

Ветвление. Выбрав наиболее перспективный вариант последовательности sk(1), развивают его построением всех возможных подпоследовательностей длиной 2 с началом  sk(1) вида   sk+1(2)= (sk(1), j), где j не входит в sk.

Вычисление  оценок производят в соответствии с  соотношениями (1), (2), (3).

k - ш а г. Допустим, что уже проведено k шагов, в результате чего построены варианты s1(k), s2(k) ,…,svk(k), а именно подпоследовательности длиной k.

Выбираем  самый перспективный вариант sS(k) такой, что

D(ss(k))=min D(sj(k)).

Множество Gs(k) разбиваем на (п — k) подмножеств, каждое из которых образуется добавлением к последовательности ss(k) некоторого элемента ik+1 такого, что ik+1 .

Оценка  определяется в соответствии с соотношениями (1) — (4).

В результате строим дерево вариантов следующего вида: вершина О отвечает s = 0, вершины первого уровня G1(1), G2(1)..., Gn(1) соответствуют последовательностям длиной 1, т. е. s1(1) = 1, s2(1) = 2,..., sn(1) = п и т. д. Каждая конечная вершина отвечает последовательности максимальной длины п.

Признак оптимальности. Если sv(n)  отвечает конечной вершине дерева, причем оценка наименьшая из оценок всех вершин, то sv(n) — искомый вариант, иначе переходим к продолжению варианта с наименьшей оценкой. 

Пример. Рассмотрим задачу трех станков, условия которой приведены

 в  табл. 1: 

Таблица 1

Длительность  операций Деталь
1 2 3 4 5
ai

bi

ci

2

3

4

5

2

4

1

1

2

3

4

2

3

5

2

 
 

Нулевой шаг. s = 0.

dA(s = 0) = A(0) +   +   = 0 + 14 + 3 = 17;

dB(s = 0) = В(0) + min cj = 0 + 15 + 2 = 17;

dC(s = 0) = С(0) + =14 . 

Тогда

∆ (s = 0) = max {17, 17,14} = 17. 
 
 

Первый  шаг. Конструируем все возможные последовательности длиной 1

s1(1)  = 1;  s2(1) = 2;   s3(1) = 3;   s4(1) = 4;   s5(1) = 5. 

Находим

    dA(1)  = A1  +

  +
  = 14 + 3 = 17;

    dB(1)(s = 0) = В1 +

+
  = 5 + 12 + 2 = 19;

dC(1) = С1 +

= 9 + 10 = 19 . 

Откуда  ∆ (1) = max {17, 19, 19} = 19.

Аналогично  определяем ∆ (2), ∆ (3), ∆ (4), ∆ (5).  

 

Второй  шаг. Среди множества подпоследовательностей длиной 1, s1(1) = 1, s2(1) = 2,..., s5(1)  = 5  выбираем наиболее перспективную s = 1, для которой величина оценки-прогноза ∆ (s) оказывается наименьшей. Далее развиваем ее, конструируя возможные варианты длиной 2, т. е. (1.2), (1.3), (1.4), (1.5).

Для каждого  из этих вариантов вновь определяем оценки по формулам (1) — (4).

Процесс вычислений продолжаем аналогично.

Процесс построения дерева вариантов приведен на рис. 1.

Информация о работе Задачи календарного планирования