Розв'язок задачі нелінійного програмування методом Франка-Вульфа в середовищі програмування delphi

Програма призначена для знаходження розв'язку задачі нелінійного програмування і використовує для цього алгоритм методу Франка-Вульфа. Характерною ознакою розв'яуваних з допомогою даного методу, а відповідно і розглядуваного delphi-проекту, задач є те, що їх система обмежень повинна містити тільки лінійні нерівності. Відмітимо, що завдяки такій особливості розв'язок вихідної задачі зводиться до рішення скінченного числа задач лінійного програмування.

Розглядати більш детально процес відшукання розв'яку нелінійних задач методом Франка-Вульфа в даному параграфі не будемо. Його, за бажанням, можна знайти перейшовши за посиланням Розв'язок задач нелінійного програмування з лінійними обмеженнями. А приступимо, до розгляду основних елементів головної форми проекту, та безпосереднь до розв'язку конкретної задачі.

Читати повністю

Знаходження розв'язку задачі нелінійного програмування методом Франка-Вульфа

Розглянемо ще один метод призначений для знаходження розв'язку задачі нелінійного програмування, а саме метод Франка-Вульфа, який відноситься до категорії градієнтних методів і процедура якого передбачає визначення оптимального плану шляхом перебору розв'язків, які є допустимими планами задачі. Розглянемо даний процес більш детально і припустимо, що нам необхідно відшукати максимальне значення функції мети:

при наступних обмеженнях:

Тобто, як Ви вже встигли помітити, характерною особливістю розв'язуваних з допомогою даного методу задач є те, що їх система обмежень повинна містити тільки лінійні нерівності. Ця особливість є основою для заміни в зоні досліджуваної точки нелінійної цільової функції лінійною, завдяки чому рішення вихідної задачі зводиться до послідовного рішення задач лінійного програмування.

Читати повністю

Метод множників Лагранжа. Розв'язок задачі нелінійного програмування з обмеженнями-рівностями

Ідея методу множників Лагранжа при знаходженні розв'язку задачі нелінійного програмування, полягає в заміні початкової задачі дещо простішою. Для цього цільову функцію замінюють іншою, з більшою кількістю змінних і яка включає в себе умови, що подані як обмеження. Після такого перетворення подальше розв'язування задачі полягає в знаходженні екстремуму нової функції, на змінні якої не накладено ніяких обмежень. Тобто від початкової задачі пошуку умовного екстремуму переходимо до задачі відшукання безумовного екстремального значення іншої функції, яке визначається з допомогою необхідної умови існування екстремуму. Тобто, для розв'язування задачі необхідно знайти вирази частинних похідних нової цільової функції за кожною змінною і прирівняти їх до нуля. В результаті отримаємо систему рівнянь. Її розв'язок визначає так звані стаціонарні точки, серед яких є і шукані екстремальні значення функції.

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

Читати повністю

Графічний метод. Знаходження розв'язку задачі нелінійного програмування графічним методом

Перш ніж приступити до розгляду методу, нагадаємо, що задача нелінійного програмування може бути розв'язана графічно лише в тому випадку, коли число невідомих в задачі такого типу не перевищує два. Тобто коли необхідно знайти найбільше чи найменше значення цільової функції при наступних обмеженнях:

Після того, як формулювання задачі нелінійного програмування з двома невідомими та в загальному вигляді відоме, перейдемо до розгляду основних етапів її розв'язку з допомогою графічного методу:

Читати повністю

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

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

Нехай для деякої виробничої системи необхідно визначити план випуску продукції, за умови найкращого способу використання ресурсів системи. Відомі загальні запаси кожного ресурсу, норми витрат кожного ресурсу на одиницю продукції та ціна реалізації одиниці виготовленої продукції. Критерії оптимальності можуть бути різноманітними, наприклад максимізація виручки від реалізації продукції. Така умова подається лінійною залежністю загальної виручки від обсягів проданого товару та ціни одиниці продукції.

Однак, загально відомим є факт, що за умов ринкової конкуренції питання реалізації продукції є досить складним. Обсяг збуту кінцевої продукції визначається перш за все її ціною, отже в якості цільової функції доцільно розглядати максимізацію не всієї виготовленої, а лише реалізованої продукції. Тоді необхідно визначити також і оптимальне значення ціни одиниці продукції, при якій обсяг збуту буде максимальним. Для цього, її потрібно ввести в задачу як невідому величину, при цьому обмеження задачі мають враховувати зв'язки між ціною, рекламою та обсягами збутої продукції. Цільова функція міститиме добуток двох невідомих величин (оптимальна ціна одиниці продукції та оптимальна кількість відповідного виду продукції), а отже є нелінійною. Таким чином приходимо до задачі нелінійного програмування.

Читати повністю

Розв'язок задачі лінійного програмування двоїстим симплекс методом в середовищі програмування delphi

Програма призначена для знаходження розв'язку задачі лінійного програмування, при якому значення цільової функції досягає свого максимуму і використовує для цього двоїстий симплекс методу.  Відмітимо, що основна відмінність даного методу від симплекс методу полягає в тому, що при використанні останнього — значення стовпця вільних членів задачі, повинні задовільняти умові додатності. Тоді, як двоїстий симплекс метод використовується в тому випадку, коли серед вільних членів системи обмежень існують такі, що приймають від'ємні значення.

Далі, перейдемо до детального розгляу кожного з елементів головної форми проекту, після чого, з його допомогою, знайдемо розв'язок конкретної задачі лінійного програмування. Отже, головне вікно програми ділиться на три частини:

Читати повністю

Розв'язок задачі цілочисельного програмування графічним методом в середовищі Delphi

Графічний метод розв'язання задач цілочисельного програмування, як і для випадку задачі лінійного програмування, має обмежену область застосування, бо зазвичай використовується для задач з двома змінними. Тобто, кожна з нерівностей в системі обмежень задач такого типу, визначає на координатній площині graficnuj_metod_cp_delphi3 деяку півплощину, а система нерівностей в цілому — перетин відповідних півплощин. Сукупність точок перетину даних півплощин називається областю допустимих рішень або багатокутником розв'язків. Даний багатокутник завжди являє собою опуклу фігуру, тобто має наступну властивість: якщо дві точки graficnuj_metod_cp_delphi4 і graficnuj_metod_cp_delphi5 належать цій фігурі, то і весь відрізок graficnuj_metod_cp_delphi6 належить їй.

Розглянемо задачу цілочисельного програмування, та спробуємо розв'язати її використовуючи delphi-програму, яка реалізує даний метод. Норми витрат сировини на виробництво одного товару кожного виду, ціна одиниці товару а також загальна кількість сировини наведені в наступній таблиці:

Читати повністю

« Попередня сторінкаНаступна сторінка »