Лабораторная работа №6 по "Основам теории систем" (Решение задачи о ранце методом ветвей и границ)

Лабораторная работа № 6

Телешовой Елизаветы, гр. 726,

Решение задачи о ранце методом ветвей и границ.

1. Постановка задачи.

1929 год. В США великая депрессия, введен сухой закон. Страна просто задыхается без спиртного. В этот сложный момент группа инициативных граждан под руководством Аль Капоне решает помочь родной стране. Ими планируется поставка алкогольной продукции из Ливерпуля в Штаты. Благодарные сограждане из 5 крупных городов США готовы платить большие деньги за тонну спиртного: 2000 долл. в Бостоне, 3000 в Детройте, 2500 в Вашингтоне, 3200 в Нью-Йорке и 1800 долл в Чикаго. Все 5 городов находятся на разном расстоянии от порта, куда прибывает груз: Бостон – 250 миль, Детройт – 300 миль, Вашингтон – 500 миль, Нью-Йорк –100 миль и Чикаго – 600 миль. Требуется выбрать города, в которых можно получить максимальную прибыль от продажи спиртного. При этом суммарное расстояние от этих портов до порта с грузом не должно превышать 1000 миль.

2. Решение задачи.

Данная задача является задачей о ранце вида:

 ,                                                        (1)

где критерием является функция

                                                             (2)

которая может быть устремлена и к максимуму, и к минимуму.

Для начала составим следующую математическую модель:

Пусть  – j-тый город, откуда соответственно j-тый город будет разгружаться алкогольная продукция, то

 ;

Целевой функцией или критерием будет являться максимальная благодарность сограждан:

Далее отбираем порты по приоритетности, т.е. в порядке убывания отношения

 (3);  (2); ;  (1);  (5).

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

,

Аналогично рассуждая, далее получаем:

,

,

В последнем случае оставшееся после других городов расстояние меньше 500 миль, поэтому  будет дробным:

Таким образом, начальный опорный план:

Значение целевой функции:

Но  обязательно целое. Поэтому чтобы определить, чему все же равен

;– целая часть критерия при существующем опорном плане.

;– значение критерия при целочисленном опорном плане, т.е.

Множество D, которому принадлежит  имеет Разделим его на 2 подмножества, такие что:

;

 - здесь

здесь

1) Анализ множества D1.

Поскольку  целевая функция и ограничения будут иметь вид:

Строим новый опорный план:

,

,

,

Т.к.  будет дробным:

Таким образом, новый опорный план:

;

, при

2) Анализ множества D2.

Поскольку  целевая функция и ограничения будут иметь вид:

 => .

Строим новый опорный план:

,

,

Т.к.  будет дробным:

Таким образом, новый опорный план:

;

, при

3) Отсев неперспективного подмножества.

Так как  и  больше Rec, то оба подмножества можно считать перспективными, но поскольку D2. Разделим его на 2 подмножества, такие что:

;

 - здесь

здесь

4) Анализ множества D3.

Поскольку  целевая функция и ограничения будут иметь вид:

.

Строим новый опорный план:

,

,

Т.к.  будет дробным:

Таким образом, новый опорный план:

;

, при

5) Анализ множества D4.

Поскольку  целевая функция и ограничения будут иметь вид:

 => .

Строим новый опорный план:

,

Т.к.  будет дробным:

Таким образом, новый опорный план:

;

, при

6) Отсев неперспективного подмножества.

Так как  и  больше Rec, то оба подмножества можно считать перспективными, но поскольку D3. Разделим его на 2 подмножества, такие что:

;

 - здесь

здесь

7) Анализ множества D5.

Поскольку  целевая функция и ограничения будут иметь вид:

.

Строим новый опорный план, очевидно:  ограничение выполняется всегда.

;

, при

8) Анализ множества D6.

Поскольку  целевая функция и ограничения будут иметь вид:

D

D1

D2

D3

D4

D5

D6

.

Ограничение несовместное, поскольку даже при  оно не выполняется. Следовательно множество D6 не существует.

Таким образом, оптимальным планом данной задачи будет:

3. Постановка задачи о многомерном ранце.

В связи с тем, что спиртное стало хорошо раскупаться, Аль Капоне решил увеличить поставки. Но чтобы мирно спящее ФБР не дай бог не проснулось, было решено осуществлять поставки через три разных порта на восточном побережье. Цены на спиртное в пяти вышеуказанных городах не изменились, расстояние же от них (в милях) до портов указано в следующей таблице:

Бостон

Детройт

Вашингтон

Нью-Йорк

Чикаго

Порт 1

250

300

500

100

600

Порт 2

100

200

700

400

300

Порт 3

500

400

300

550

150

Во всех трех случаях суммарное расстояние от порта до городов не должно превышать 1000 миль. Требуется решить тот же самый вопрос: в какие города выгоднее поставлять продукцию?

4. Решение задачи о многомерном ранце (вручную).

Задача о многомерном ранце имеет следующую математическую модель:

 ,                                                    (3)

где критерием является функция

                                                             (4)

От задачи об одномерном ранце она отличается наличием нескольких ограничений. Таким образом, математическая модель:

Пусть  – j-тый город, откуда соответственно j-тый город будет разгружаться алкогольная продукция, то

 ;

Целевой функцией или критерием будет являться максимальная благодарность сограждан:

Решим задачу оценки критерия для каждого ограничения в отдельности. Пусть множество  относится к первому ограничению,

1) Анализ множества .

 (3);  (2); ;  (1);  (5).

Определяем начальный план:

,

,

,

В последнем случае оставшееся после других городов расстояние меньше 500 миль, поэтому  будет дробным:

Таким образом, начальный опорный план:

;

2) Анализ множества .

; ; ; ; (4).

Определяем начальный план:

,

,

,

В последнем случае оставшееся после других городов расстояние также равно 300 миль, поэтому  будет целым:

Таким образом, опорный план:

;

3) Анализ множества .

; 2); 3); ; (1).

Определяем начальный план:

,

,

,

В последнем случае оставшееся после других городов расстояние меньше 550 миль, поэтому  будет дробным:

Таким образом, опорный план:

;

4) Вычисление верхней и нижней границ.

Вычисляем верхнюю границу:

; – третье ограничение более жесткое, далее будем исследовать опорный план .

Определяем опорные планы для третьего ограничения:

a) ,

,

В последнем случае оставшееся после других городов расстояние равно 50 миль, поэтому . Таким образом :

б) ,

,

В последнем случае оставшееся после других городов расстояние равно 100 миль, поэтому . Таким образом :

в) В этом случае

Вычисляем нижнюю границу:

;

;

;

5) Ветвление множества D.

;

 - здесь

здесь

6) Анализ множества D1.

a) Определяем начальный план для

,

,

В последнем случае оставшееся после других городов расстояние меньше 500 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

б) Определяем начальный план для

,

,

,

В последнем случае оставшееся после других городов расстояние меньше 700 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

в) Определяем начальный план для

,

,

,

В последнем случае оставшееся после других городов расстояние меньше 100 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

г) Вычисление верхней и нижней границ.

Вычисляем верхнюю границу:

; – первое ограничение более жесткое.

Определяем опорные планы для первого ограничения:

– В этом случае

– ,

,

В последнем случае оставшееся после других городов расстояние равно 450 миль, поэтому . Таким образом :

– ,

,

В последнем случае оставшееся после других городов расстояние равно 100 миль, поэтому . Таким образом :

Вычисляем нижнюю границу:

Т.к. ;

;

7) Анализ множества D2.

Поскольку

 => ;

a) Определяем начальный план для

,

,

В последнем случае оставшееся после других городов расстояние меньше 500 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

б) Определяем начальный план для

,

,

,

Таким образом, новый опорный план:

;

в) Определяем начальный план для

,

В последнем случае оставшееся после других городов расстояние меньше 400 миль, поэтому  будет дробным: Таким образом, новый опорный план:

;

г) Вычисление верхней и нижней границ.

Вычисляем верхнюю границу:

; – третье ограничение более жесткое.

Определяем опорные планы для третьего ограничения:

– ,

В последнем случае оставшееся после других городов расстояние равно 50 миль, поэтому Таким образом:

– ,

,

В последнем случае оставшееся после других городов расстояние равно 50 миль, поэтому . Таким образом :

– В этом случае

Вычисляем нижнюю границу:

Т.к. ;

;

8) Отсев неперспективного подмножества.

Так как  и  больше Rec, то оба подмножества перспективные, но поскольку

;

 - здесь

здесь

9) Анализ множества D3.

Поскольку

a) Определяем начальный план для

,

,

В последнем случае оставшееся после других городов расстояние меньше 600 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

б) Определяем начальный план для

,

,

В последнем случае оставшееся после других городов расстояние меньше 700 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

в) Определяем начальный план для

,

В последнем случае оставшееся после других городов расстояние меньше 350 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

г) Вычисление верхней и нижней границ.

Вычисляем верхнюю границу:

; – третье ограничение более жесткое.

Определяем опорные планы для третьего ограничения:

– ,

,

В последнем случае оставшееся после других городов расстояние равно 100 миль, поэтому . Таким образом :

– ,

,

В последнем случае оставшееся после других городов расстояние равно 300 миль, поэтому . Таким образом :

– В этом случае

Вычисляем нижнюю границу:

;

Т.к. ;

10) Анализ множества D4.

Поскольку

 => ;

a) Определяем начальный план для

,

В последнем случае оставшееся после других городов расстояние меньше 500 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

б) Определяем начальный план для

,

,

Таким образом, новый опорный план:

;

в) Определяем начальный план для

В этом случае оставшееся после других городов расстояние меньше 150 миль, поэтому  будет дробным:

Таким образом, новый опорный план:

;

г) Вычисление верхней и нижней границ.

Вычисляем верхнюю границу:

; – третье ограничение более жесткое.

Определяем опорные планы для третьего ограничения:

Очевидно, что поскольку

Вычисляем нижнюю границу:

Т.к. ;

D

D1

D2

D3

D4

 и  больше Rec, то оба подмножества перспективные, но поскольку  более перспективное, следовательно оптимальным планом будет