Задача СП з розв’язувальним розподілом за умови детермінованих параметрів умов обмежень. Дискретний розв’язувальний розподіл.

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук

Загальна математична постановка задачі математичного програмування

Типову задачу математичного програмування в детермінованій постановці можна сформулювати так:

Визначити вектор Неможливо розібрати вираз (невідома помилка): X=(x_1, x_2, x_3, ..., x_n) , для компонент якого:


Неможливо розібрати вираз (невідома помилка): max(min)F=f(X) ,

Неможливо розібрати вираз (невідома помилка): q_i(X)\leq0(i=1..m) ,

Неможливо розібрати вираз (невідома помилка): X\geq0 .


Якщо функції в даній задачі, крім керованих параметрів Неможливо розібрати вираз (невідома помилка): X , залежать ще й від деяких випадкових величин Неможливо розібрати вираз (невідома помилка): \omega=(\omega_1, \omega_2, \omega_3, ..., \omega_n) , то матимемо задачу стохастичного програмування:


Неможливо розібрати вираз (невідома помилка): max(min)F=f(X, \omega) ,

Неможливо розібрати вираз (невідома помилка): q_i(X, \omega)\leq0(i=1..m) ,

Неможливо розібрати вираз (невідома помилка): X\geq0, \omega\in\Omega .


Де Неможливо розібрати вираз (невідома помилка): \omega

— простір подій Неможливо розібрати вираз (невідома помилка): \Omega

.

Залежно від можливості здобути та врахувати інформацію про детермінованості (стохастично-сті) функцій Неможливо розібрати вираз (невідома помилка): f(X, \omega), q_i(X, \omega)

задачі, постановки задач стохастичного програмування можуть містити:

а) стохастичні коефіцієнти цільової функції та детерміновані обмеження;

б) детерміновані коефіцієнти цільової функції та стохастичні вільні члени і коефіцієнти системи обмежень;

в) стохастичні коефіцієнти цільової функції, вільні члени і коефіцієнти системи обмежень.


Конкретні постановки задач стохастичного програмування мають свою специфіку. Перш за все необхідно враховувати таке:

1. Вектор Неможливо розібрати вираз (невідома помилка): X

є детермінованим чи випадковим. Якщо вектор Неможливо розібрати вираз (невідома помилка): X
детермінований, то він не залежить від випадкових параметрів моделі. Якщо він випадковий, то тоді Неможливо розібрати вираз (невідома помилка): X(\omega)
залежить від випадкових параметрів.

2. Як розуміти максимізацію (мінімізацію) цільової функції — як абсолютну (для всіх значень Неможливо розібрати вираз (невідома помилка): \omega\in\Omega ), чи як максимізацію її математичного сподівання або деякої іншої ймовірнісної характеристики цієї функції (моди, медіани), або мінімізації середньоквадратичного відхилення. Наприклад, що краще, мати платню 500 ± 200 чи 450 ± 50. У першому випадку платня може змінюватись в межах 300 - 700, у другому лише 400 - 500 грн.

3. Як виконуються обмеження — абсолютно для всіх Неможливо розібрати вираз (невідома помилка): \omega\in\Omega , чи в середньому або з допустимими порушеннями, ймовірність яких мала.


При постановці задач стохастичного програмування слід виходити не тільки з математичних міркувань, а й з економічного змісту та евристичних міркувань. Наприклад, детермінованість чи стохастичність вектора Неможливо розібрати вираз (невідома помилка): X

визначається із сутності економічних, технологічних процесів, тощо. Для сільськогосподарського підприємства вектор, що визначатиме площі посіву рослинницьких культур, обов’язково має бути детермінованим, якщо ж шуканий вектор для того ж підприємства за тих самих  умов визначатиме, наприклад, обсяги кредитів, його компоненти мають бути стохастичними величинами, бо достеменно невідомо, чи будуть вони отримані. Методи розв’язування стохастичних задач ділять на дві групи — прямі та непрямі.

Прямі методи використовуються для розв’язування задач стохастичного програмування, коли існують способи побудови функцій Неможливо розібрати вираз (невідома помилка): f(X,\omega)

) і Неможливо розібрати вираз (невідома помилка): g_i(X,\omega)\leq0, i=1..m
на базі інформації про параметри Неможливо розібрати вираз (невідома помилка): \omega

. Непрямими є методи зведення стохастичної задачі до задачі лінійного чи нелінійного програмувань, тобто, перехід до детермінованого аналогу задачі стохастичного програмування.


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

У задачах першого класу з детермінованими параметрами умов потрібно обчислити розподіл Неможливо розібрати вираз (невідома помилка): F_x

 вектора Неможливо розібрати вираз (невідома помилка): X
при якому:


Неможливо розібрати вираз (невідома помилка): M\phi_0 (x) =\int \phi_0 dF_x \rightarrow \infty , (1)

Неможливо розібрати вираз (невідома помилка): M\phi_i (x) =\int \phi_i dF_x \leq 0, i=1,2, ..., m , (2)

Неможливо розібрати вираз (невідома помилка): x\in X , (3)


Де Неможливо розібрати вираз (невідома помилка): X

- задана множина в n-вимірному евклідовому просторі.

Введемо нові змінні:


Неможливо розібрати вираз (невідома помилка): y = \phi_i (x) , (4)


Відображення (4) переводить множину Неможливо розібрати вираз (невідома помилка): X \subset R^n , в Неможливо розібрати вираз (невідома помилка): X \subset R^{m+1} .

В цьому випадку Неможливо розібрати вираз (невідома помилка): Y

- не випукла і незамкнута множина. 

Позначемо через Неможливо розібрати вираз (невідома помилка): coY , випуклу множину Неможливо розібрати вираз (невідома помилка): Y .

Задача (1) - (3) може бути записана в вигляді:


Неможливо розібрати вираз (невідома помилка): y_0 \rightarrow \infty , (5)

Неможливо розібрати вираз (невідома помилка): y_i \le 0, i = 1..m , (6)

Неможливо розібрати вираз (невідома помилка): y = (y_0, y_1, ... , y_m)\in coY , (7)


Згідно теореми Каретеодорі для побудови випуклої оболонки множини Неможливо розібрати вираз (невідома помилка): \ Y

із  Неможливо розібрати вираз (невідома помилка): \ m+1 
- вимірного простору потрібно загалом не більш Неможливо розібрати вираз (невідома помилка): \ m+2 
точок Неможливо розібрати вираз (невідома помилка): \ y \in  Y 

. Це значить, що Неможливо розібрати вираз (невідома помилка): \ coY

може бути представлена в вигляді:


Неможливо розібрати вираз (невідома помилка): coY= {\sum^{m+1}_{k=0}\phi_{i}(x_{k})p_{k}}

Неможливо розібрати вираз (невідома помилка): i = 0, 1, ..., m ,

Неможливо розібрати вираз (невідома помилка): p_k \geq 0 ,

Неможливо розібрати вираз (невідома помилка): \sum^{m+1}_{k=0} p_{k}=1 ,

Неможливо розібрати вираз (невідома помилка): x_k\in X .


Нас цікавлять тільки точки Неможливо розібрати вираз (невідома помилка): y \in Y \subset R^{m+1} , одна з координат яких Неможливо розібрати вираз (невідома помилка): y_0

досягає свого екстремального значення. Такі точки відповідно з наслідком теореми Каратеодорі можуть бути представлені як випуклі комбінації не більш ніж Неможливо розібрати вираз (невідома помилка): m+1
векторів Неможливо розібрати вираз (невідома помилка): x_k \in X
і  Неможливо розібрати вираз (невідома помилка): m+1
чисел Неможливо розібрати вираз (невідома помилка): p_k

, Неможливо розібрати вираз (невідома помилка): (k = 1..m) , Неможливо розібрати вираз (невідома помилка): p_k \geq 0 , Неможливо розібрати вираз (невідома помилка): \sum^{m}_{k=0} p_{k}=1 .


Таким чином, задача (1) - (3) еквівалентна наступній скінченномірній задачі:

Потрібно обчислити вектори Неможливо розібрати вираз (невідома помилка): x_{k}

і числа Неможливо розібрати вираз (невідома помилка): p_{k} 

, які визначають нижню межу функціонала


Неможливо розібрати вираз (невідома помилка): {\sum^{m}_{k=0} \phi_{0}(x_{k})p_{k}}

(8)


За умови:


Неможливо розібрати вираз (невідома помилка): {\sum^{m}_{k=0} \phi_{i}(x_{k})p_{k} \leq 0, i = 1, ..., m}

(9)

Неможливо розібрати вираз (невідома помилка): x_{k}\in X, p_{k} \geq 0, k = 0,1, ..., m, \sum^{m}_{k=0} p_{k}=1 , (10)


Вектори Неможливо розібрати вираз (невідома помилка): x\ast_{k}

і числа Неможливо розібрати вираз (невідома помилка): p\ast_{k} 

, що становить оптимальний план задачі (8) - (10), визначають дискретний розв'язувальний розподіл вихідної задачі (1) - (3).

Для розв'язку задачі (8) - (10) використаємо ітеративний метод. Зафіксуємо довільним чином Неможливо розібрати вираз (невідома помилка): m+1

точку Неможливо розібрати вираз (невідома помилка): x_{k}\in X, k = 0,1, ..., m

, і розв'яжемо отриману при цьому задачу лінійного програмування (8) - (10).

Нехай Неможливо розібрати вираз (невідома помилка): \ p^{(1)}=(p_{0}^{(1)}, ..., p_{m}^{(1)}) , i Неможливо розібрати вираз (невідома помилка): \lambda^{(1)}=(\lambda_{0}^{(1)}, ..., \lambda_{m+1}^{(1)}) , - розв'язок прямої і двоїстої задачі. Введемо в базис задачі новий розширений вектор умов Неможливо розібрати вираз (невідома помилка): (\psi_{0}(x), \psi_{1}(x),...,\psi_{m}(x),1)^T

так, щоб значення цільового функціоналу (8) при цьому зменшилося.

Відповідна точка Неможливо розібрати вираз (невідома помилка): \ x\in X

повинна задовольняти умову:


Неможливо розібрати вираз (невідома помилка): \sum^{m}_{k=0}\lambda_{i} ^{(1)}\phi_{i}{x}+\lambda_{m+1} ^{(1)}< -\psi_{0}(x)

.


Нову точку Неможливо розібрати вираз (невідома помилка): x_{m+1}

можна обчислити в результаті розв'язку допоміжної задачі:


Неможливо розібрати вираз (невідома помилка): \psi_{0}(x)=\sum^{m}_{k=0}\lambda_{i} ^{(1)}\phi_{x}\longrightarrow min ,

Неможливо розібрати вираз (невідома помилка): x\in X .


Обчислив Неможливо розібрати вираз (невідома помилка): x_{m+1} , знаходим новий розв'язок лінійної задачі (8) - (10) і двоїстої до неї і т.д.

Зрозуміло, що для реалізації інеративного методу достатньо на кожній ітерації зберігати в пам'яті не більш Неможливо розібрати вираз (невідома помилка): \ m+2

точок Неможливо розібрати вираз (невідома помилка): \ x_{k}

.

Виконала: Юрченко Тетяна Сергіївна

Редагували: Лисенко Наталія , Токарь Володимир