Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laborat 2.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
253.95 Кб
Скачать

Определяем максимальное значение целевой функции

Признак 4а удовлетворяется (табл. 4). При максимизации целевой функции х1 = 2,5; х2 = 0; х3 = 0; Е = –5.

Определяем минимальное значение целевой функции

Признак 4б не удовлетворяется (табл. 4). Проводим обмен переменных. Выбираем разрешающий столбец х2 (табл. 4). В этом случае разрешающая строка у4 (табл. 4). Составляем симплекс-таблицу (табл. 5) по правилам, описанным в этапе 3 при шаге 2. Воспользовавшись алгоритмом определения симплекс-таблицы в этапе 3 и на шаге 3, получаем новую симплекс-таблицу (табл. 6).

Признак 4б удовлетворяется (табл. 6). При минимизации целевой функции х1 = 2,75; х2 = 0,5; х3 = 0; Е = –6,5.

Таблица 5 Таблица 6

Свободный член

у2

x2

x3

Свободный член

у2

у4

x3

E

– 1,5

–1,5

–1,5

–13,5

E

– 6,5

–0,5

–1,5

–9,5

y1

0,75

0,75

0,75

6,75

y1

13,25

0,25

0,75

5,25

х1

0,25

0,25

0,25

2,25

х1

2,75

–0,25

0,25

–0,25

y3

0,25

0,25

0,25

2,25

у3

7,75

0,75

0,25

4,75

y4

0,5

0,5

0,5

4,5

х2

0,5

0,5

0,5

4,5

2.2. Решение задач с булевыми переменными

Булевыми переменными называются такие целочисленные переменные, которые могут принимать лишь два значения: 0 и 1. Для решения данной задачи воспользуемся методом частичного перебора с аддитивным алгоритмом Баллаша с фильтром. Этот метод рассмотрим на следующем примере:

Е = 51 + 42 – 23 + 4  max;

31 – 2 + 23 – 4  4; {1}

21 – 42 – 4  –3; {2}

1 + 23 + 34  2; {3}

62 – 23  –1; {4}

42 – 23 + 4  2; {5}

[0; 1].

Определяем максимальное значение целевой функции

Итерационный процесс при решении задачи представлен в табл. 7.

Таблица 7

3

4

2

1

Значения ограничений

Выполнение всех ограничений

Значение Е

{1}

{2}

{3}

{4}

{5}

0

0

0

0

0

0

0

0

0

Да

0

Основываясь на данных табл. 7, можно сделать вывод, что в оптимальном решении значение целевой функции будет не меньше нуля. Такое положение записываем в виде дополнительного условия

51 + 42 – 23 + 4 > 0. {0}

Таким образом, получается система, состоящая из шести ограничений, которым должно удовлетворяться искомое решение. При этом за нулевое ({0}) ограничение принимается дополнительное фильтрующее ограничение. Если некоторое ограничение не удовлетворяется, для данного набора  дальнейший расчет не производится.

Продолжаем итерационный процесс (табл. 8) по определению оптимального значения целевой функции с использованием фильтрующего ограничения.

Таблица 8

3

4

2

1

Значения ограничений

Выполнение всех ограничений

Значение Е

{0}

{1}

{2}

{3}

{4}

{5}

0

0

0

1

5

3

2

1

0

0

Да

5

Записываем новое фильтрующее ограничение ({01}):

51 + 42 – 23 + 4  5. {01}

Продолжаем итерационный процесс (табл. 9) по определению оптимального значения целевой функции с фильтрующим ограничением {01}.

Таблица 9

3

4

2

1

Значения ограничений

Выполнение всех ограничений

Значение Е

{01}

{1}

{2}

{3}

{4}

{5}

0

0

1

0

4

Нет

0

0

1

1

9

2

–2

1

6

4

Нет

0

1

0

0

1

Нет

0

1

0

1

6

2

1

4

Нет

0

1

1

0

5

–2

–5

Нет

0

1

1

1

10

2

–3

4

Нет

1

0

0

0

–2

Нет

1

0

0

1

3

Нет

1

0

1

0

2

Нет

1

0

1

1

7

4

–2

3

Нет

1

1

0

0

–1

Нет

1

1

0

1

4

Нет

1

1

1

0

3

Нет

1

1

1

1

8

3

–3

6

Нет

Из табл. 7, 8, 9 следует, что оптимальным решением задачи является

1 =1; 2 = 0; 3 = 0; 4 = 0; Е = 5.

Вывод. При определении оптимального решения по табл. 7, 8, 9 вместо необходимых при полном переборе вычислений 95 величин были определены 44, что составило 46,3 %.

Из этого следует, что суть метода Баллаша с фильтром сводиться к следующему:

  1. расположить переменные по возрастанию коэффициентов при них в целевой функции;

  2. при итерационном процессе определить , удовлетворяющие все ограничения;

  3. значение целевой функции при удовлетворении п.2 принять в качестве дополнительного фильтрующего ограничения;

  4. методом перебора  определить значение фильтрующего ограничения и проверить удовлетворение его заданным ограничениям;

  5. если при некотором наборе  значение фильтрующего ограничения окажется для целевой функции лучшим, следует от первоначального набора перейти к новому и продолжить процедуру.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]