Смекни!
smekni.com

Разработка подсистемы управления оптимального плана выпуска изделий

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ ТАДЖИКИСТАН

ТАДЖИКСКИЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

имени академика М.С. Осими

Кафедра: «АСОИ и У»

ОТЧЕТ

по лабораторной работе

на тему:

«Разработка подсистемы управления оптимального плана выпуска изделий»

Душанбе – 2009 г.


Цель работы:

1) Определение оптимального плана выпуска продукции на конкретном объекте управления с применением метода линейного программирования (симплекс-метод);

2) Построение схемы движения информации в подсистеме оптимального плана выпуска продукции.

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

Для производства N‑видов продукции используется М-видов ресурсов. Стоимость единицы равна: Cj (j=1 – n). Ресурсы на складах предприятия не более bi (i=1‑m) единиц. Расход ресурсов для каждого вида продукции равно aij (i=1‑m; j=1n). Требуется определить оптимальный план выпуска продукции, от продажи которой предприятие получило максимальный доход.


Для решения данной лабораторной работы было выбрано частное предприятие по изготовлению мебели. Предприятие изготавливает в основном изделия трех видов:

1. столы

2. стулья

3. табуретки

Известно, что для изготовления изделия требуются два вида ресурсов:

Доски и шурупы.

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

Для изготовления продукции требуется следующее:

1. Табуретка:

Досок – 5 м. Стоимость 1 м. – 8 сом.

Шурупов – 20 шт. Стоимость 1 ш. – 2 дир.

Себестоимость продукции – 44 сом.

Розничная цена – 55 сом.

2. Стул:

Досок – 8 м. Стоимость 1 м. – 8 сом.

Шурупов – 30 шт. Стоимость 1 ш. – 2 дир.

Себестоимость продукции – 70 сом.

Розничная цена – 80 сом.

3. Стол:

Досок – 15 м. Стоимость 1 м. – 8 сом.

Шурупов – 40 шт. Стоимость 1 ш. – 2 дир.

Себестоимость продукции – 100 сом.

Розничная цена – 120 сом.

Исходные данные для расчета сведены в таблице 1.

Обозначим:

Х1 – табуретка;

Х2 – стул;

Х3 – стол;

Х4 – доски;

Х5 – шурупы;

Вi – кол-во товаров на складе;

F(x) – прибыль от 1‑й единицы изделия.

Вi Х1 Х2 Х3
Доски 300 5 8 15
Шурупы 700 20 30 40
F(x) 55 80 120

Зная ресурсы предприятия и количество единиц, затрачиваемые на изготовления каждого изделия, можно записать следующую систему неравенств:

F(x) = 55х1 + 80х2 + 120х3

5х1 + 8х2 + 15х3 < 300

20x1 + 30x2 + 40x3 < 700

Данная задача относится к задачам линейного программирования, значит, ее можно решить с помощью симплекс – метода.

Решение:

Табл. 1

Вi Х1 Х2 Х3 bi/air
Х4 300 5 8 15 20
Х5 700 20 30 40 17,5
F(x) 55 80 120

Табл. 2

Вi Х1 Х2 Х5 bi/air
Х4 37,5 -2,5 -3,25 -0,375
Х3 17,5 0,5 0,75 0,025
F(x) -2100 -5 -10 -3

Ответ:

Max F(x) = 2100

X1opt = 0

X2opt = 0

X3opt = 17,5

Схема движения информации

Листингпрограммы:

Private Sub CommandButton1_Click()

Dim a (1 To 3, 1 To 4) As Single

Dim x (1 To 3) As Single

On Error Resume Next

a (1, 1) = Text1. Text

a (1, 2) = Text2. Text

a (1, 3) = Text3. Text

a (1, 4) = Text4. Text

a (2, 1) = Text5. Text

a (2, 2) = Text6. Text

a (2, 3) = Text7. Text

a (2, 4) = Text8. Text

a (3, 1) = Text9. Text

a (3, 2) = Text10. Text

a (3, 3) = Text11. Text

a (3, 4) = Text12. Text

If Text1. Text = «» And Text2. Text = «» And Text3. Text = «» And Text4. Text = «» Then

MsgBox «Введитезначения»

GoTo x4

End If

Do Until a (3, 1) < 0 And a (3, 2) < 0 And a (3, 3) < 0 And a (3, 4) < 0

c = 0

For j = 1 To 4

i = 3

b = a (i, j)

If b >= c Then

c = b

j1 = j

Else

GoTo x1

End If

x1:

If c <= 0 And j = 4 Then

MsgBox «Процесс решения окончен. Для просмотра результатов нажмите ОК.»

GoTo x2

End If

Next j

If a (1, j1) < 0 And a (2, j1) < 0 Then

MsgBox «Оптимального решения не существует»

GoTo x3

End If

dmin = 100000

For i = 1 To 2

d1 = a (i, 1) / a (i, j1)

If dmin > d1 Then

dmin = d1

i1 = i

End If

Next i

ra = a (i1, j1)

For i = 1 To 3

For j = 1 To 4

If i <> i1 And j <> j1 Then

a (i, j) = ((a (i, j) * ra) – (a (i, j1) * (a (i1, j)))) / ra

End If

Next j

Next i

For i = 1 To 3

For j = 1 To 4

If i = i1 And j = j1 Then

a (i, j) = 1 / ra

End If

If i = i1 And j <> j1 Then

a (i, j) = a (i, j) / ra

End If

If j = j1 And i <> i1 Then

a (i, j) = a (i, j) / (-ra)

End If

Next j

Next i

x2:

x (j1 – 1) = a (i1, 1)

ListBox1. AddItem («x» & (j1 – 1) &» = " & x (j1 – 1))

fmax = (a (3, 1))

Loop

x3:

ListBox1. AddItem («F(x) max» &» = " & – (fmax))

Text1. Text = a (1, 1)

Text2. Text = a (1, 2)

Text3. Text = a (1, 3)

Text4. Text = a (1, 4)

Text5. Text = a (2, 1)

Text6. Text = a (2, 2)

Text7. Text = a (2, 3)

Text8. Text = a (2, 4)

Text9. Text = a (3, 1)

Text10. Text = a (3, 2)

Text11. Text = a (3, 3)

Text12. Text = a (3, 4)

x4:

End Sub

Private Sub CommandButton2_Click()

Text1. Text = «»

Text2. Text = «»

Text3. Text = «»

Text4. Text = «»

Text5. Text = «»

Text6. Text = «»

Text7. Text = «»

Text8. Text = «»

Text9. Text = «»

Text10. Text = «»

Text11. Text = «»

Text12. Text = «»

ListBox1. Clear

End Sub

Внешний вид программы и результат

Заключение

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

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