Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
11111.doc
Скачиваний:
3
Добавлен:
27.08.2019
Размер:
1.35 Mб
Скачать

57. Алгоритм направленого випадкового пошуку при вирішенні задачі математичного програмування без обмежень.

Алгоритм:

1)Задати або визначити початкові значення х1,х2, ..., хn і довжину кроку n.

2)Визначити початкове значення цільової ф-ції у.

3)Повторювати :

-визначити випадкові значення х=Rz, z - випадкові рівномірні розподілені числа (z від -1 до +1 )

-визначити нове значення критеріальної ф-ції у2.

-Якщо значення ф-ції покращилися, прийняти х=х+х, у1=у2.

-Кінець циклу.

4)Вивід результатів.

58. Вирішення задачі нелінійного програмування без обмежень методом Монте-Карло (табличний спосіб реалізації направленого випадкового пошуку).

у=f(x1...xn)=100(x2-x1^2)^2+(1-x1)^2

Центр пошуку

h

Х1

Х2

У

Формула

експ

Х1

Х2

У фільтр

x1=x1+h*z1

x2=x2+h*z2

Формула

Z1

Z2

md

md


Послідовність дій:

1) згенерувати випадкові числа

2) ввести центр та крок h.

3) Встановити фільтр

Якщо не знайшли кращого рішення: або нові числа, або змін крок. Якщо знайшли - копіюємо значення в центр пошуку.

59. Програмна реалізація алгоритму направленого випадкового пошуку при вирішенні задачі математичного програмування без обмежень).

Sub Find (F As Boolean)

Dim i As Integer

Dim iKilX As Integer

Static Xmin() As Single

Dim X() As Single

Dim I As Integer

Static IKilEx As Long

Static fMin As Single

Dim fFun As Single

Dim h As Single

Dim Z() As Single

H=range(«4»).Value

IkilEx=Range(«5»)

For i=0 To 10

If Cells(7+i,3).Value= «» Then

IkilEx=i

Exit For

Else

End If

Next

ReDim X(iKilX)

ReDim Xmin(iKilX)

ReDim Z(iKilX)

If F= True Then

For i=0 to iKilX

Cells(6+i,6).Value= Cells(6+i,3).Value

Next

fMin=Range(«C6»).Value

End If

Randomize

For i=0 to iKilX-1

X(i)= Cells(7+i,3).Value

Z(i)=1+(1+1)*RND

Xmin(i)= Cells(7+i,6).Value

Next

fFun=Range(«C6»).Value

if fFun<fMin Then

6fMin=fFun

For i=0 to iKilX-1

Xmin(i)=X(i)

Next

End If

Next

Range(«g6»).Value=Range(«F6»).Value

Range(«F6»).Value=fMin

For i=0 to iKilX-1

Cells(7+i,3).Value=Cells(7+i,6).Value

Next

For i=0 to iKilX-1

Cells(7+i,6).Value=Xmin(i)

Next

End Sub

60. Модель вибору технологічного процесу виготовлення виробів (табличний спосіб реалізації направленого випадкового методу).

Маємо 2 тех процеси виготовлення виробів. Річний план вир-ва виконати, використовуючи вільні виробничи потужності заготівел, механ, складського цехів.

Потрібно визначити оптимальну кількість виробів, виготовлених кожним способом при умові виконання програми вир-ва з мін витратами. Х1 - к-ть виробів (1 спосіб), х2 - к-ть виробів (2 сп), витрати на виготовлення 1 виробу:

1 сп - 140*1^-0.07

2 сп - 150*2^-0.14

Річний план вир-ва 1000 шт, трудомісткість виготовлення залежить від обсяга вир-ва.

Цех

Мах потужність

Трудомісткість

1 спосіб

2 спосіб

Заг Мех Склд

3200 16000 5000

5*1^-0.1 24*1^-0.06 8*1^-0.12

10*2^-0.15 6*2^-0.07 14*2^-0.11

Y=140*1^-0.07*x1+150*2^-0.14*x2

x1+x2=1000

5*1^-0.1*x1+10*2^-0.15*x2=3200

24*1^-0.06*x1+6*2^-0.07*x2=16000

8*1^-0.12*x1+14*2^-0.11*x2=5000

x1,x2=0

Кіл-ть виробів

витрати

Обмеження по потужності

Х1

Х2

У

заготів

механ

склад

Заготів, мех, склад - формули, потім на основі обмежень, фільтруємо і знаходимо оптимальну точку.

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