Побудова емпіричної формули методом найменших квадратів

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    249,87 Кб
  • Опубликовано:
    2015-02-05
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Побудова емпіричної формули методом найменших квадратів















КУРСОВА РОБОТА

Побудова емпіричної формули методом найменших квадратів

КРМБ.011151.00.00.00

Завдання до курсової роботи

Знайти емпіричну формулу для залежності між X таY , поданої у табличній формі.

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

Таким чином, для завдання на курсову роботу одержуємо наступну таблицю:

Таблиця 1.1 - Таблиця значень

Xi

10,0

40,0

60,0

100,0

130,0

150,0

175,0

200,0

Yi

0,67

0,76

0,85

0,97

1,07

1,18

1,27

1,39

ЗМІСТ

ВСТУП

. МЕТОД НАЙМЕНШИХ КВАДРАТІВ

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

.2 Вибір емпіричної формули

.3 Обчислення параметрів емпіричної формули методом найменших Квадраті

. МЕТОДИ РОЗВ’ЯЗУВАННЯ СИСТЕМ ЛІНІЙНИХ РІВНЯНЬ

.1 Метод Крамера

.2 Метод оберненої матриці

.3 Розв’язування систем лінійних рівнянь на ПК

. ПОБУДОВА ЕМПІРИЧНОЇ ФОРМУЛИ

.1 Вибір двох апроксимуючих функцій

.1.1 Лінійна функція

.1.2 Квадратична функція

.2 Розрахунки у середовищі MS Excel

.2.1 Розрахунки для лінійної функції

.2.2 Розрахунки для квадратичної функції

.3 Розрахунки у середовищі MS Visual Studio (Мовою С#)

ВИСНОВКИ

ПЕРЕЛІК ПОСИЛАНЬ

ВСТУП

Курсова робота з дисципліни “Інформатика та комп’ютерна техніка” за своїм характером є комплексною, з елементами наукового дослідження.

Метою виконання курсової роботи є використвня відомих та широко застосовуючи комп’ютерних порграм програм (текстовий редактор MS Word, табличний процесор MS Excel, мова програмування C#(Sharp).

При виконанні курсової роботи студенти повинні вміти:

–    Мати базові навики у роботі з MS Word: копіювання рисунків, вставка формул, та редагування тексту ;

–    виконувати розрахунки у середовищі MS Excel та будувати діаграми на основі табличних даних;

–    створювати програми мовою програмування C#;

– формувати інтегрований документ шляхом впровадження об’єктів, створених у різних додатках Windows (на основі технологій DDE та OLE).

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

Microsoft Word (повна назва Microsoft Office Word, часто вживаються - MS Word, WinWord або просто Word) - текстовий процесор, що випускається фірмою Microsoft, застосунок входить до складу офісного пакету «Microsoft Office». Перша версія, «Multi Tool Word», була написана для Xenix <#"786852.files/image001.gif"> вибирають апроксимуючу (наближену) функцію. Із множини функцій певного вигляду шукають  у вигляді, наприклад, рівняння прямої лінії  або гіперболи , прагнучи, щоб функція  якнайточніше наближалась до  на деякому визначеному інтервалі , хоча й приблизний), який зв’язує у вигляді функціональної залежності дві ознаки того чи іншого явища дійсності. Це в свою чергу дозволяє використовувати для дослідження цих явищ розроблені методи математичного аналізу.

1.2 Вибір емпіричної формули

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

. Лінійна функція . Графіком цієї функції є пряма лінія, яка, залежно від значень параметрів  та  має різне положення в системі координат (рисунок 1.1).

Рисунок 1.1 - Лінійна функція

Рисунок 1.2 - Степенева функція

2. Степенева функція . Можливі графіки цієї функції при різних значеннях параметрів  та  зображені на рисунку 1.2.

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

. Гіперболічна функція . Ця функція задає сукупність кривих (рисунок 1.4), асимптотами яких є вісь  та пряма, паралельна осі  (якщо , то однією з асимптот є сама вісь ).

. Логарифмічна функція . Можливі графіки цієї функції при різних значеннях параметрів  та  зображені на рисунку 1.5.

. Квадратний тричлен . Графіком цієї функції є парабола, яка симетрична відносно прямої , паралельної осі  (рисунок 1.6). При  крива звернена опуклістю вниз, при  - опуклістю уверх (при  крива вироджується в пряму лінію).

Рисунок 1.3 - Показникова функція

Рисунок1.4 - Гіперболічна функція

Рисунок 1.5 - Логарифмічна функція

Рисунок 1.6 - Квадратична функція

1.3 Обчислення параметрів емпіричної формули методом найменших квадратів

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

Нехай функція , яка отримана експериментальним шляхом, задається таблицею 1.1.

Таблиця 1.1 - Таблиця значень функції

¼





¼






Для кожної точки  обчислимо різницю між фактичним значенням функції  та значенням, обчисленим за апроксимуючою залежністю

.

Величина цього відхилення характеризує степінь "близькості" функцій  та  в точці .

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


Якщо  визначається параметрами , , , …, то найкращі значення цих параметрів (в загальному випадку) шукають як розв’язки системи нормальних рівнянь:

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

). Апроксимуюча функція є лінійною .

Для визначення параметрів  та  за методом найменших квадратів маємо наступну систему нормальних рівнянь:

                    (1)

Розв'язок цієї системи відносно невідомих параметрів  та  дає найкращі значення цих параметрів.

). Апроксимуюча функція є степеневою .

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

             (2)

Розв'язком цієї системи рівнянь є значення параметрів  та . Оптимальне значення параметра  визначимо за формулою:

.                (3)

). Апроксимуючою є показникова функція .

Прологарифмуємо обидві її частини:

Позначивши  одержимо лінійну функцію . Оскільки змінні  та  зв'язані лінійною залежністю, то для обчислення оптимальних значень параметрів  та  використовуємо систему нормальних рівнянь (1). Враховуючи введені позначення, маємо:

                (4)

Розв'язком цієї системи рівнянь є значення параметрів  та , а оптимальні значення параметрів  та  визначимо за формулами:

                 (5)

). Апроксимуючою є гіперболічна функція .

Заміною залежність між y та  зводиться до лінійної функції . Для обчислення значень параметрів  та  маємо наступнy систему нормальних рівнянь:

                (6)

5). Апроксимуючою є логарифмічна функція

Заміною залежність між  та зводиться до лінійної . Для обчислення значень параметрів  та  маємо наступну систему нормальних рівнянь:

                 (7)

6). Апроксимуючою функцією є квадратний тричлен

.

Для визначення значень параметрів , ,  за методом найменших квадратів отримуємо наступну систему нормальних рівнянь:

                      (8)

Розв’язок цієї системи рівнянь дає найкращі значення , , .

2. МЕТОДИ РОЗВ’ЯЗУВАННЯ СИСТЕМ ЛІНІЙНИХ РІВНЯНЬ

2.1 Метод Крамера

Систему двох нормальних рівнянь можна розв'язати, користуючись методом Крамера. Нехай, наприклад, після обчислення всіх необхідних сум система нормальних рівнянь (1) набуває вигляду:

                       (9)

де

До аналогічної системи зводяться і системи (2), (4), (6), (7).

Для системи (9) обчислимо головний визначник  та допоміжні визначники  і :


За методом Крамера розв'язок системи рівнянь буде наступним:


Аналогічно розв’язуються системи трьох і більше лінійних рівнянь.

Нехай, наприклад, після обчислення всіх необхідних сум система трьох нормальних рівнянь (8) набуває вигляду:

 (10)

де

.

2.2 Метод оберненої матриці

Метод оберненої матриці полягає в наступному. Запишемо систему (10) у „матричній” формі:


де

Помноживши рівняння (11) на матрицю  обернену до матриці  отримаємо шуканий вектор  який і є розв’язком системи (11), а, отже, і системи (10):

                (12)

2.3 Розв’язування систем лінійних рівнянь на ПК

Розглянемо методи розв’язування систем лінійних рівнянь засобами мови C#, MS Excel. Реалізація методу Крамера на ПК будь-якими програмними засобами досить проста, оскільки всі обчислення зводяться до звичайних арифметичних дій. Що стосується методу оберненої матриці, то ключовим для його реалізації є обчислення матриці, оберненої до матриці коефіцієнтів при невідомих. Метод оберненої матриці доцільніше застосовувати при розв’язуванні систем лінійних рівнянь в середовищі MS Excel, оскільки в цих програмах є „вбудовані” засоби обчислення оберненої матриці. Так, наприклад, нехай потрібно розв’язати систему рівнянь (11).

Excel має стандартні функції МОБР (обчислення оберненої матриці) та МУМНОЖ (множення двох матриць), за допомогою яких розв’язок системи лінійних рівнянь можна записати у вигляді однієї формули. Так, якщо елементи матриці  записати в діапазоні А1:С3, а елементи стовпця  - в діапазоні D1:D3, то ця формула матиме вигляд:

=МУМНОЖ(МОБР(А1:С3);D1:D3).

3. ПОБУДОВА ЕМПІРИЧНОЇ ФОРМУЛИ

3.1 Вибір двох апроксимуючих функцій

Мій вибір двох функцій ґрунтувався виходячи з графіку 3.1 - Графіку заданої залежності. Порівняємо наш графік з іншими шістьма графіками заданих функцій.

Найбільше для нашого графіку підходять дві функції: лінійна функція і квадратична функція.

Рисунок 3.1 - Графік заданої залежності

3.1.1 Лінійна функція

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

–   Простота лінійної функції у використанні і відставлені даних.

–    Розв'язки при використанні лінійної функції є достатньо точними(В цьому я переконався при створенні програми на C#).

–    Графік лінійної функції можна легко прослідкувати.

3.1.2 Квадратний тричлен

Як було вище сказано, при розв’язку рівняння методом найменших квадратів, функція, яка буде мати найменший результат - достатньо точна. Квадратичний тричлен - досить точна функція, про це я переконався з розв’язків в MS Excel.

Функція має ряд переваг, а саме:

–   Ця функція дає найкращі значення при розв’язку.

–    Не дуже складна у використанні.

Отже, дві функції, вибрані мною, дають хорошу точність результатів і легкість у користуванні. Тому, раджу користуватися цими двома функціями.

.2 Розрахунки у середовищі MS Excel

.2.1 Розрахунки для лінійної функції

Проведемо всі необхідні розрахунки, припускаючи, що апроксимуючою функцією є лінійна функція .

Таблиця MS Excel з результатами розрахунків (методом Крамера) показана на рисунку 3.2. На рисунку 3.3 показана ця сама таблиця, в режимі формул.

Рисунок 3.2 - Розрахунок для лінійної функції в MS Excel.

Рисунок 3.3 - Розрахунок для лінійної функції в MS Excel (режим формул).

Графіки заданої та апроксимуючої лінійної функції, зображені на рисунку 3.4

Рисунок 3.4 - Графіки заданої та апроксимуючої (лінійної) функції.

На основі проведених розрахунків отримаємо емпіричну формулу , для якої значення суми квадратів відхилення дорівнює 0.0025.

3.2.2 Розрахунки для квадратного тричлена

Проведемо всі необхідні розрахунки, припускаючи, що апроксимуючою функцією є квадратний тричлен

Таблиця MS Excel з результатами розрахунків (методом Крамера) показана на рисунок 3.5. На рисунку 3.6. показана ця сама таблиця, в режимі формул.

Рисунок 3.5 - Розрахунок для квадратичної функції в MS Excel.

Рисунок 3.6 - Розрахунок для квадратичної функції в MS Excel (режим формул).

Графіки заданої та апроксимуючої функції - квадратного тричлена, виконані засобами MS Excel, подані на рисунку 3.7

Рисунок 3.7 - Графіки заданої та апроксимуючої (квадратного тричлена) функції (MS Excel).

На основі вище проведених розрахунків отримаємо наступну емпіричну формулу.

Для отриманої емпіричної формули значення суми квадратів відхилення дорівнює 0.0009.

Як ми переконались, дві функції є точними і мають використовуватись. Суми квадратів відхилень дорівнюють 0.0025 для лінійної функції і 0.0009 для квадратного тричлена.

3.3 Розрахунки у середовищі MS Visual Studio (мовою C#)

Розв’язок мовою C# має наступний вигляд:a = 0.0, b = 0.0, Sx = 0.0, Sx2 = 0.0, Sy = 0.0, Sxy = 0.0;i, N = 8;[] Yroz = new double[N];

// Оголошення та ініціалізація заданого масиву x[] masX = { 10.0, 40.0, 60.0, 100.0, 130.0, 150.0, 175.0, 200.0 };

// Оголошення та ініціалізація заданого масиву Y[] masY = { 0.67, 0.76, 0.85, 0.97, 1.07, 1.18, 1.27, 1.39 };[] opt = new double[6];S_linijna;(i = 0; i < N; i++)

{= Sx + masX[i];= Sx2 + Math.Pow(masX[i], 2);= Sy + masY[i];= Sxy + masX[i] * masY[i];

}= (Sx2 * Sy - Sx * Sxy) / (N * Sx2 - Math.Pow(Sx, 2));= (N * Sxy - Sx * Sy) / (N * Sx2 - Math.Pow(Sx, 2));.WriteLine("==== Апроксимуючою є лiнiйна функцiя ====");.WriteLine("a= " + "{0:f4}", a);.WriteLine("b= " + "{0:f4}", b);.WriteLine("Формула має вигляд:");.Write("y= " + "{0:f4}", a); Console.Write(" +" + "{0:f4}", b); Console.WriteLine("*x");.WriteLine("== Таблиця значень ==");.WriteLine(" X Yтабл. Yрозрах.");_linijna = 0;(i = 0; i < N; i++)

{

//Обчислюїмо за формулою (iз одержаними параметрами) розрахунковi значення Y[i] = a + b * masX[i];

//Обчислюїмо суму квадратiв вiдхилення_linijna = S_linijna + Math.Pow((masY[i] - Yroz[i]), 2);.Write(" " + "{0:F4}", masX[i]);.Write(" " + "{0:F4}", masY[i]);.Write(" " + "{0:F4}", Yroz[i]);.WriteLine();

}.WriteLine("Сума квадратiв вiдхилення рiвна " + "{0:f4}", S_linijna);A = 0.0, B = 0.0, Sxx = 0.0, Sx2x2 = 0.0, Syy = 0.0, Sxyxz = 0.0;q, NN = 8;[] YYroz = new double[NN];

// Оголошення та ініціалізація заданого масиву xx[] masXX = { 10.0, 40.0, 60.0, 100.0, 130.0, 150.0, 175.0, 200.0 };

// Оголошення та ініціалізація заданого масиву Yy[] masYY = { 0.67, 0.76, 0.85, 0.97, 1.07, 1.18, 1.27, 1.39 };[] optt = new double[6];S_kvad_trychlen;= 0; Sx2x2 = 0; Syy = 0; Sxyxz = 0;c, p, p1, p2, p3, Sx3 = 0, Sx4 = 0, Sx2y = 0;(q = 0; q < NN; q++)

{= Sxx + masXX[q];x2 = Sx2x2 + Math.Pow(masXX[q], 2);= Sx3 + Math.Exp(3 * Math.Log(masXX[q]));= Sx4 + Math.Exp(4 * Math.Log(masXX[q]));y = Sx2y + Math.Pow(masXX[q], 2) * masYY[q];= Syy + masYY[q];= Sxyxz + masYY[q] * masXX[q];

}

//{Невiдомi параметри iз отримано• системи шукаїмо методом Крамера}

//{Шукаїмо потрiбнi визначники}= NN * Sx2x2 * Sx4 + 2 * Sxx * Sx2x2 * Sx3 - Math.Exp(3 * Math.Log(Sx2)) - NN * Math.Pow(Sx3, 2) - Math.Pow(Sxx, 2) * Sx4;= Sx2x2 * Sx4 * Syy + Sxx * Sx3 * Sx2y + Sx2x2 * Sx3 * Sxyxz - Math.Pow(Sx2x2, 2) * Sx2y - Math.Pow(Sx3, 2) * Syy - Sxx * Sx4 * Sxyxz;= NN * Sx4 * Sxyxz + Sx2x2 * Sx3 * Syy + Sxx * Sx2x2 * Sx2y - Math.Pow(Sx2x2, 2) * Sxyxz - NN * Sx3 * Sx2y - Sxx * Sx4 * Syy;= NN * Sx2x2 * Sx2y + Sxx * Sx2x2 * Sxyxz + Sxx * Sx3 * Syy - Math.Pow(Sx2x2, 2) * Syy - NN * Sx3 * Sxyxz - Math.Pow(Sxx, 2) * Sx2y;= p1 / p;= p2 / p;= p3 / p;.WriteLine();.WriteLine();.WriteLine();.WriteLine("==== Апроксимуючою є квадратична функцiя ====");.WriteLine("A= " + "{0:F4}", A); Console.WriteLine("B= " + "{0:F4}", B); Console.WriteLine("c= " + "{0:F4}", c);.WriteLine("Формула має вигляд:");.Write("y= " + c); Console.Write(" *x^2 +" + B); Console.WriteLine(" x +" + A);.WriteLine("== Таблиця значень ==");.WriteLine(" X Yтабл. Yрозрах.");_kvad_trychlen = 0;(q = 0; q < NN; q++)

{

//{Обчислюїмо за формулою (iз одержаними параметрами) розрахунковi значення YY}[q] = c * Math.Pow(masXX[q], 2) + B * masXX[q] + A;

//{Обчислюїмо суму квадратiв вiдхилення}_kvad_trychlen = S_kvad_trychlen + Math.Pow((masYY[q] - YYroz[q]), 2);.Write(" " + "{0:f4}", masXX[q]);.Write(" " + "{0:f4}", masYY[q]);.Write(" " + "{0:f4}", YYroz[q]);.WriteLine();

{.WriteLine("Шукана функцiя - лiнiйна");

}

{.WriteLine("Шукана функцiя - квадратична");.WriteLine();

}

Рисунок 3.3.1 - Результати роботи програми

емпіричний формула матриця квадратичний

ВИСНОВКИ

Метою виконання курсової роботи було інтегроване використання широкого спектра методів та засобів автоматизованої обробки інформації при розв’язуванні науково-інженерних задач (текстовий редактор MS Word, табличний процесор MS Excel, мова програмування C#), а також технологій DLE I OLE.

На основі розрахунків, виконаних засобами MS Excel та C#, ми отримали дві емпіричних формули:

1.  апроксимуючою функцією була лінійна.

.  апроксимуючою функцією був квадратний тричлен.

Значення суми квадратів відхилення у першому випадку дорівнює 0.0025, у другому - 0.0009.

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

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

ПЕРЕЛІК ПОСИЛАНЬ

1. Інформатика: Комп’ютерна техніка. Комп’ютерні технології. Посібник. / За ред. О. І. Пушкаря.- К.: Видавн. центр “Академія”, 2011.- 696 с.

. Дибкова Л. М. Інформатика та комп’ютерна техніка: Посіб.- К.: Видавничий центр “Академія”, 2002.- 320 с.

. Колесников А. Exсel 97 (русифицированная версия) - К.: Изд. группа BHV, 1997.- 528

. Фултон Д. Освой самостоятельно Microsoft Excel 2000 за 10 минут на урок: Пер. с англ.- М.: Вильямс, 2010.- 224 с.

. Информатика. Базовый курс: Учеб. пособ. / Под ред. С. В. Симоновича.- СПб.:Питер, 2001 (2002).- 640 с.

. Информатика для юристов и экономистов: Учеб. пособ. / Под ред. С. В. Симоновича.- СПб.:Питер, 2009.- 688 с.

. Локазюк В. М., Спиридонов В. І., Джулій В. М. Основи інформатики.- Х.: ХНУ, 2004.

8. Войтков В. Г. Лабораторний практикум з інформатики. Ч. 1. - Хмельницький: ТУП, 2001.- 108 с.

. Абрамов С. А., Зима Е. В. Начала информатики. - М.: Наука, 1989. - 256 с.

. Жалдак М. І., Рамський Ю. С. Інформатика. - Київ: Вища школа, 1991. - 318 с.

11. Мороз В. В. Обчислювальна математика : Навч. посібник [Електронний ресурс] / В. В. Мороз, Л. М. Трасковецька // Електронна бібліотека ХНУ. - Режим доступу:<http://library.tup.km.ua/EL_LIBRARY/Book_do_2006/Moroz/zmist.htm>

12. Пушкар О. І. Інформатика: Комп’ютерна техніка. Комп’ютерні технології : Посіб. / О. І. Пушкар. - К. : Вид. центр “Академія”, 2001. - 696 с.

. Дибкова Л. М. Інформатика та комп’ютерна техніка : Посіб. / Л. М. Дибкова. - К. : Вид. центр “Академія”, 2011. - 320 с.

Похожие работы на - Побудова емпіричної формули методом найменших квадратів

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!