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

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

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

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

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

Розв'язок нелінійних рівнянь шляхом видалення вже знайдених коренів в середовищі програмування delphi

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

  1. Панель інструментів: містить чотири поля типу TEdit, два з яких відповідають за значення кінців проміжоку на якому відшукуються корені рівняння і два що залишилось, відповідають за точність обчислювального процесу та функцію, що міститься в лівій частині розв'язуваного рівняння; дві кнопки типу TButton одна з яких безпосередньо реалізує алгоритми знаходження коренів та друга — видаляє всі введені користувачем значення і готує проект до нового прикладу; один компонент типу TMemo, головним призначенням якого є вивід результату роботи програми.
  2. Область графічного представлення: містить компонент типу TChart, який відображає графік розв'язуваного рівняння і з допомогою якого можна провірити правельність роботи програми.

Після того, як призначення кожного з елементів форми проекту відомо, провіримо його роботу на конкретному прикладі, а саме знайдемо всі корені рівняння на проміжку і в якості критерію закінчення ітераційного процесу, візьмемо число .

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

Знаходження всіх дійсних коренів алгебраїчного рівняння шляхом видалення вже знайдених коренів

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

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

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

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

Знаходження власних значень тридіагонольної симетричної матриці методом половинного ділення

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

Отже, нехай маємо деяку тридіагональну матрицю виду:

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

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

Розв'язок алгебраїчних рівнянь методом послідовних наближень з використанням схеми Горнера

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

відбираємо три останніх члена і знаходимо розв'язок отриманого квадратного рівняння . Якщо корені цього рівняння дійсні, то перерходимо до рішення рівняння , після чого, за перше наближення кореня рівняння (1) приймаємо розв'язок даного рівняння, тобто:

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

Знаходження власних значень та власних векторів матриці методом вичерпування в середовищі delphi

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

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

Рішення задач на власні значення методом вичерпування

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

Поряд з матрицею Метод вичерпування, розглянемо ще одну матрицю Метод вичерпування, де Метод вичерпування — перше власне значення матриці Метод вичерпування; Метод вичерпування — відповідний власний вектор матриці Метод вичерпування, розглядуваний як матриця-стовпець; Метод вичерпування — власний ветор, явий відповідає власному значенню Метод вичерпування транспонованої матриці до Метод вичерпування, розглядуваний як матриця-рядок, причому вектори Метод вичерпування та Метод вичерпування нормовані таким чином, що їх скалярний добуток дорівнює одиниці:

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

Наступна сторінка »