Компьютерная модель - это... Понятие, создание и примеры использования компьютерных моделей
Компьютерная модель - это естественно. Компьютерное моделирование используется повсеместно, делает проектирование и производство реальных систем, машин, механизмов, товаров, изделий экономичным, практичным, эффективным. Результат всегда превосходит ожидания, которые были предварительно смоделированы.
Человек всегда строил модели, но с появлением компьютерной техники математические, вычислительные и программные методы подняли идеи и технологии моделирования на необыкновенную высоту, сделали широким спектр их применения: от примитивно-технического уровня до уровня высокого искусства и творчества.
Компьютерная модель - это не только более совершенный космический корабль или концептуальная система для понимания общественного сознания, но и реальная возможность оценить изменение климата на планете или определить последствия падения кометы через несколько сотен лет.
Техническое моделирование
Сегодня мало специалистов не знает, что такое "Автокад". А конкуренцию этой программе уже составляет десяток более совершенных решений.
Моделирование современного самолета или велосипеда требует в конечном итоге не только автоматизации изготовления чертежей и подготовки документации. Моделирующая программа обязана сделать техническую часть: оформить чертежи и документацию - это фундамент.
Программа обязана также показать реальное изделие в реальном применении во времени в трехмерном пространстве: в полете, в движении, в использовании, включая вероятные аварии, замену энергоносителя, негативное воздействие человека или природы, коррозию, влияние климата или иных обстоятельств.
Системное моделирование
Модель станка, изделия, конвейера - это системы, но системы ясной структуры и содержания, уже однажды изготовленные. По каждому есть опыт, знания и примеры использования компьютерных моделей.
Техническая реальность - это такая же система, как и система отношений в обществе, система рекламной кампании, модель психики человека или его кровеносная система.
К примеру, достоверный диагноз болезни сегодня может быть получен как:
- результат компетентных действий врача;
- вывод компьютерной программы, построившей модель состояния пациента.
Эти два варианта все чаще приводят к одинаковому результату.
Человек живет в мире систем, и эти системы требуют принятия решений, для которых необходимы исходные данные: понимание и восприятие окружающей действительности. Без моделирования невозможно понять природу систем и принять решение.
Только компьютерная математическая модель дает возможность оценивать объективность и уровень понимания оригинальной системы, постепенно приближая создаваемый виртуальный образ к оригиналу.
Абстракция в моделировании
Компьютерные модели и моделирование - крайне перспективная и динамично развивающаяся область технологий. Здесь высокотехнологичные решения - это привычное (рядовое, ежедневное) событие, а возможности моделей и моделирования поражают любое искушенное воображение.
Однако, до абстрактного системного моделирования человек еще не дошёл. Примеры использования компьютерных моделей - это реальные примеры реальных систем. Для каждого направления моделирования, для каждого вида моделей, каждого типа изделий, конвейеров и т. д. есть своя отдельная программа или свой отдельный пункт в меню программы, обеспечивающей моделирование в относительно широком спектре систем.
Программные средства сами по себе являются моделями. Результат труда программиста - всегда модель. Плохая программа или хорошая, но она всегда модель решения конкретной задачи, которая получает исходные данные и формирует результат.
Классическое программирование - классические модели, никакой абстракции: точная задача без вариантов динамики после завершения её разработки. Это как реальный станок, реальный продукт, любое изделие с жесткими количественно-качественными характеристиками: сделано - пользуй в пределах доступного, но ничего за пределами сделанного.
Объектно-ориентированное программирование - системная модель с претензией на абстракцию и динамику структуры и свойств, то есть с ориентацией на создание динамичной модели, которая определяет свое назначение средой применения или решаемой задачей.
Здесь модель может «жить» после того, как окажется в области применения одна без своего создателя (автора) и будет самостоятельно «сотрудничать» с пользователями.
Моделирование: суть процесса
Понятие компьютерной модели сегодня представлено различными вариантами мнений, но все они сходятся в том, что это результат работы программы, причем в контексте: модель равна результату действий специалиста, который работает в специфической моделирующей среде той или иной программы.
Выделяют три типа моделей: познавательные, прагматические и инструментальные.
В первом случае, моделирующий аспект выражен более всего как стремление получить модель в формате воплощения знаний, познания теории, глобального процесса. Прагматическая модель - дает представление о практических действиях, рабочего, системе управления производством, изделии, станке. Третий вариант понимается как среда построения, анализа и тестирования всех моделей вообще.
Обычно компьютерное моделирование - это деятельность специалиста по построению и исследованию материального или идеального (виртуального) объекта, замещающего исследуемую систему, но адекватным образом отражающий её существенные стороны, качественные и количественные характеристики.
Видовое многообразие моделируемых систем
В области моделирования, как на всех передовых рубежах высоких технологий, науки, техники и программирования, существует множество мнений по классификации и определению видового многообразия моделируемых систем.
Но в одном эксперты и специалисты сходятся всегда: виды компьютерных моделей можно определить по объективным моментам:
- времени;
- способу представления;
- характеру моделируемой стороны;
- уровню неопределенности;
- варианту реализации.
Временной момент - это статичные и динамичные модели. Первые можно уточнять сколько угодно, но динамичные модели развиваются, и в каждый момент времени они отличаются. Способ представления обычно понимается как дискретный или непрерывный. Характер моделируемой стороны - информационный, структурный или функциональный (кибернетический).
Привнесение в моделируемую систему параметров неопределенности во многих случаях не только оправдано, но и является следствием научных достижений в смежных отраслях знаний. Например, построение модели климата в определенном географическом регионе не будет реальным без множества стохастических факторов.
Современные инструменты моделирования
Моделирование сегодня - это огромный опыт многих десятков лет развития компьютерной индустрии, который представил в виде алгоритмов и программ многие столетия моделирования, вообще, и математического моделирования, в частности.
Популярные программные средства представлены небольшим семейством продуктов, известных широко: 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 как нельзя лучше и показательнее других показывает, насколько трудоемко, дорого и неэффективно заниматься вынужденным моделированием, когда приходится строить реально работающие модели трудом многих тысяч специалистов, а не автоматически средствами самой проектируемой информационной системы - модели в динамике на реальной практике!