Skip to content

Мышление и моделирование

Мы начинаем заниматься моделированием, то есть мы будем обсуждать всё, что связано с созданием и использованием моделей. В самом общем понимании:

Модель чего-то одного – это что-то такое другое, что позволяет нам судить об этом первом, не взаимодействуя с ним непосредственно.

У чего бывают модели? Модели бывают у чего угодно! У предметов материального мира (стульев или кораблей), у процессов и явлений (погоды или бизнеса), у абстрактных концепций («право» или «справедливость»), у текстов и баз данных, у других моделей, наконец (и это мы будем обсуждать отдельно).

Модель должна в чём-то соответствовать тому, что она моделирует, или быть как-то похожа в своих свойствах или характеристиках на моделируемое. Такое сходство и обеспечивает возможность использовать модель по назначению.

Какие бывают модели? Очень разные! Деревянные, железные, математические, компьютерные, текстовые, ментальные, нейросетевые, и ещё множества разных типов моделей. Мы будем в первую очередь различать модели материальные (предметы, создаваемые для моделирования чего-то) и модели информационные (тексты, электронные таблицы, программы, чертежи и т.п.).

Модель для почти всего можно построить с помощью практически чего угодно, на эту тему есть множество анекдотов и мемов, которые вы можете поискать сами. Приведём лишь одну цитату, наиболее парадоксальную – она показывает, что, несмотря на простоту понятия модели, моделирование является очень сложной областью:

«…лучшей материальн**ой моделью кошки будет иная кошка, однако предпочтительнее, чтобы это была та же самая кошка…»

«…the best material model for a cat is another, or preferably the same cat…»

Arturo Rosenblueth & Norbert Wiener, «The role of models in science»

Что можно делать с помощью моделей? Множество вещей! Сохранять, находить и передавать информацию о предмете моделирования, изучать его, предсказывать его свойства и поведение, проверять его реакции на внешние воздействия, планировать изменения предмета моделирования, совершенствовать его, сравнивать и находить отличия между предметами моделирования, и много чего ещё.

Чтобы начать изучение основ моделирования, самых общих принципов, применимых буквально ко всему, что называется «моделированием» - мы начнём с собственного мышления. Ведь именно моделирование лежит в основе мышления человека. Мы не бросаемся двигать мебель, когда думаем о своей квартире, мы не хватаем товары на полках или не перебираем купюры в кассе, когда размышляем о своём торговом бизнесе. Мы строим в голове модель того, о чём мы хотим подумать.

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

Мышление – всегда моделирование, это работа с моделями внутри собственной головы (памяти, процессора).

Если вы проходе стажировку по рациональной работе – вы, скорее всего, научились успешно переходить улицу, и тем самым имеете в голове модель, хотя бы самую базовую, правил дорожного движения, а также модель автомобиля как движущегося тела с мотором и тормозами на разных типах дорожного покрытия (это довольно сложная модель, перевести её в математические формулы в соответствии с законами физики – не всякий возьмётся).

Наша цель сейчас – выявить и обсудить самое общее в том, как мы строим, представляем и обрабатываем модели. Сперва у себя в голове, потом при чтении чужих текстов и при написании своих, в речи (при коммуникации с другими), и, наконец, мы немного затронем (для продвинутых) моделирование при проектировании и написании программ для компьютеров. Самые универсальные приёмы, лежащие в основе любого моделирования, мы постараемся сформулировать так, чтобы они были полезны для всех этих занятий, и для многих других. Нашим языком моделирования будет в основном русский язык, форматом моделирования – таблички. Но с приобретёнными знаниями вы сможете быстрее изучить формальные методы онтологического моделирования и освоить очень продвинутые технологии работы с информацией, типа RDF/OWL (https://en.wikipedia.org/wiki/Resource_Description_Framework, https://en.wikipedia.org/wiki/Web_Ontology_Language) или графовые базы данных (https://en.wikipedia.org/wiki/Graph_database ).

Специальные методы моделирования для разных областей деятельности создаются в математике, физике, химии, и во множестве других точных наук. Однако этим мы тут заниматься не будем. Интересующие нас общие принципы моделирования развивались в рамках лингвистики, логики, когнитивистики, нейропсихологии, и программирования. Информация в этом руководстве собрана из именно из этих дисциплин. В целом мы будем называть изучаемую нами область термином, пришедшим из классической философии, но хорошо прижившимся и в программировании – «онтология».

Онтология в самом классическом смысле – это система представлений о сущем, о том, что есть в мире. С этого мы и начнём, но понятие «онтологии» мы ещё будем уточнять.