Системний аналіз об’єктів та процесів комп’ютеризації
Курсовая работа, 23 Января 2011, автор: пользователь скрыл имя
Краткое описание
В даній роботі розроблено передескізний проект гнучкої виробничої системи, а саме, визначено оптимальну кількість верстатів і накопичувачів, яка забезпечує максимальний прибуток при заданих початкових умовах.
Содержание работы
Вступ ……………………………………………………………. 5
1. Опис ГВС та постановка задачі …………………………...…….. 6
1. Опис ГВС ……………………………………………… 6
2. Постановка задачі ……………………………………….. 9
2. Декомпозиція, агрегування та побудова математичної моделі ГВС 10
1. Декомпозиція та агрегування ГВС …………………………. 10
2. Побудова математичної моделі ГВС ……………….….. 13
3. Вибір оптимальних параметрів ГВС ………………………….. 16
1. Побудова цільової функції ГВС ………………………..… 16
2. Вибір оптимальних параиетрів ГВС …………………… 17
Висновки …………………………………………………………….. 19
Список використаних джерел …………………………………………. 20
Додатки ……………………………………………………………… 21
А – Лістинг програми оптимізації підприємства (гнучкої виробничої лінії) 21
Б – Скріншот результату роботи програми ……………………………. 23
Содержимое работы - 1 файл
KursRobota.doc
— 293.50 Кб (Скачать файл)
Додаток А
program kurs;
{$N+}
uses crt, funct;
const
Lambda = 71.51;
Tsr = 0.151;
d = 5.7;
Vv = 3.7;
Vn = 1.7;
e = 10;
n = 20;
k = 10;
var
i, j, m, kmax, nmax: integer;
Pmn, Ro, max, commax:
double;
begin
max:= 0;
clrscr;
write('n\k ');
for j:= 1 to k do write('| ',j,' ');
writeln;
for i:= 1 to n do
begin
writeln;
write(i:4);
for j:= 1 to k do
begin
m:= e*j;
Pmn:= d*Lambda*AbsSkip(i, m, Lambda, Tsr)- Vv*i- Vn*j;
if Pmn > max then
begin
max:= Pmn;
kmax:= j;
nmax:= i;
end;
write('|', Pmn:6:2);
end;
writeln;
end;
writeln;
write('n - machines - ');writeln(nmax);
write('k - stores - ');writeln(kmax);
write('P - income - ');writeln(max:8:2);
end.
unit funct;
{$N+}
interface
function pow(x: double; n: integer): double;
function RoNaFact(r: double; n: integer): double;
function SumRoNaFact(r: double; n, m: integer): double;
function AbsSkip(n, m: integer; Lambda, Tsr: double): double;
implementation
function pow(x: double; n: integer): double;
var
i: integer;
p: double;
begin
if n = 0 then
pow:= 1
else
begin
p:= 1;
for i:= 1 to n do p:= p * x;
pow:= p;
end;
end;
function RoNaFact(r: double; n: integer): double;
var
i: integer;
f: double;
begin
if n = 0 then
RoNaFact:= 1
else
begin
f:= 1;
for i:= 1 to n do f:= f * r / i;
RoNaFact:= f;
end;
end;
function SumRoNaFact(r: double; n, m: integer):double;
var
i: integer;
s, k: double;
begin
s:= 0;
k:= r/n;
for i:= 0 to n do
s:= s + RoNaFact(r, i);
SumRoNaFact:= s + RoNaFact(r, i)*r/n*(1-pow(k, m))/(1-k);
end;
function AbsSkip(n, m: integer; Lambda, Tsr: double): double;
var
Ro: double;
begin
Ro:= Lambda * Tsr;
AbsSkip:= 1 - pow(Ro, m)/pow(n, m)*RoNaFact(Ro, n)/SumRoNaFact(Ro, n, m);
end; end.
Додаток Б
n\k | 1 |
2 | 3 | 4 | 5
| 6 | 7 | 8 |
9 | 10
1| 32.35| 30.65|
28.95| 27.25| 25.55| 23.85| 22.15| 20.45| 18.75| 17.05
2| 66.40| 64.70|
63.00| 61.30| 59.60| 57.90| 56.20| 54.50| 52.80| 51.10
3|100.45| 98.75|
97.05| 95.35| 93.65| 91.95| 90.25| 88.55| 86.85| 85.15
4|134.49|132.79|131.09|129.39|
5|168.53|166.84|165.14|163.44|
6|202.52|200.89|199.19|197.49|
7|236.25|234.93|233.24|231.54|
8|269.04|268.91|267.28|265.59|
9|299.24|302.20|301.20|299.61|
10|324.13|331.69|333.10|332.
11|341.20|350.49|353.42|354.
12|350.14|356.41|356.98|356.
13|352.95|355.38|354.29|352.
14|352.18|352.27|350.70|349.
15|349.68|348.68|347.01|345.
16|346.45|345.00|343.31|341.
17|342.92|341.31|339.61|337.
18|339.28|337.61|335.91|334.
19|335.60|333.91|332.21|330.
20|331.90|330.21|328.51|326.
n - machines - 12
k - stores - 3
P - income - 356.98
Рисунок
1 – Скрін результату роботи програми