asyan.org
добавить свой файл
1
Чому алгоритму завжди потрібна математична модель ?

вчитель інформатики ЗОШ № 21, м.Черкаси,

Сіденко Олександр Михайлович

...есть ли что милей на свете,

Чем уноситься в дух иных столетий,

И умозаключать из их работ,

Как далеко шагнули мы вперед ? ”

И.В. Гете (1749-1832)

Назва "алгоритм" виникла від латинської форми імені найвідомішого середньоазіатського математика Мухаммеда ібн Муса аль-Хорезмі (Alhorithmi), що жив в 783—850 рр. В своїй книзі "Про індійський рахунок" він висловив правила запису натуральних чисел за допомогою арабських цифр і правила дій над ними "стовпчиком", знайомі тепер кожному школяреві. В XII столітті ця книга була перекладена на латинь і отримала широке визнання в Європі.

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

Алгоритм — це наперед задане зрозуміле і точне розпорядження можливому виконавцю виконати певну послідовність дій для отримання розв’язку задачі за визначене число кроків.

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

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

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

    • збір інформації про задачу;

    • формулювання умови задачі;

    • визначення кінцевої мети розв’язання задачі;

    • визначення форми видачі результатів;

    • опис даних (їх тип, діапазон величин, структури і т.п. ).

  2. Аналіз і дослідження задачі, моделі:

    • аналіз існуючих аналогів;

    • аналіз технічних і програмних засобів;

    • розробка математичної моделі;

    • розробка структур даних.

  3. Розробка алгоритму:

    • вибір методу проектування алгоритму;

    • вибір форми запису алгоритму (блок-схеми, псевдокод і ін.);

    • вибір тестів і методу тестування;

    • проектування алгоритму.

  4. Програмування:

    • вибір мови програмування;

    • уточнення способів організації даних;

    • запис алгоритму на вибраній мові програмування.

  5. Тестування і редагування:

    • синтаксичне редагування;

    • редагування семантики і логічної структури;

    • тестові розрахунки і аналіз результатів тестування;

    • вдосконалення програми.

  6. Аналіз результатів розвязків задачі і уточнення у разі потреби математичної моделі.

  7. Супровід програми:

    • доробка програми для розв’язку конкретних задач;

    • складання документації до розв’язаної задачі, до математичної моделі, до алгоритму, до програми, до набору тестів, до використання.

Що представляє собою математична модель?


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


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

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

Отже, створюючи математичну модель для розв’язання задачі, потрібно:

  1. виділити припущення, на яких ґрунтується математична модель;

  2. визначити, що вважати початковими даними і результатами;

  3. записати математичні співвідношення, зв’язуючи результати з початковими даними.

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

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

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

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

Для використання ЕОМ при розв’язанні прикладних задач перш за все вони повинні бути "перекладені" на формальну математичну мову, тобто для реального об'єкту, процесу або системи та повинна бути побудована математична модель.

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

Для побудови математичної моделі необхідно:

  • ретельно проаналізувати реальний об'єкт або процес;

  • виділити його найістотніші риси і властивості;

  • визначити змінні, тобто параметри, значення яких впливають на основні риси і властивості об'єкту;

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

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

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

Математичне моделювання, окрім дослідження об'єкту, процесу або системи і складання їх математичного опису, також включає:

  • побудова алгоритму, що моделює поведінку об'єкту, процесу або системи;

  • перевірка адекватності моделі і об'єкту, процесу або системи на основі обчислювального і натурного експерименту;

  • коректування моделі;

  • використання моделі.

Математичний опис досліджуваних процесів і систем залежить від:

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

    • необхідної достовірності і точності вивчення і дослідження реальних процесів і систем.

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

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

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

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

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

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

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

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

Задача. Автомобіль „Жигулі” з пасажирами має вагу приблизно 1400 кг, витрачає 8 л пального на 100 км свого шляху. Швидкість автомобіля набуває значення на проміжку:(км/год).

Обчисліть : а) вагу автомобіля;

б) силу тертя, що діє на колеса автомобіля

в) опір повітря;

г) довжину гальмівного шляху;

д) побудуйте графічну залежність сили опору повітря від швидкості автомобіля;

ж) побудуйте графічну залежність довжини гальмівного шляху від швидкості автомобіля;

з) побудуйте графічну залежність між витратою пального на подолання сили опору повітря та силою опору повітря.
Розв’язання:

а) визначимо вагу автомобіля:

(Н), де - маса автомобіля;

м/с2 – прискорення вільного падіння;

Коли автомобіль рухається, то на нього діє сила тертя кочення, яка наближено визначається за формулою:

(Н) ;

б) визначимо силу опору повітря під час руху автомобіля;

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

, де - коефіцієнт пропорційності ( для легкового автомобіля приймається значення постійне );

- площа поперечного перерізу автомобіля складає приблизно 2м2;

- густина повітря ( кг/м3 );

щоб визначити кількість пального, що витрачається із розрахунку на 100 км щоб подолати силу опору повітря необхідно скористатися формулою:

(л) ;

для визначення довжини гальмівного шляху користуються формулою:

(м) ;

де S- довжина гальмівного сліду;

- коефіцієнт тертя ( див. таблицю) ;
Таб.1. Головна таблиця розрахунків


Швидкість авто

, (км/год)

Сила опору повітря

F, (H)

Витрати пального

на подолання сили опору повітря,V ,(л)

Коефіцієнт тертя,

Довжина гальмівного шляху, S, (м)

40

79,62962963

1,244212963

0,7

8,99887514

60

179,1666667

2,799479167

0,64

22,1456693

80

318,5185185

4,976851852

0,6

41,9947507

100

497,6851852

7,776331019

0,56

70,303712

120

716,6666667

11,19791667

0,53

106,967761

140

975,462963

15,2416088

0,5

154,330709


Варто запис формул та обрахунків головної таблиці виконати разом із учнями для попередження можливих помилок, які можуть суттєво вплинути на виконання послідуючих трьох завдань. Ці завдання, на мою думку, учням слід виконати самостійно, а після побудови графічних залежностей необхідно зробити висновки після яких фізика та інформатика не будуть предметами далекими від реального світу. Дані обрахунки застережуть учнів переходити дорогу коли назустріч їде автомобіль з мінімальною швидкістю км/год, бо гальмівний шлях має складати приблизно 9 м; економний власник автомобіля має знати, що при сильному вітрі зростає сила опору повітря і як наслідок - більші втрати пального від звичайного; при їзді із максимальними швидкостями витрачається більша кількість палива; у задачі йшла мова про стандартну марку автомобіля („Жигулі”) на даний час існують автомобілі з набагато більшою масою, яка перевищує попередню у 2-3 рази, тому результати обрахунків мають бути найбільш переконливими для учнів.
Таб.2. Таблиця необхідних (базових) обрахунків для побудови графіка функції


Швидкість авто

, (км/год)

Довжина гальмівного шляху, S, (м)

40

8,99887514

60

22,1456693

80

41,9947507

100

70,303712

120

106,967761

140

154,330709


Залежність довжини гальмівного шляху від швидкості автомобіля ( приклад проведення розрахунків у програмі MS Excel з побудовою графіка ).


Таб.3. Таблиця необхідних (базових) обрахунків для побудови графіка


Швидкість автомобіля

, (км/год)

Сила опору повітря

F, (H)

40

79,62962963

60

179,1666667

80

318,5185185

100

497,6851852

120

716,6666667

140

975,462963


Приклад проведення розрахунків у програмі MS Excel з побудовою графіка



Таблиця необхідних (базових) обрахунків для побудови графіка


Швидкість авто

, (км/год)

Сила опору повітря

F, (H)

Витрати пального

на подолання сили опору повітря,V ,(л)

40

79,62962963

1,244212963

60

179,1666667

2,799479167

80

318,5185185

4,976851852

100

497,6851852

7,776331019

120

716,6666667

11,19791667

140

975,462963

15,2416088




Основним критерієм істинності є експеримент, практика в найширшому значенні цього слова. Для порівняння попередніх обрахунків використаємо комп’ютерну програму, якою користується ДАІ при аналізі аварійних ситуацій. Наведемо атрибути цієї програми.



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







Значення швидкості автомобіля, км/год

Обрахунки гальмівного шляху в першому випадку за математичною моделлю, d, (м)

Значення швидкості автомобіля, км/год

Обрахунки гальмівного шляху за програмою ДАІ, S, (м)

1.

40

8,99887514

40,2

8,5

2.

60

22,1456693

60,64

21,5

3.

80

41,9947507

80,19

39

4.

100

70,303712

102

63

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



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

=84,35.

Який шлях пройде автомобіль в момент свого гальмування до повної зупинки?

Розв’язання : визначимо час проміжок часу за який автомобіль повністю зупиниться;

; в момент зупинки автомобіля , тому:

, а тому: .

Підставимо цей вираз для часу у формулу для визначення координати автомобіля:

.

Виконаємо підстановку числових значень:

км/год=23,431 м/с; =6,3;

.

Порівняємо гальмівний шлях, що отримали для даної задачі з ком’ютерними обчисленнями:

; це непогане відхилення, якщо прийняти до уваги, що силу тертя при гальмуванні та тип дорожнього покриття ми не враховували взагалі.



Завдання для самостійної роботи учнів ( можливо у вигляді домашнього завдання ). Існує цікава задача, яка більше відноситься до антропології, або анатомії людини вона базується на аналогічній математичній моделі, яка наближено визначає параметри людини в залежності від зросту ( для чоловіків та жінок окремі розрахунки ). Варто запропонувати учням її перевірити, або редагувати, впевнений, що більша частина учнів ніколи від цього експерименту не відмовиться. Обрахунки краще робити в MS Excel.

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

Чоловіки

Жінки

Ріст : 8 =( голова _________ см )

Ріст : 8 =( голова _________ см )

Ріст – 73,6= : 2,97=( плече _______ см)

Ріст – 64,9 = : 3,13=( плече _________ см )

Ріст – 80,4= : 3,65=( передпліччя _______ см)

Ріст – 73,5= : 3,88=( передпліччя _______ см)

Ріст – 69,1= : 2,24=( стегно ______ см)

Ріст – 61,4= : 2,32=( стегно ______ см)

Ріст – 72,6= : 2,53=( голінь _______ см)

Ріст – 72,6= : 2,53=( голінь _______ см)



Контрольний варіант обчислень: ріст 180 см для чоловіка.

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

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

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

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

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