Комп'ютерна модель - це природно. Комп'ютерне моделювання використовується повсюдно, робить проектування і виробництво реальних систем, машин, механізмів, товарів, виробів економічним, практичним, ефективним. Результат завжди перевершує очікування, які були попередньо змодельовані. Людина завжди будував моделі, але з появою комп'ютерної техніки математичні, обчислювальні та програмні методи підняли ідеї та технології моделювання на незвичайну висоту, зробили широкий спектр застосування: від примітивно-технічного рівня до рівня високого мистецтва і творчості.
Комп'ютерна модель - це не тільки більш досконалий космічний корабель або концептуальна система для розуміння суспільної свідомості, але і реальна можливість оцінити зміну клімату на планеті або визначити наслідки падіння комети через кілька сотень років.
Технічне моделювання
Сьогодні мало фахівців не знає, що таке "Автокад". А конкуренцію цій програмі вже складає десяток більш досконалих рішень. Моделювання сучасного літака або велосипеда вимагає в кінцевому результаті не тільки автоматизації виготовлення креслень і підготовки документації. Моделююча програма зобов'язана зробити технічну частину: оформити креслення і документацію - це фундамент. Програма зобов'язана також показати реальний виріб в реальному застосуванні у часі в тривимірному просторі: в польоті, в русі, в використанні, включаючи ймовірні аварії, заміну енергоносія, негативний вплив людини чи природи, корозію, вплив клімату або інших обставин.
Системне моделювання
Модель верстата, вироби, конвеєра - це системи, але системи ясної структури та змісту, який одного разу вже виготовлені. По кожному є досвід, знання і приклади використання комп'ютерних моделей. Технічна реальність - це така ж система, як і система відносин у суспільстві, система рекламної кампанії, модель психіки людини або його кровоносна система. Приміром, достовірний діагноз хвороби сьогодні може бути отриманий як: результат компетентних дій лікаря; висновок комп'ютерної програми, що побудувала модель стану пацієнта. Ці два варіанти все частіше призводять до однакового результату. Людина живе у світі систем, і ці системи вимагають прийняття рішень, для яких необхідні вихідні дані: розуміння і сприйняття навколишньої дійсності. Без моделювання неможливо зрозуміти природу систем і прийняти рішення.
Тільки комп'ютерна математична модель дає можливість оцінювати об'єктивність і рівень розуміння оригінальної системи, поступово наближаючи створюваний віртуальний образ до оригіналу.
Абстракція в моделюванні
Комп'ютерні моделі і моделювання - дуже перспективна і динамічно розвивається область технологій. Тут високотехнологічні рішення - це звичне (звичайне, щоденне) подія, а можливості моделей і моделювання вражають будь досвідчених уяву. Однак, до абстрактного системного моделювання людина ще не дійшов. Приклади використання комп'ютерних моделей - це реальні приклади реальних систем. Для кожного напряму моделювання, для кожного виду моделей, кожного типу виробів, конвеєрів і т. д. є своя окрема програма, або свій окремий пункт в меню програми, що забезпечує моделювання у відносно широкому спектрі систем.
Програмні засоби самі по собі є моделями. Результат праці програміста - завжди модель. Погана чи хороша програма, але вона завжди модель вирішення конкретної задачі, яка отримує вихідні дані і формує результат. Класичне програмування - класичні моделі, ніякої абстракції: точна завдання без варіантів динаміки після завершення її розробки. Це як реальний верстат, реальний продукт, будь-який виріб з жорсткими кількісно-якісними характеристиками: зроблено - пользуй в межах доступного, але нічого за межами зробленого. Об'єктно-орієнтоване програмування - системна модель з претензією на абстракцію і динаміку структури і властивостей, тобто з орієнтацією на створення динамічної моделі, яка визначає своє призначення середовищем застосування або розв'язуваної завданням. Тут модель може «жити» після того, як опиниться в області застосування одна без свого творця (автора) і буде самостійно співпрацювати з користувачами.
Моделювання: суть процесу
Поняття комп'ютерної моделі сьогодні представлено різними варіантами думок, але всі вони сходяться в тому, що це результат роботи програми, причому в контексті: модель дорівнює результату дій фахівця, який працює у специфічній моделює середовищі тієї чи іншої програми. Виділяють три типи моделей: пізнавальні, прагматичні та інструментальні. У першому випадку, формуючий аспект виражений більш як прагнення отримати модель у форматі втілення знань, пізнання теорії, глобального процесу. Прагматична модель - дає уявлення про практичних діях, робочого, системі управління виробництвом, виробі, верстаті. Третій варіант розуміється як середовище побудови, аналізу і тестування всіх моделей взагалі.
Зазвичай комп'ютерне моделювання - це діяльність спеціаліста по побудові та дослідженню матеріального або ідеального (віртуального) об'єкта, заміщення досліджувану систему, але адекватним чином відображає її істотні сторони, якісні та кількісні характеристики.
Видове різноманіття модельованих систем
В області моделювання, як на всіх передових рубежах високих технологій, науки, техніки і програмування, існує безліч думок щодо класифікації та визначення видового різноманіття модельованих систем. Але в одному експерти і фахівці сходяться завжди: види комп'ютерних моделей можна визначити з об'єктивних моментів: часу; способом подання; характером моделюється сторони; рівнем невизначеності; варіанту реалізації. Часовий момент - це статичні та динамічні моделі. Перші можна уточнювати скільки завгодно, але динамічні моделі розвиваються, і в кожен момент часу вони відрізняються. Спосіб подання зазвичай розуміється як дискретний або безперервний. Характер моделюється боку - інформаційний, структурний або функціональний (кібернетичний). Привнесення в модельовану систему параметрів невизначеності у багатьох випадках не тільки виправдано, але і є наслідком наукових досягнень у суміжних галузях знань. Наприклад, побудова моделі клімату в певному географічному регіоні не буде реальним без безлічі випадкових чинників.
Сучасні інструменти моделювання
Моделювання сьогодні - це величезний досвід багатьох десятків років розвитку комп'ютерної індустрії, який представив у вигляді алгоритмів і програм багато століть моделювання, взагалі, і математичного моделювання, зокрема.
Популярні програмні засоби представлені невеликою сімейством продуктів, відомих широко: AutoCAD, 3D Max, Wings 3D, Blender 3D, SketchUp. На базі цих продуктів є безліч спеціальних реалізацій. Крім відомого, є значуща приватне, наприклад, ринок географічних, картографічних, геодезичних; ринок кіно - і відеоіндустрії, представлених значною кількістю маловідомих програмних продуктів. Сімейства GeoSoft, TEPLOV, Houdini та ін. в сфері своєї компетенції мало кому поступаються в якості, корисності та ефективності. При виборі кращого інструменту програмного найкраще рішення - оцінити область передбачуваного моделювання, середовище існування майбутньої моделі. Це дозволить визначитися з необхідним інструментарієм.
Маленькі і творчі моделі
І хоча «мало залишилося творчості» у проектуванні сучасного аеробуса, спорткара або космічного корабля, власне, програмування та організація бізнес-процесів стали предметом найпильнішої уваги і метою для найбільш дорогих і складних процесів моделювання.
Сучасний бізнес - це не тільки сотні співробітників, одиниць обладнання, але і тисячі виробничих і соціальних зв'язків всередині компанії і за її межами. Це абсолютно нове і недосліджене напрям: хмарні технології, організація привілейованого доступу, захист від шкідливих атак, неправомірного дії співробітника. Сучасне програмування стало надто складним і перетворилося в чорний ящик особливого роду, причому живе власним життям. Програмне виріб, створене одним колективом розробників, ставиться метою моделювання і вивчення для іншої компанії розробників.
Авторитетний приклад
Можна уявити систему Windows або сімейство Linux як предмет моделювання і змусити кого-небудь побудувати адекватні моделі. Практична значимість тут настільки низька, що дешевше просто працювати і не звертати уваги на недоліки цих систем. Їх розробник має власне уявлення про потрібний йому шляху розвитку, і звертати з нього не збирається. Щодо баз даних та динаміки їх розвитку можна сказати зворотне. Oracle - велика компанія. Багато ідей, тисячі розробників, сотні тисяч, доведених до досконалості, рішень.
Але Oracle - це, насамперед, заснування і потужна причина для моделювання і, видається, інвестиції в цей процес будуть мати приголомшливу окупність. Oracle стала на рейки лідерства з самого початку і не поступалася нікому в сфері створення баз даних, забезпечення відповідального ставлення до інформації, її захист, міграції, зберігання і т. д. Все, що потрібно для обслуговування інформаційних завдань, - це Oracle.
Зворотна сторона Oracle
Інвестиції та працю кращих розробників для вирішення актуальної задачі - об'єктивна необхідність. Актуальних завдань за багато десятиліть свого лідерства Oracle виконала сотні, а реалізацій і оновлень - тисячі.
Сфера інформації в контексті комп'ютерного застосування з 80-х років донині не змінилася. Концептуально бази даних початку комп'ютерної ери і сьогоднішнього дня - близнюки-брати з різницею в рівні забезпеченості і реалізованої функціональності. Для досягнення сучасного рівня забезпеченості та реалізованої функціональності» Oracle виконала, зокрема: сумісність великих потоків різнорідної інформації; міграція й трансформація даних; перевірка і тестування програм; узагальнений реляційний функціонал універсального доступу; міграція даних/фахівців; трансформація фундаментальних основ корпоративних баз даних в розподілену інтернет-середовище; максимальна інтеграція, агрегатори, систематизація; визначення спектру доцільності, ліквідація дублюючих процесів. Це тільки мала дещиця тих, що становлять багатотомні опису діючих програмних продуктів Oracle. Насправді, спектр виготовлених рішень набагато ширше і потужніше. Всі вони забезпечені підтримкою Oracle і тисяч кваліфікованих фахівців.
Дохідна модель
Якщо б у 80-ті роки Oracle пішла шляхом моделювання, а не конкретного нарощування потенціалу у вигляді реальних, закінчених рішень, Ситуація склалася б істотно інакше. За великим рахунком людині або підприємству від комп'ютерної інформаційної системи потрібно не так вже й багато. Тут дослідження комп'ютерної моделі не представляє інтересу.
Завжди потрібно отримати рішення виниклої задачі. Як це рішення буде отримано, споживача ніколи не хвилює. Йому абсолютно нецікаво знати, що таке міграція даних або як виконати тестування коду програми, щоб воно працювало на будь-яких даних, і в разі непередбаченої ситуації могло спокійно повідомити про це, а не робити синій екран або мовчки виснути. Моделюючи чергову необхідність програмно, а не інвестиції в чергового спеціаліста, який докладе свій розум і знання для створення чергової порції коду, можна досягти більшого. Будь-який, самий кращий спеціаліст - це, насамперед, статичний код, це фіксація кращих знань у форматі пам'ятника автору. Це всього лише код. Результат роботи кращих не розвивається, але для свого розвитку вимагає нових розробників нових авторів.
Ймовірність реалізації дохідної моделі
Розробники і сфера IT-технологій, в цілому, вже перестали ставитися до динаміки, знань і штучного інтелекту з ентузіазмом, яким супроводжувалися хвилі інтересу минулих років. Чисто формально, багато хто асоціює свої продукти або напрямки роботи з темою штучного інтелекту, але, по факту, займаються реалізацією певних алгоритмів, хмарних рішень, надають значення безпеки і захисту від різноманітних загроз.
Між тим, комп'ютерна модель - це динаміка. Комп'ютерне моделювання - це його наслідки. Це об'єктивна обставина ще ніхто не відміняв. Його скасувати зовсім неможливо. Приклад Oracle як не можна краще і показовіша інших показує, наскільки важко, дорого і неефективно займатися вимушеним моделюванням, коли доводиться будувати реально працюючі моделі працею багатьох тисяч спеціалістів, а не автоматично засобами самої проектованої інформаційної системи - моделі в динаміці на реальній практиці!