Алгоритмізація - це процес побудови алгоритму розв'язання задачі. Алгоритм і алгоритмізація в інформатиці
Опубликованно 28.01.2018 02:30
Алгоритмізація – це складний науковий, технічний, математичний термін, що розглядається різними науками і має багато значень, що не збігаються одна з одною.
Класичний підхід
Найбільш загальне поняття алгоритмізації – це процес формування алгоритмів, програм. Передбачається систематичний підхід до складання послідовності, що дозволяє вирішити певну прикладну задачу. Якщо необхідно створити програму для комп'ютера, вирішити за допомогою такого продукту чітко визначену задачу, необхідно попередньо скласти алгоритм цього рішення – цей крок вважається обов'язковим.
Алгоритмізація – це детермінований підхід до вирішення завдання, що виключно значима для алгоритмів, програм прикладного класу. Одночасно результат повинен бути масовим, ефективно розраховують відповідь. Правильно сформований алгоритм – запорука правильного вирішення сформульованого питання.Можливі визначення
Слово можна розшифрувати не тільки описаним вище способом. Зокрема, у відповідності зі словниковими визначеннями, алгоритмізація – це етап роботи над завданням, під час якого формулюють алгоритм, що дозволяє вирішити проблему. Альтернативна думка – область інформатики, присвячена методикам, способам створення алгоритмів. Крім того, алгоритмізація розглядає властивості алгоритмів. Іноді цю науку називають алгоритмикой.
У відповідності з іншими поняттями алгоритмізація – описовий процес, що дає уявлення про черговість дій, виконуваних для вирішення завдання. Інші видання формулюють суть алгоритму як точний опис заданого процесу і формулювання інструкцій, у відповідності з якими можна його виконати. Створення алгоритму трудомістко і складно, а алгоритмізація – техніка, що дозволяє сформулювати дійсно ефективний, оптимізований комплекс послідовних операцій, що реалізуються за допомогою ЕОМ. Процеси і етапи
Алгоритмізація – така описова робота, яка дає уявлення про події, що відбуваються всередині завдання процесах. Описують їх при застосуванні математичних символів. Це дозволяє отримати алгоритм, в якому містяться всі елементарні акти завдання, що існують між ними зв'язку, послідовності, причини і наслідки. Сформовані в ході алгоритмізації алгоритми в загальному випадку розробляються саме для електронно-обчислювальної техніки.
Алгоритм і алгоритмізація – два дуже важливих поняття для будь-якого, хто змушений працювати з пошуком шляхів вирішення різних складних завдань. Формування ефективної послідовності дій, яка відображала б що відбуваються в реальності процеси, в більшості випадків передбачає послідовне знаходження відповідей на два питання:Які системи інформаційної обробки будуть ефективними в конкретному випадку?Які математичні методики функціонування стосуються до великих систем?Особливості питання
Розглядаючи методи информобработки, слід спершу створити алгоритм, який би детально описував, як система працює. Потім формується послідовність дій, що дозволяє визначити оптимальні рішення, а також алгоритмизируется управлінський процес. В деяких випадках вимагається створення послідовності для виявлення значень, що характеризують управління.
Завдання з алгоритмізації, розглядають друге питання, припускають наявність великої системи. У ній можна одночасно проводити не тільки якісні, але і кількісні дослідження. Це дозволяє оцінювати ключові особливості системи – надійність, результативність.Як це працює?
Етапи алгоритмізації передбачають послідовне виділення елементарних актів. Кожен з них має бути такого рівня, щоб вдалося описати його математичними функціями, застосовуючи підходи алгебри логіки. Користь при побудові алгоритму принесуть також теорії кінцевих автоматів, випадкових процесів, масового обслуговування. При цьому виявляються співвідношення, які описують взаємні зв'язки між елементарними актами. На підставі таких даних формулюється система, яка і стає повноцінним алгоритмом, придатним для подальшої роботи.
Процедури, операції, включені в опис процесу через алгоритм, найбільш зручно фіксувати, застосовуючи спеціальні мови програмування. Особливо це актуально, якщо процес побудови алгоритму необхідний для подальшого втілення коду на електронно-обчислювальній машині. Створений людиною код потім обробляється транслятором і переводиться в операційний мову, зрозумілу для заданої машини. Нерідко один крок алгоритму – це кілька реалізуються машиною операцій.Кому і як?
Про те, що таке алгоритм інформатики, можуть розповісти програмісти. Але ця наука в цілому і техніки програмування зокрема – абсолютно особливе питання, яке потребує окремого розгляду. Що стосується алгоритмізації стосовно іншим областям, то рішенням пов'язаних з формуванням послідовностей дій повинен займатися вузькоспеціалізований персонал – алгоритмисты. Послідовність дій включає в себе: аналіз вихідних даних;виявлення найбільш значущих аспектів;формалізацію ключових моментів;подання даних символами;формування цілісної послідовності операцій.
Фактично алгоритмізація – складний процес, сам по собі в деякій мірі визначається алгоритмом. Важлива особливість – чіткість, математичность, логічність підходу і результату.
Навіщо це потрібно?
Де можна зустріти приклади алгоритмізації на практиці? Іншим може здатися, що це «наука в собі», не надто застосовна для чого-небудь. Насправді алгоритмізація – це ефективний метод автоматизації широкого спектра завдань, робочих процесів, в яких беруть участь люди. Формування програм, алгоритмів в першу чергу використовується для спрощення обчислювальних завдань, які раніше можна було вирішити тільки вручну. Дещо рідше алгоритмізація дозволяє створити послідовність дій управління машинами.
Алгоритмізація дозволяє ефективно переформулювати вихідний (найчастіше досить хаотичний) обсяг інформації в алгоритмічний вигляд, чіткий, упорядкований і структурований. При цьому виділяють всі об'єкти, які беруть участь в операціях, ідентифікують їх, визначають виконавців і задають алгоритм послідовних дій. Важлива умова – обов'язкова однозначність тлумачення будь-якого етапу. Після А завжди слід, а не «може, В, а може, З, ви вже вирішите самі, як краще». Це правило – основа алгоритмізації.Інформація та алгоритми
Представлені в алгоритмічної формі дані – дані, що продукуються алгоритмизацией. Для них неможливі багатозначні інтерпретації. Що таке алгоритм інформатики, математики, логіки? Це така послідовність, яку виконавець може зрозуміти, маючи перед собою лише цей документ і ніяких сторонніх джерел, умов, пояснень операціями. В алгоритмі завжди вказується порядок дій. Без цієї інформації система не може вважатися повноцінною та застосовується на практиці.
Алгоритмізація та мови програмування були розроблені людьми, але не лише для себе. Виконувати готовий результат може і машина, причому не тільки високопродуктивний і складнорганізований комп'ютер, але і більш просте автоматизований пристрій. Застосовуються наступний типи послідовності операцій:лінійні;циклічні;розгалуження;змішані.А якщо детальніше?
Якщо уважно вивчити основи алгоритмізації, можна знайти докладний опис всіх типів послідовностей дій. Розглянемо їх детальніше.
Лінійна передбачає наявність чіткої послідовності по кроках: є перша операція, друга і так далі. Відхилення від схеми не допускаються, варіантів коригування не передбачено.
Розгалуження – можливість коригувати послідовність. Для цього формулюються умови, які вирішуються в ході попередніх операцій (однієї або декількох). Розгалуження – це не перехід до пройшла вже раніше операції, а лише вибір одного з шляхів продовження послідовності.Продовжуючи тему
Цикл практично ідентичний галуження, але дозволяє повертатися до операції, вже пройденої в ході виконання алгоритму.
Нарешті, в основах інформатики розглядається змішаний варіант послідовності алгорітмізованних дій. У такому будуть ділянки лінійні, циклічні, розгалуження – усі можливі форми. Якщо програма, алгоритм є складними, можна з упевненістю говорити, що вони належать саме до такої форми, її просто неможливо уникнути. Причому складність – поняття дуже широке. Те, що для звичайної людини здається елементарним завданням, при формулюванні її у вигляді алгоритму може перетворитися тривалу послідовність дій різного плану і характеру. Завдання алгоритмиста – враховувати всі можливі стани всіх включених в систему об'єктів.Інструкції та алгоритми
Фактично з алгоритмизацией, як і з основами інформатики, ми стикаємося в повсякденному житті, просто звикли до цього і не помічаємо, не звертаємо увагу. Наприклад, технологічні інструкції – це класичний зразок алгоритму.
Виконавчі інструкції зазвичай складаються стосовно до різноманітних об'єктів – клапанів, агрегатів, витяжок, двигунів. В інструкції описуються фізичні операції – взяти, підняти, закрити. Коли мова йде про обчислювальній машині, об'єкти в алгоритмі будуть математичні дії, відповідно, такі ж. Алгоритм може бути присвячений формулам, таблицям, які скомпоновані значення, а дії бувають самими різними – від найпростіших обчислень до досить складних для людини матричних табличних операцій. Інструкція зазвичай містить умову, що відповідає правилам логіки. Якщо вдалося досягти необхідного показника – можна продовжувати рух за алгоритмом або завершити його, в іншому випадку доведеться пройти ще один цикл. Також алгоритми в нормі мають «запасний вихід» на випадок позаштатної ситуації. Стосовно до людської повсякденності можна знайти аналог у вигляді «Повідомити керівництву про неполадки».Алгоритмізація: підхід розширений і спеціалізований
Деякі вважають, що алгоритмізація – це в першу чергу процес переформатування даних в більш упорядкований вигляд. Спершу досліджується вихідна ситуація, аналізується супроводжує її інформація, документація, особливості, побажання. Одночасно з цим алгоритмізація – це цілком чітка і обмежена за масштабом завдання створення інструкцій. Вона має свої складності й особливості.Об'єкт алгоритмізації
Прийнято говорити про такі об'єкти, які можуть вчиняти дії, а також тих, над якими вони виробляються. Для кожного об'єкта характерно деяке певний стан і можливість переходу між ними. Знання повного набору атрибутики дозволяє створити коректний і точний алгоритм, який буде працювати, не вимагаючи додаткових дій, за винятком вже вписані в програму.
Ключова умова, перше, що перевіряється стосовно до об'єкта – його присутність саме в такому стані, що припускає виконання передбачених алгоритмом функцій. У разі якщо об'єкт не пройшов попередню підготовку, він несправний, не підходить (словом, будь-яка перешкода), стан стає непрацездатним, отже, дії, визначені алгоритмом, не можуть виконуватися.Алгоритмізація стосовно до реальності
У повсякденності алгоритми застосовуються до різних реальним об'єктам – персоналу, обладнання. Стан його повинно бути таким, щоб покладені в відповідності з програмою операцій функції виконувалися б успішно, якісно, без збоїв. Враховувати це важливо при формулюванні інструкцій. Так, якщо мова йде про який-небудь обладнання, його потрібно попередньо зібрати, почистити, протестувати, тільки після цього ознайомити персонал з правилами використання і почати застосовувати інструкцію у справі.
Стосовно до машинного алгоритму ситуація схожа, хіба що в якості об'єкта будуть виступати пристрої, а самі кроки, зазвичай, мають бути більш детальними, щоб апарат зміг правильно їх інтерпретувати і робити. При цьому послідовність повинна бути гранично чіткою, інакше агрегат просто не зможе здогадатися – адже це не людина, що володіє волею, інтуїцією, здатністю міркувати на прикладі вже отриманого досвіду.А що з навчанням?
Важливе поняття – алгоритмізація навчання. Воно передбачає складання такої послідовності дій, яка допоможе навчити цільовий об'єкт (машину або людини) виконувати задані операції. В якості початкового етапу розглядається стан повної відсутності знань і уявлень про цільовому об'єкті. Алгоритм навчання повинен містити таку послідовність операцій, яка дозволить отримати об'єкту уявлення про процес, корисну інформацію, релевантну далі на практиці. Формулювання складних і ефективних алгоритмів навчання останнім часом стало особливою областю уваги передових умів нашого світу в силу підвищення інтересу до штучного інтелекту і здатності до навчання машин.
Алгоритм навчання починається з розгляду найпростіших завдань. Якщо має бути робота з людьми, даються доручення, які дозволяють освоїти базові поняття і процеси системи. Поступово завдання ускладнюються, і в якийсь момент об'єкти алгоритму навчання можуть не просто з легкістю вирішувати поставлені перед ними завдання, але і вчити інших – особливо актуально це, звичайно, стосовно до людей.
Категория: Техника