Консультация № 189869
11.10.2016, 07:40
0.00 руб.
11.10.2016, 08:30
0 3 1
Здравствуйте! У меня возникли сложности с таким вопросом:

Есть три вида станков: А1, А2, А3. На этих станках последовательно обрабатываются детали трех видов:В1, В2, В3. Известно сколько часов каждая деталь изготавливается на каждом станке, сколько может проработать каждый станок и какая прибыль может быть получена при продаже одной детали каждого типа. Данные
приведены в таблице. Требуется найти оптимальный план работы станков, т.е. установить, сколько деталей и
каких видов надо выпустить, чтобы получить максимальную прибыль.
Задание : Построить математическую модель задачи; привести математическую модель задачи к каноническому виду; найти начальный опорный план задачи; решить задачу симплекс методом; дать экономическую интерпретацию результатов.

Фонд
Станки В1 В2 В3 времени,ч

А1 0 2 3 24
А2 1 1 0 4
А3 0 4 2 24
Прибыль 3 15 6


Обсуждение

давно
Мастер-Эксперт
17387
18345
11.10.2016, 08:30
общий
Обратите, пожалуйста, внимание на эту консультацию, перенесённую из другого раздела.
Об авторе:
Facta loquuntur.
давно
Старший Модератор
312929
1973
13.10.2016, 13:10
общий
это ответ
Здравствуйте, alenchik2545!

Пусть изготовлено x[sub]1[/sub] деталей первого вида, x[sub]2[/sub] деталей второго вида и x[sub]3[/sub] деталей третьего вида (эти величины должны быть целыми и неотрицательными). Тогда время работы первого станка составит 2x[sub]2[/sub]+3x[sub]3[/sub] часов, при этом оно не должно превышать 24 часов (фонд времени для первого станка). Соответственно, время работы второго станка - x[sub]1[/sub]+x[sub]2[/sub] часов (но не более 4 часов), третьего - 4x[sub]2[/sub]+2x[sub]3[/sub] часов (но не более 24 часов). Если прибыль от продажи деталей первого, второго и третьего вида составляет 3, 15 и 6 соответственно, то суммарная прибыль будет равна 3x[sub]1[/sub]+15x[sub]2[/sub]+6x[sub]3[/sub]. Требуется установить, при каких x[sub]1[/sub], x[sub]2[/sub] и x[sub]3[/sub] она будет наибольшей.
Таким образом, имеем задачу линейного программирования: необходимо найти максимальное значение целевой функции F = 3x[sub]1[/sub]+15x[sub]2[/sub]+6x[sub]3[/sub] [$8594$] max при системе ограничений:

x[sub]1[/sub][$8805$]0, x[sub]2[/sub][$8805$]0, x[sub]3[/sub][$8805$]0.
Перейдём к канонической форме, то есть приведём систему неравенств к системе уравнений путём введения дополнительных базисных переменных x[sub]4[/sub], x[sub]5[/sub], x[sub]6[/sub]:

(с экономической точки зрения дополнительные переменные обозначают неиспользованные остатки фонда времени). Полагая свободные переменные x[sub]1[/sub], x[sub]2[/sub], x[sub]3[/sub] равными 0, получим начальный опорный план X = (0, 0, 0, 24, 4, 24).
1. Составим симплекс-таблицу:
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col]x2[/col][col]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]24[/col][col]0[/col][col]2[/col][col]3[/col][col]1[/col][col]0[/col][col]0[/col][/row]
[row][col]x5[/col][col]4[/col][col]1[/col][col]1[/col][col]0[/col][col]0[/col][col]1[/col][col]0[/col][/row]
[row][col]x6[/col][col]24[/col][col]0[/col][col]4[/col][col]2[/col][col]0[/col][col]0[/col][col]1[/col][/row]
[row][col]F(X)[/col][col]0[/col][col]-3[/col][col]-15[/col][col]-6[/col][col]0[/col][col]0[/col][col]0[/col][/row]
[/table]
Этот опорный план допустим, так как все свободные члены (24, 4, 24) положительны, но неоптимален, так как в индексной строке F(X) есть отрицательные коэффициенты.
Наибольший по модулю отрицательный коэффициент в индексной строке равен -15. Соответствующая ему переменная x[sub]2[/sub] будет новой базисной переменной, а соответствующий столбец - ведущим. Найдём частные от деления свободных членов на коэффициенты ведущего столбца: (24/2, 4/1, 24/4) = (12, 4, 6). Наименьшее среди них равно 4. Соответствующая ему переменная x[sub]5[/sub] будет новой свободной переменной, а соответствующая строка - ведущей:
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col silver]x2[/col][col]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]24[/col][col]0[/col][col silver]2[/col][col]3[/col][col]1[/col][col]0[/col][col]0[/col][/row]
[row][col silver]x5[/col][col silver]4[/col][col silver]1[/col][col silver]1[/col][col silver]0[/col][col silver]0[/col][col silver]1[/col][col silver]0[/col][/row]
[row][col]x6[/col][col]24[/col][col]0[/col][col silver]4[/col][col]2[/col][col]0[/col][col]0[/col][col]1[/col][/row]
[row][col]F(X)[/col][col]0[/col][col]-3[/col][col silver]-15[/col][col]-6[/col][col]0[/col][col]0[/col][col]0[/col][/row]
[/table]
Разрешающий элемент, находящийся на пересечении ведущего столбца и ведущей строки, равен 1. Заменяем строку x[sub]5[/sub] на строку x[sub]2[/sub], для чего делим все её элементы на разрешающий элемент:
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col silver]x2[/col][col]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]24[/col][col]0[/col][col silver]2[/col][col]3[/col][col]1[/col][col]0[/col][col]0[/col][/row]
[row][col silver]x2[/col][col silver]4[/col][col silver]1[/col][col silver]1[/col][col silver]0[/col][col silver]0[/col][col silver]1[/col][col silver]0[/col][/row]
[row][col]x6[/col][col]24[/col][col]0[/col][col silver]4[/col][col]2[/col][col]0[/col][col]0[/col][col]1[/col][/row]
[row][col]F(X)[/col][col]0[/col][col]-3[/col][col silver]-15[/col][col]-6[/col][col]0[/col][col]0[/col][col]0[/col][/row]
[/table]
Исключаем новую базисную переменную x[sub]2[/sub] из остальных строк, для чего вычитаем из них строку x[sub]2[/sub], умноженную на соответствующий элемент столбца x[sub]2[/sub] (2 для x[sub]4[/sub], 4 для x[sub]6[/sub] и -15 для F(X)):
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col]x2[/col][col]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]16[/col][col]-2[/col][col]0[/col][col]3[/col][col]1[/col][col]-2[/col][col]0[/col][/row]
[row][col]x2[/col][col]4[/col][col]1[/col][col]1[/col][col]0[/col][col]0[/col][col]1[/col][col]0[/col][/row]
[row][col]x6[/col][col]8[/col][col]-4[/col][col]0[/col][col]2[/col][col]0[/col][col]-4[/col][col]1[/col][/row]
[row][col]F(X)[/col][col]60[/col][col]12[/col][col]0[/col][col]-6[/col][col]0[/col][col]15[/col][col]0[/col][/row]
[/table]
2. Получаем новый опорный план X = (0, 4, 0, 16, 0, 8). Он допустим, так как все свободные члены (4, 16, 8) положительны, но неоптимален, так как в индексной строке F(X) есть отрицательный коэффициент -6 в столбце x[sub]3[/sub]. Других отрицательных коэффициентов нет, поэтому переменная x[sub]3[/sub] будет новой базисной переменной, а соответствующий столбец - ведущим. Найдём частные от деления свободных членов на коэффициенты ведущего столбца: (14/3, 4/0, 8/2) = (16/3, [$8734$], 4). Наименьшее среди них равно 4. Соответствующая ему переменная x[sub]6[/sub] будет новой свободной переменной, а соответствующая строка - ведущей:
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col]x2[/col][col silver]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]16[/col][col]-2[/col][col]0[/col][col silver]3[/col][col]1[/col][col]-2[/col][col]0[/col][/row]
[row][col]x2[/col][col]4[/col][col]1[/col][col]1[/col][col silver]0[/col][col]0[/col][col]1[/col][col]0[/col][/row]
[row][col silver]x6[/col][col silver]8[/col][col silver]-4[/col][col silver]0[/col][col silver]2[/col][col silver]0[/col][col silver]-4[/col][col silver]1[/col][/row]
[row][col]F(X)[/col][col]60[/col][col]12[/col][col]0[/col][col silver]-6[/col][col]0[/col][col]15[/col][col]0[/col][/row]
[/table]
Разрешающий элемент равен 2. Заменяем строку x[sub]6[/sub] на строку x[sub]3[/sub], разделив все её элементы на разрешающий элемент:
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col]x2[/col][col silver]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]16[/col][col]-2[/col][col]0[/col][col silver]3[/col][col]1[/col][col]-2[/col][col]0[/col][/row]
[row][col]x2[/col][col]4[/col][col]1[/col][col]1[/col][col silver]0[/col][col]0[/col][col]1[/col][col]0[/col][/row]
[row][col silver]x3[/col][col silver]4[/col][col silver]-2[/col][col silver]0[/col][col silver]1[/col][col silver]0[/col][col silver]-2[/col][col silver]1/2[/col][/row]
[row][col]F(X)[/col][col]60[/col][col]12[/col][col]0[/col][col silver]-6[/col][col]0[/col][col]15[/col][col]0[/col][/row]
[/table]
Исключаем новую базисную переменную x[sub]3[/sub] из остальных строк, для чего вычитаем из них строку x[sub]3[/sub], умноженную на соответствующий элемент столбца x[sub]3[/sub] (3 для x[sub]4[/sub], 0 для x[sub]2[/sub] и -6 для F(X)):
[table]
[row][col]Базис[/col][col][/col][col]x1[/col][col]x2[/col][col]x3[/col][col]x4[/col][col]x5[/col][col]x6[/col][/row]
[row][col]x4[/col][col]4[/col][col]4[/col][col]0[/col][col]0[/col][col]1[/col][col]4[/col][col]-2[/col][/row]
[row][col]x2[/col][col]4[/col][col]1[/col][col]1[/col][col]0[/col][col]0[/col][col]1[/col][col]0[/col][/row]
[row][col]x3[/col][col]4[/col][col]-2[/col][col]0[/col][col]1[/col][col]0[/col][col]-2[/col][col]1/2[/col][/row]
[row][col]F(X)[/col][col]84[/col][col]0[/col][col]0[/col][col]0[/col][col]0[/col][col]3[/col][col]3[/col][/row]
[/table]
3. Получаем новый опорный план X = (0, 4, 4, 4, 0, 0). Он допустим, так как все свободные члены (4, 4, 4) положительны, и оптимален, так как в индексной строке F(X) нет отрицательных коэффициентов. Оптимальный план можно записать как x[sub]1[/sub] = 0, x[sub]2[/sub] = x[sub]3[/sub] = 4, F = 15[$183$]4 + 6[$183$]4 = 84. При этом использование фонда времени составит 2[$183$]4+3[$183$]4=20 часов для первого станка, 0+4=4 часов для второго станка и 4[$183$]4+2[$183$]4=24 часов для третьего станка. Следовательно, для первого станка имеет место недоиспользование фонда времени на 4 часа (это подтверждается тем, что дополнительная переменная x[sub]4[/sub]=4>0).
Отметим также, что x[sub]1[/sub]=0, то есть выпуск деталей первого вида невыгоден.
давно
Посетитель
400575
34
15.10.2016, 16:53
общий
Адресаты:
Большое Спасибо!!!!!! Очень выручили..
Форма ответа