MorePC - Главная страница


О сайте

Регистрация

Обратная связь

Реклама на сайте

Публикации на сайте

Карикатуры

  Категории СВТ     Тесты и методики испытаний     Новости СВТ     Проблемы информатизации     Форум     Опросы     Словарь     Поиск  

     Проблемы информатизации : Моделирование информационных систем и процессов  

Предлагаем Вашему вниманию статьи по информационной безопасности.
 

25.09.2006. Анализ теории модулей с помощью метафоры Холтона

версия для печати

© Шуткин Л. В., 2006.

Разрешается копирование статьи, но не ее издание.

Содержание

Любая теория есть ничто иное, как плод нашей фантазии. /Анри Пуанкаре/

Введение

В науке о компьютерах давно образовался разрыв между практическими способами анализа и проектирования информационных систем и методами их математического описания. Он увеличился после появления Всемирной паутины (WWW), веб-сайтов, Унифицированного языка моделирования UML (Unified Modeling Language), и аспектно-ориентированного программирования. Наши исследования показали, что указанный разрыв можно сократить с помощью теории модулей, модульных сетей и парадигмы модульного мышления [1][2].

Теория модулей — это новая, ориентированная на практику теория, построенная путем введения дискретных ограничительных условий в теорию паттернов, предложенную выдающимся американским математиком Ульфом Гренандером [3][4].

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

Образующие используются и в теории модулей, но с иным, чем в теории паттернов, назначением. В теории модулей образующие применяются в качестве математических и наглядных моделей физических и логических модулей, состоящих из центральных тел, имеющих входы и/или выходы. В частности они применяются для моделирования нейронов мозга, операционных усилителей нейрокомпьютеров, блоков компьютерных программ, страниц веб-сайтов, организаций, обменивающихся информацией. Образующие можно использовать, как модели любых физических и логических модульных объектов с входами и выходами.

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

В теории модулей любая образующая имеет конечное число неотделимых от нее связей (bonds). Связи могут быть ориентированными или неориентированными. Входные и выходные ориентированные связи образующих представляют соответственно входы в тела реальных модулей и выходы из них. Неориентированная связь образующей имитирует вход в тело модуля, объединенный с выходом из него.

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

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

Теория модулей находится в процессе становления. Поэтому возник вопрос: достаточно ли у нас оснований считать ее полноценной теорией? Для ответа на него, в статье использована метафора Холтона, наглядно представляющая общие свойства формальных теорий [5]. С ее помощью далее описаны три уровня архитектуры теории модулей и показано, что она обладает полным набором свойств, присущих формальной теории.

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

Метафора Холтона

Американский ученый Джеральд Холтон предложил в 1973 г. оригинальный метод наглядного представления общих свойств формальных теорий в виде трехмерной сферы (метафоры) с координатными осями X, Y, Z.

Мы упростили метафору Холтона, заменив ее сферу тремя уровнями. На верхнем уровне метафоры, обозначенном символом Z, находятся принципы, языки и темы формальных теорий. Средний уровень Y — аналитический. На нем размещены математические основы и методы теорий. Нижний, эмпирический уровень X — это практические применения теорий.

На рис. 1 показаны три уровня метафоры Холтона.

Рис. 1. Уровни метафоры Холтона
Уровни теорийСодержание
X — уровень принциповпринципы, языки и темы теорий
Y — аналитический уровеньматематические основы и методы
Z — эмпирический уровеньпрактические применения

Рассмотрим верхний уровень Z метафоры, где расположены принципы построения, языки и темы теорий. Формальные теории обычно имеют один или несколько основных принципов. Например, основополагающим принципом построения математической теории множеств является взаимосвязь определения понятия «множество» с присущим людям актом мышления. На это впервые указал немецкий математик Хаусдорф в его классической работе о теории множеств [6]. К сожалению, Хаусдорф не сообщил, какой конкретный акт мышления он имел в виду. Исследования, выполненные с помощью теории модулей показали, что положенный в основу определения понятия «множество» акт мышления заключается в движении мысли человека от многих частных понятий к одному общему понятию (т. е. синтез или обобщение информации), а также в движении мысли в обратном направлении от общего понятия к частным понятиям (т. е. анализ или декомпозиция информации).

Это утверждение легко понять, рассмотрев символьное определение конечного множества {x1, x2, … , xn} = M с точки зрения мышления людей. Действительно, если положить, что элементами xi множества М являются частные понятия, например, «красный», «синий», «зелёный» и т. д., то М — это «цвет», т. е. общее имя частных понятий. Наш мозг устроен таким образом, что мы без труда обобщаем многие частные понятия именем одного общего понятия (синтез понятий) и, наоборот, по имени общего понятия люди вызывают из памяти соответствующие ему частные понятия (анализ понятий).

Актами мышления в виде взаимосвязанных операций синтеза и анализа информации владеют практически все люди, как выдающиеся умы человечества, так и маленькие дети. Например, двухлетний ребенок способен объединить частные понятия «дядя Ваня», «дядя Петя», «дядя Коля» общим понятием «дяди». И, наоборот, ребенок, встретив незнакомого мужчину, способен назвать его словом «дядя», т. е. использовать общее понятие для обозначения частного. Таким образом, мы видим, что в основу построения теории множеств положена идея (принцип) взаимосвязи определения понятия множество с присущим людям двунаправленным актом мышления в виде синтеза и анализа информации.

Ещё одним примером может служить принцип построения теории электромагнетизма Максвелла. Анри Пуанкаре в статье «Электричество и оптика» показал, что уравнения Максвелла, описывающие электромагнитные явления, и знаменитая система уравнений Ньютона, определяющая динамику движения материальных точек, имеют общую математическую форму в виде уравнений Лагранжа [7]. Отсюда Пуанкаре заключил, что главным принципом построения теории Максвелла является закон сохранения энергии.

Если принципы построения теории сформулированы, то людям легче понять ее смысл.

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

Следуя Холтону, мы поместили на верхнем уровне Z метафоры наряду с принципами и языками также «темы» теорий. Они представляют собой предметы, изучаемые теориями. Например, основной темой, изучаемой теорией электромагнетизма, является взаимосвязь электрических и магнитных явлений природы. Основные темы (предметы) теории модулей — это реальные модули и составленные из них модульные системы.

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

Нижний, эмпирический уровень X метафоры объединяет все практические применения теорий. Та или иная теория прямо или косвенно связана с практикой. Прикладные теории связаны с ней непосредственно. Абстрактные теории также связаны с практикой, но косвенно. Далее три уровня метафоры применены к анализу архитектуры теории модулей.

Принципы и язык теории модулей

Рассмотрим принципы и язык теории модулей, расположенные на верхнем, языковом уровне Z ее архитектуры.

Теория модулей построена на основе принципов атомизма, комбинаторности, наблюдаемости и структурности.

Принцип атомизма означает, что образующие, служащие в теории модулей моделями реальных модулей, являются непроизводными (атомарными) объектами теории. Понятие «непроизводные объекты теории» впервые ввел в обиход Ульф Гренандер.

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

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

Принцип наблюдаемости играет важную роль в теории модулей. Например, он позволил определить в ее рамках понятие «модуль» («модульный объект»). Если вы задумаетесь о том, что такое модуль, то вряд ли ответите на этот вопрос, кажущийся на первый взгляд несложным. Благодаря введению в теорию модулей наблюдателей, понятие «модуль» определяется в ней достаточно просто. Модулем или модульным объектом в теории модулей называется объект реального мира, который его наблюдатель счел целесообразным представить в виде образующей и использовать ее в качестве модели этого объекта. Например, наблюдатель с помощью образующей, называемой «образующая анализа», может представить в виде модуля, хотя и очень грубо, нейрон мозга. С помощью образующей, называемой «образующая синтеза», представляется как модуль страница веб-сайта, которую наблюдатель видит на экране компьютера. Химики с помощью образующих могут представить атомы в виде модульных объектов, а с помощью схем модульных сетей изобразить молекулы [2]. Системные аналитики могут использовать схемы образующих для изображения организаций, обменивающихся информацией.

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

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

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

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

Рассмотренные выше принципы используются не только в теории модулей, но и в других теориях. Только в них они принимают иные, чем в теории модулей, формы или, как сказал Анри Пуанкаре: «Общие принципы любят одеваться в разные одеяния». Например, в теории графов принцип атомизма означает, что вершины графов (точки) являются атомарными элементами теории, а принцип комбинаторности означает, что из вершин составляются ребра и графовые сети (производные объекты теории графов, комбинируемые из вершин). Другой пример — уравнения динамики движения материальных точек. Здесь непроизводными (атомарными) элементами являются массы точек, их координаты в трехмерном пространстве и время. Все остальные объекты уравнений такие, как скорости, ускорения и т. д. получаются как вторичные из трех атомарных элементов.

Математический аппарат и наглядные схемы теории модулей

Рассмотрим уровень Y теории модулей. На нем находятся математический аппарат теории и основанные на нем формальные и наглядные методы решения задач. Математический аппарат теории имеет три взаимосвязанные части. Первая состоит из векторов признаков образующих. Вторая — представляет собой математические модели, описывающие модульные системы. Третья часть объединяет методы решения практических задач модульных систем.

Как было сказано ранее, вектора признаков образующих служат в теории модулей математическими моделями реальных модулей. Они формально описывают тела реальных модулей и их входы и выходы в виде последовательно расположенных символов, представляющих собой переменные имеющие области значений (домены).

Примером реального модуля, грубо описываемого образующей, может служить нейрон мозга. У нейрона есть ядро (тело), с которым соединено множество входных волокон, называемых дендритами. Дендриты имеют входы, на которые поступают химические и электрические выходные сигналы от многих других нейронов. Из тела нейрона выходит одно толстое волокно (аксон). Аксон ветвится на множество тонких волокон, каждое из которых, как полагают, несет один и тот же выходной сигнал нейрона. Окончания тонких аксонных волокон нейрона имеют соединения с дендритными входами других нейронов. Места соединений выходных окончаний аксонов с входами в дендриты называются синапсами. Эта грубая схема устройства нейрона может быть представлена в виде образующей, называемой образующей синтеза.

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

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

Образующие не только представляются формально векторами признаков, но и изображаются на бумаге и экранах компьютеров в виде наглядных схем, открывающих путь к практическому использованию теории модулей. Чтобы пояснить, что собой представляют образующие, на рис. 2а и 2б показаны наглядные схемы семантических образующих двух видов — синтеза и анализа.

Рис. 2. Образующие синтеза и анализа; пример модульной сети
а) Образующая синтеза б) Образующая анализа
в) Модульная сеть, моделирующая мыслительный акт синтеза и анализа информации

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

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

Более подробно о векторах признаков образующих, математических описаниях модульных сетей и их наглядных схемах вы можете узнать в работах [1][2].

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

Практика

Теория тем более ценна, чем шире сфера ее практического применения. Для практики особенно интересны теории, объекты которых представляются математическими моделями и изображаются наглядными схемами, рисуемыми на бумаге. Зачастую схемы позволяют решать практические задачи без использования математических моделей. Так, например, в теории графов графовые сети описываются математически и, кроме того, они рисуются на бумаге в виде понятных всем наглядных схем. Другой пример — реляционные таблицы. Они представляются в теории реляционных баз данных формально и, вместе с тем, изображаются на экранах компьютеров в виде понятных людям таблиц, содержащих данные.

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

Модульные сети имеют, благодаря возможности их изображения в виде схем на бумаге и экранах компьютеров, обширную сферу практических применений, которая постоянно расширяется. На рис. 3 в виде дерева показано, как она выглядит в настоящее время. (Прим. ред.: МОАП — модульно-ориентированный анализ и проектирование.)

Рис. 3. Схема практических применений модульных сетей

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

UML представляет собой визуальный язык, предназначенный для анализа и проектирования компьютерных программ и информационных систем. Корпорация OMG (Object Management Group), объединяющая ведущие компьютерные фирмы, выпускает стандарты на версии языка UML. Эти стандарты служат основой для создания фирмами многочисленных визуальных компьютерных программ, помогающих программистам и системным аналитикам проектировать информационные системы и их компьютерные программы.

После выпуска последней версии стандарта на язык UML (UML 2.0) обнаружилось, что из-за высокой сложности он мало пригоден для пользователей. В результате возникла потребность в языках, моделях и технологиях, повышающих уровень абстракции, на котором задумываются, создаются и развиваются информационные системы и компьютерные программы [8].

Анализ этой проблемы свидетельствует, что разработчики стандартов UML мыслят, в основном, категориями теории множеств и графовых сетей. Между тем, наши исследования показали, что если в разработке стандартов UML наряду с графовыми сетями и графовым мышлением применить модульные сети и модульное мышление, то это приведет к принципиально новому походу к построению языка UML и, возможно, к уменьшению его сложности.

Одной из перспективных областей применения модульных сетей является химия. Известно, что уже более 150 лет химики изображают структуры молекул в виде неориентированных графовых сетей. Например, молекула метана СН4 изображается неориентированной графовой сетью с пятью вершинами, одна из которых представляет атом углерода, а четыре других — атомы водорода. Четыре неориентированных ребра графа изображают сцепленные валентности атома углерода и четырех атомов водорода. В работе [2] показано, что химические молекулы можно представлять с помощью разъемных модульных сетей, а атомы и их валентности — в виде образующих. Такой подход оказался продуктивным. Он получил дальнейшее развитие в работе Сергея Комарова [9]. В ней для моделирования атомов использованы наглядные схемы образующих с двумя видами связей. Связи первого вида изображают валентности атомов, а второго — электрические силы Ван дер Ваальса. Благодаря этому, с помощью всего лишь трех модульных сетей Комаров описал процесс окисления угарного газа на золотой подложке в присутствии воды. Вероятно, такой подход может быть применен к описанию процессов синтеза белков из аминокислот.

Среди применений модульных сетей, обозначенных на рис. 3, следует особо выделить нейросети мозга и обучение студентов.

Мы намерены подробно рассмотреть ветви дерева применений в будущей статье «Кому и зачем нужны модульные сети».

Заключение

В статье рассмотрена архитектура теории модулей. В дальнейшем мы подробно исследуем математические и логические взаимосвязи между теорией модулей и теорией графов. Эта проблема представляет не только теоретический, но и большой практический интерес. Ее решение будет изложено в готовящейся статье «Взгляд на рассуждения Эйлера о Кенигсбергских мостах с точки зрения модульного мышления».

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

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

Литература

  • 1. Шуткин Л. В. Парадигма модульного мышления в компьютерной науке и практике. // М. НТИ, Сер. 2, 2004, № 10, с. 1–12.
  • 2. Шуткин Л. В. Парадигма модульного мышления. Журнал «Химия и жизнь» № 3, 2006, с. 38–43.
  • 3. Grenander U. Lectures in Pattern Theory, Springer-Werlag, New York, Heidenberg, Berlin, vol 1 (1976) Pattern Synthesis, vol 2 (1978) Pattern Analysis, vol 3 (1981) Regular Structures. Рус. пер.: У. Гренандер. Лекции по теории образов. Под ред. Ю. Журавлева. — М., Мир, 1979–1983.
  • 4. Grenander U. General Pattern Theory, Oxford University Press, 1993, 904 pp.
  • 5. Holton. Thematic Origins of Scientific Thought, Harvard University Press, Cambridge, Massachusets, 1973.
  • 6. Хаусдорф. Теория множеств. Пер. с нем. под. ред. и с доп. П. С. Александрова и А. Н. Колмогорова, М., Ком Книга, 2006, 304 с.
  • 7. Пуанкаре Анри. О науке, Пер. с франц., М. Наука, 1988, 530 с.
  • 8. Robert B. France, Sodipto Ghosh, Trung Dinh-Trong. Model-Driven Development Using UML 2.0: Promises and Pitfalls. Computer (IEEE Computer Society), Vol. 38, № 2, February 2005.
  • 9. Комаров С. М. Модули Ван дер Ваальса. Журнал «Химия и жизнь» № 3, 2006, c. 43.
  • UML. Unified Modeling Language

Статью "25.09.2006. Анализ теории модулей с помощью метафоры Холтона" Вы можете обсудить на форуме.




вверх
  Copyright by MorePC - обзоры, характеристики, рейтинги мониторов, принтеров, ноутбуков, сканеров и др. info@morepc.ru  
разработка, поддержка сайта -Global Arts