Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Пример

.doc
Скачиваний:
15
Добавлен:
16.12.2014
Размер:
372.22 Кб
Скачать

Пример.

У фермера 24 га свободной земли. Цель – получить максимальный доход.

Можно выращивать быстро растущие ели, время роста 1 год, продажа партиями в 1000 штук по цене 2.5 у. е. за дерево, издержки для одной партии: требуется 1.5 га земли, 20 часов времени и 150 у.е. в год.

Можно использовать землю под пастбище, выращивать бычков и продавать их через год за 5000 у.е. Издержки на одного бычка: 4 га земли, 20 часов времени и затрат 1200 у.е. в год. Но уже заключен контракт на 2 бычка.

Фермер не может тратить более 200 часов и 6000 у.е. в год.

Переменные: - количество бычков, - количество партий елей.

Показатель эффективности (целевая функция) – доход за год

. Необходимо, чтобы - была максимальной.

Ограничения:

по земле

по бюджету

по времени

по обязательствам

естественные ограничения

Вернемся к примеру и запишем условия в стандартной форме

1. Выбираем начальное допустимое базисное решение при нулевых значениях не базисных переменных. При этом

Заполняем первоначальную таблицу симплекс метода (без последней строки и последнего столбца).

Cb

X1

X2

X3

X4

X5

 

0

X3

4

1,5

1

0

0

24

0

X4

1200

150

0

1

0

6000

0

X5

20

20

0

0

1

200

C-строка

0

0

0

W max

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

2. Вычисляем вектор относительных оценок ̃:

̃j = номер столбца, номер строки.

где номер переменной (и соответствующего столбца), для которой ищется относительная оценка j̃ ;

- значение коэффициента в выражении для целевой функции перед переменной ;

- значения коэффициентов в целевой функции, но только для базисной переменной (т.е. левый столбец);

-ый столбец коэффициентов т.е. тот столбец, для которого ищется j̃ ;

Заполняем - строку (относительные оценки j̃ ), в правом нижнем углу указываем значения целевой функции

Следует отметить, что для базисных переменных ̃j

т.к. при < ̃j =

Cb

X1

X2

X3

X4

X5

 

0

X3

4

1,5

1

0

0

24

0

X4

1200

150

0

1

0

6000

0

X5

20

20

0

0

1

200

C-строка

W

5000

2500

0

0

0

max

3. Если все оценки ̃j то текущее решение обеспечивает максимальное значение целевой функции, и задача максимума решена (т.е. в задачах необходимо сделать все значения строки неположительными).

Если все оценки ̃j то текущее решение обеспечивает минимальное значение целевой функции, и задача минимума решена (т.е. в задачах необходимо сделать все значения строки неотрицательными).

В противном случае переходим к этапу 4.

4. Определяем переменную для которой относительная оценка ̃j

-максимальная (если решается задача максимума ),

-минимальная (если решается задача минимума ).

Эту переменную надо сделать базисной, чтобы она входила только в одно уравнение с коэффициентом +1.

5. Определяем базисную переменную которую из базисной надо перевести в свободные.

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

Выбираем минимальное положительное значение отрицательные значения в выборе не участвуют, их как бы считают бесконечно большими.

По строке (например ) определяет переменную , которую будет переводить из базисной в свободные переменные.

 

W

5000

2500

0

0

0

max

 

Cb

Xb

X1

X2

X3

X4

X5

B

B/A

0

х3

4

1,5

1

0

0

24

6

0

x4

1200

150

0

1

0

6000

5

0

x5

20

20

0

0

1

200

10

C-строка

 

5000

2500

0

0

0

W=

0

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

4

1.5

1

0

0

24

1200

150

0

1

0

6000

20

20

0

0

1

200

Пусть по результатам - строки нам необходимо переменную перевести в базисную, а по результатам - столбца переменную надо сделать небазисной. Для этого необходимо сделать следующее.

1. Делим все строки (все коэффициенты и ) на , где - номер строки, - номер новой базисной переменной. Разделим все строки на

1

3/8

1/4

0

0

6

1

1/8

0

1/1200

0

5

1

1

0

0

1/20

10

Теперь все коэффициенты перед равны единице.

2. Строку с номером оставляем без изменений и её вычитаем из остальных строк (эти действия позволяют добиться, чтобы переменная входила в одну строку, т.е. в одно уравнение, с коэффициентом +1).

Вычитаем вторую строку (соответствующую переменной ) из первой и третьей строки.

0

1/4

1/4

-1/1200

0

1

1

1/8

0

1/1200

0

5

0

7/8

0

-1/1200

1/20

5

Теперь базисной стала переменная т.к. входит только в одно уравнение (во вторую строку) с коэффициентом +1. Поэтому вторая строка будет соответствовать новой базисной переменной (а не ).

Однако другие базисные переменные () входят в уравнения с коэффициентами, отличными от +1.

3. Делим все строки (кроме строки с номером ) на , где - номер строки, соответствующей базисной переменной (это позволяет добиться, чтобы остальные базисные переменные входили в уравнении (строки) с коэффициентами +1).

Делим первую и третью строки на (первую на , третью на ).

0

1

1

-1/300

0

4

1

1/8

0

1/1200

0

5

0

35/2

0

-1/60

1

100

Теперь базисные переменные входят только в одну сторону с коэффициентом +1, и все >.

4. Проверяем, что и все . Теперь переменная становится базисной, а переменная становится не базисной.

Далее можно вначале расположить базисные переменные.

Строки так же можно расположить в порядке возрастания индекса.

Составляем новую симплекс-таблицу и переходим к пункту 2 (определяет строку). Вычисления повторяются до тех пор, пока все значения строки станут неположительными (в задачах максимума) или неотрицательными (в задачах минимума).

Результат 1 шага

 

W

5000

2500

0

0

0

max

 

Cb

Xb

X1

X2

X3

X4

X5

B

B/A

0

x3

0

1

1

-0,003

0

4

4

5000

x1

1

0,125

0

0,0008

0

5

40

0

x5

0

17,5

0

-0,017

1

100

5,7143

C-строка

 

0

1875

0

-4,167

0

W=

25000

Соседние файлы в предмете Аналоговое моделирование