Книги, научные публикации

Разрешается копирование статьи но не ее издание Л В Шуткин ПАРАДИГМА МОДУЛЬНОГО МЫШЛЕНИЯ В КОМПЬЮТЕРНОЙ НАУКЕ И ПРАКТИКЕ Наука развивается в направлении единства Анри Пуанкаре ВВЕДЕНИЕ Интернет,

Всемирная паутина (компьютерные гипертексты, нейрокомпьютеры, нейросети мозга и многие другие физические и логические системы состоят из модулей. Модули и составленные из них модульные системы широко распространены и играют важную роль в природе и обществе. Тем более удивительно, что до последнего времени ученые не создали единой теории модульных систем, позволяющей представлять различные виды модулей и модульных систем формально и в виде наглядных схем. Лишь во второй половине 20 века выдающийся американский математик Ульф Гренандер построил основы новой оригинальной теории, которую можно использовать для решения этой важной задачи. Он назвал ее теорией паттернов [1,2].

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

Чтобы "приземлить" теорию паттернов до уровня практики мы ввели в ее формальный аппарат дискретные ограничительные условия.

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

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

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

Паттерновые сети позволяют представлять модульные системы формально и изображать их в виде наглядных модульных схем, рисуемых на бумаге или экранах компьютеров. Эти, схемы, отчасти напоминающие графы, открыли путь к широкому применению паттерновых сетей в компьютерной науке и практике [3,4,5].

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

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

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

Образующая, имеющая только входные и/или выходные связи, называется ориентированной, а образующая с неориентированными связями - неориентированной. Из ориентированных образующих составляются ориентированные паттерновые сети, из неориентированных образующих - неориентированные сети.

Любая образующая формально представляется набором символов, который Гренандер называл вектором признаков образующей.

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

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

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

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

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

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

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

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

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

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

Перспективно применение паттерновых сетей к объектно ориентированному программированию и в обучении студентов.

Паттерновые сети могут помочь в разгадке тайн мозга.

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

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

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

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

Однако, сегодня, в связи с появлением Интернет, Всемирной паутины, языков HTML, XML, веб страниц, открытых электронных правительств и других веб систем возникла настоятельная потребность в создании новых, модульных методов моделирования и проектирования информационных систем, расширяющих и дополняющих графовые и табличные методы. Этой насущной потребности компьютерного мира отвечают паттерновые сети и основанная на них "парадигма модульного мышления", которая появилась в конце 20-го века в результате обобщения примеров применения паттерновых сетей к решению практических и теоретических компьютерных задач.

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

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

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

В четвертом разделе статьи приведены пять примеров применения паттерновых сетей к решению конкретных практических и теоретических задач. Первый пример посвящен моделированию паттерновыми сетями двух простых веб страниц, имеющих одинаковые гипертекстовые структуры. Во втором - несложная паттерновая сеть сопоставлена с графом и построена паттерно-графовая сеть. В третьем примере паттерновая сеть использована для модульного моделирования гипертекстового веб учебного курса. Четвертый пример посвящен модульному моделированию и проектированию с помощью паттерновой сети Автоматизированной информационной системы Консолидированного бюджета Российской Федерации. В последнем, пятом примере путем преобразований параметрической модели паттерновых сетей, построенной в третьем разделе статьи, показано структурное единство модульных, графовых и табличных моделей данных. В совокупности примеры статьи иллюстрируют мощность и гибкость паттерновых сетей в решении практических и теоретических компьютерных задач, требующих модульного подхода. Статья завершается кратким Заключением.

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

ОГРАНИЧИТЕЛЬНЫЕ УСЛОВИЯ ДИСКРЕТНОЙ ТЕОРИИ ПАТТЕРНОВ В теории паттернов используются образующие с конечными и бесконечными числами связей, а также конечные и бесконечные множества образующих.

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

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

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

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

ОБРАЗУЮЩИЕ МОДЕЛИ МОДУЛЕЙ Образующие - это атомарные объекты теории паттернов, из которых конструируются ее более сложные объекты. В дискретной теории паттернов образующие служат формальными и наглядными моделями реальных модулей и их множеств.

В теории паттернов образующая обозначается символом g, а множество образующих как G. В дискретной теории паттернов рассматриваются только конечные множества образующих. В общем случае конечное множество образующих обозначается Gn, где n число образующих в множестве Gn. Образующая из множества Gn обозначается как gi, где i - это порядковый номер образующей в множестве Gn и следовательно i=1,2,...,n. В частности, если n=2, то i=1,2 и множество G2 состоит из двух образующих g1, g2.

Любая образующая имеет неотделимые от нее связи. Связь образующей может быть ориентированной (входной или выходной) либо неориентированной. Образующие, имеющие только входные и/или выходные связи, называются ориентированными, образующие с неориентированными связями - неориентированными. Входные и выходные связи образующих моделируют соответственно входы и выходы реальных модулей.

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

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

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

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

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

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

a(gi)=a(i, i1, imin, irout) (1) Cимволы i, i1, imin, irout называются компонентами вектора (1). В векторе (1): i-порядковый номер образующей gi в конечном множестве образующих Gn;

il - компонент вектора признаков, называемый атрибутом образующей;

imin, irout - компоненты вектора, называемые показателями (переменными) входных и выходных связей образующей gi;

m,r - параметры вектора (1), числовые значения которых, обозначают соответственно числа входных и выходных связей образующих.

В векторе признаков (1) компонент i является константой, а компоненты i1, imin, irout - это переменные, имеющие соответствующие области значений.

Параметры m,r могут заменяться в векторе (1) числовыми значениями: m=0,1,2,...;

r=0,1.2.... В результате замены в векторе (1) параметров m и r числовыми значениями из вектора (1) получаются векторы признаков образующих с разными числами входных и выходных связей, которые служат моделями реальных модулей с разными числами входов и выходов.

Вектор (1) является параметрической моделью множества реальных модулей, имеющих как входы, так и выходы. Вместе с тем он может моделировать реальные модули c входами, но без выходов, а также модули с выходами, но без входов. Чтобы вектор (1) моделировал такие модули вводятся следующие соглашения. Если m=0, то imin=0, а если r=0, то irout=0. Кроме того полагается, что параметры m и r не могут одновременно равняться нулю. Последнее условие исключает случай, когда из вектора (1) одновременно удаляются компоненты imin, Birout.

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

Чтобы вектор (1) представлял как структуры, так и информационные содержания образующих, моделирующих реальные модули, компонентам i1, imin, irout вектора (1) ставятся в соответствие домены:

Di1, Dimin, Dirout (2) Домены (2) в общем случае определяются как конечные или счетные множества данных о реальных модулях. Помимо данных в каждом из доменов находится специальный символ 0, обозначающий "пустую" информационную среду. Если в каждом из доменов (2) помещен только символ 0 и ни в одном из них нет других данных, то в этом случае параметрический вектор (1) определен на пустой информационной среде и, следовательно, он моделирует только структуры реальных модулей, без учета их содержаний (данных).

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

Понятие "пустая информационная среда" впервые ввел в обиход Гренандер [1]. В этой связи следует заметить, что символ 0 может служить именем множества, объединяющего различные ФпустыеФ значения, например, такие как используемые в компьютерной науке и практике слова "null" и "nil", обозначающие соответственно неопределенные данные в реляционных базах данных и пустые терминальные символы в программировании. Это замечание подчеркивает полезность понятия "пустая информационная среда" для компьютерной науки и практики.

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

Как известно, в общем случае матрицы представляются в виде nхm, где символы n и m это параметры, обозначающие соответственно числа столбцов и строк матриц. Параметры m,n могут принимать числовые значения m=0,1,2,...;

n=0,1,2,... Если параметрам n,m поставить в соответствие домены Dn, Dm, содержащие числовые значения параметров m и n, то смысл параметрического представления матриц (nхm) с различными числами столбцов и строк будет определен также как ранее был определен смысл параметрического вектора (1) с параметрами m и r, который представлял образующие с различными числами входных и выходных связей.

Параметрический вектор признаков образующих (1) за счет варьирования в нем числовых значений параметров m и r обеспечивает большую мощность и гибкость моделирования реальных модулей с разными числами входов и выходов. Действительно, параметры m и r вектора (1) можно не только оба одновременно заменять числовыми значениями, но и варьировать их иными способами. Например, можно положить m=1 и r>=2 или m>=2 и r=1. За счет таких варьирований параметров m,r ниже будут получены векторы признаков образующих анализа и синтеза. Кроме того, в векторе (1) можно задавать различные диапазоны изменений числовых значений параметров m и/или r. Например, можно числовые диапазоны изменений параметра m задать так: 2=

В результате замены в векторе (1) параметров m и r конкретными числовыми значениями получаются векторы признаков образующих с разными числами входных и выходных связей, которые служат моделями реальных модулей с разными числами входов и выходов. Например, если в векторе (1) положить m=r=1, то из него получается вектор признаков линейной ориентированной образующей gi:

a(gi)=a(i, il, i1in, i1out) (3) Вектор (3) имеет домены:

Di1, Di1in, Di1out (4) Если во всех доменах (4) помещен только символ 0, обозначающий пустую информационную среду, и ни один из доменов не содержит данных о реальных модулях, то вектор признаков (3) линейной образующей является абстрактным. Абстрактный вектор признаков (3) и его пустые домены (4) служат общим структурным скелетом (остовом) всех образующих с одной входной и одной выходной связью. Структурный скелет образующих с одной входной и одной выходной связью является моделью структуры всех реальных модулей с одним входом и одним выходом.

На практике реальные модули и их множества обычно представляются не векторами признаков, а наглядными схемами образующих. В этой связи на Рис.1а показана схема абстрактной линейной ориентированной образующей gi, формально представленной вектором признаков (3).

Линейная образующая (L - образующая) in out = a ( g ) a ( i,,, ) - вектор компонент Ассоциированная линейная образующая i il i1 i in out D D, D Домены il, i1 i m = r = Текстовая строка i, in out il начало конец i1 i строки строки out in D D D i i i б) а) РИС. Изображенная на схеме Рис.1a точка называется вершиной образующей, по аналогии с вершиной графа. Стрелки с треугольниками на схеме изображают входные и выходные связи образующей.

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

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

Если во всех доменах (4) находится символ 0 и, кроме того, в них помещаются данные о конкретных реальных модулях, то вектор признаков (3) становится конкретным. Конкретный вектор признаков (3) и его конкретные (непустые) домены являются формальной моделью не только структурных скелетов, но и содержаний конкретных реальных модулей с одним входом и одним выходом. При этом в непустых доменах (4) могут находиться конкретные данные, характеризующие один или несколько реальных модулей с одним входом и одним выходом.

Фигурирующие в векторе признаков (3) компоненты i1, i1in, i1out представляют собой переменные, которым поставлены в соответствие домены Di1, Di1in, Dirout. Домены (4) являются областями значений этих переменных.

Данные о некотором одном реальном модуле, взятые из непустых доменов (4), могут присваиваться соответствующим переменным вектора (3). Вектор признаков (3), переменным i1, i1in, i1out которого присвоены данные о конкретном реальном модуле, является ассоциированным с данными о модуле. Ассоциированный вектор признаков образующей служит формальной паттерновой моделью реального модуля. Образующая, соответствующая ассоциированному вектору признаков (3), является ассоциированной образующей.

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

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

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

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

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

В связи с представлением вершин на схемах образующих в виде прямоугольников, к сторонам которых присоединены стрелки с треугольниками, изображающие входные и выходные связи образующих, следует упомянуть о предложенной Гренандером идее приписывания связям образующих четырех направлений - север, юг, запад, восток [1]. Развивая эту идею можно "привязать" входные и выходные связи образующей к четырем сторонам прямоугольника путем введения в ее вектор признаков дополнительных индексов, маркирующих переменные in и out символами, обозначающими стороны прямоугольника.

Образующие, связи которых "привязаны" к сторонам прямоугольников, могут быть использованы для модульного моделирования бизнес процессов.

Путем варьирования числовых значений параметров m,r в векторе (1) из него получаются не только линейные образующие, но и многие другие виды образующих. Для компьютерной науки и практики особый интерес представляют получаемые из вектора (1) образующие синтеза (S-образующие) и образующие анализа (А-образующие). Их наглядные схемы и параметрические векторы признаков приведены на Рис.2.

Образующая синтеза Образующая анализа (S - образующая) (А - образующая) in in out = im iout = = = a(gi ) a(i, il,, ), m 2, r 1 a(gi ) a(i, il,, ), m 1, r 1 i1 ir in iout i i, il i, il iin iout out in ir im б) а) РИС. Параметрический вектор признаков S-образующей получается из вектора (1) при условии m>=2, r=1, а при условии m=1, r>=2 из вектора (1) получается параметрический вектор признаков А образующей. S-образующими с разными числами входных связей можно моделировать нейроны мозга и операционные усилители нейрокомпьютеров. Если S-образующая моделирует нейрон мозга, то i - порядковый номер нейрона среди n нейронов, входные связи S образующей представляют ветви дендритов нейрона, а выходная связь - аксон нейрона. С помощью S-образующих можно также моделировать операции объединения родственных частных понятий (например КРАСНЫЙ, СИНИЙ или ВОЗДУШНЫЙ ТРАНСПОРТ, НАЗЕМНЫЙ ТРАНСПОРТ) в одно общее понятие (например в ЦВЕТ или в ТРАНСПОРТ).

А-образующими с разными числами выходных связей моделируются видимые на экранах дисплеев и хранящиеся в памяти компьютеров кадры гипертекстов и другие модульные компьютерные объекты. С помощью А-образующих можно также моделировать операцию разделения общего понятия (например, ЦВЕТ) на несколько частных понятий (например, КРАСНЫЙ, СИНИЙ ЦВЕТ и т.д.).

Рис.2 показывает, что образующие анализа и синтеза зеркально отображаются друг в друга с изменением направлений их связей (стрелок) на обратные. Зеркальные отображения А-образующих и S образующих проявляются также в их векторах признаков, показанных на Рис.2. Действительно, если в векторе признаков S-образующей заменить индексы in на out, а индексы out на in и параметр m заменить на r, то вектор признаков S-образующей превратится в вектор признаков А-образующей. Очевидно, что возможно также обратное преобразование А-образующей в S-образующую. Зеркальная симметрия образующих синтеза и анализа отображает взаимосвязь функций синтеза и анализа информации. Зеркальную симметрию S и А образующих можно использовать для исследования сходства навигационных структур компьютерных гипертекстов с операциями синтеза и анализа информации в нейросетях мозга.

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

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

Параметрический вектор признаков S-образующей с идентичными выходными связями, представляется в виде:

a(gi)=a(i, i1, imin, i,1,kout), m>=2 (5) где к=0,1,2,... - индекс идентичных выходных связей, имеющих общий домен Di1out. S-образующие с идентичными выходными связями можно использовать для моделирования нейронов со многими аксонными выходами, хранящими одинаковые значения аксонного сигнала. А образующие могут иметь идентичные входные связи. Параметрический вектор признаков А-образующей с идентичными входными связями, представляется в следующем виде:

a(gi)=a(i, i1, i,1,kin, irout), r>=2 (6) где к=0,1,2,,... - индекс идентичных входных связей, имеющих общий домен Di1in При к=0 из (6) получается параметрический вектор признаков А образующей с одной входной связью:

a(gi)=a(i, il, i1in, irout), r>=2 (7) Если А-образующая (6) моделирует кадры компьютерного гипертекста, то идентичные входные связи имитируют несколько входов в кадры.

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

Возможно, что такие сети помогут найти аналогию между гипертекстами и нейросетями мозга.

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

a(gi)=a(i, i1, ) (8) где - переменные вектора (8), характеризующие неориентированные связи образующих, =1,2,...

Неориентированные образующие будут использованы далее в примере моделирования Автоматизированной информационной системы Консолидированного бюджета Российской Федерации.

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

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

ПАРАМЕТРИЧЕСКИЕ МОДЕЛИ ПАТТЕРНОВЫХ СЕТЕЙ Наши гипотезы это атомы мыслей сцепленные друг с другом Анри Пуанкаре В этом разделе будут построены параметрические модели абстрактных ориентированных паттерновых сетей, предназначенных для моделирования реальных модульных систем, состоящих из модулей с попарно соединенными выходами и входами. Но прежде чем приступать к их построению приведем общие сведения о паттерновых сетях и связанных с ними понятиях.

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

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

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

Также как образующие, паттерновые сети могут быть абстрактными, конкретными и ассоциированными. Абстрактная сеть состоит из абстрактных образующих, конкретная сеть - из конкретных, а ассоциированная сеть - из ассоциированных образующих.

Любая паттерновая сеть (абстрактная, конкретная или ассоциированная) имеет состав и домены. В общем случае паттерновая сеть обозначается символом "c", а состав сети - "состав с". Если паттерновая сеть состоит из n образующих, то "состав с"=g1,g2,...,gn. В каждом из доменов абстрактной сети содержится только символ 0, обозначающий пустую информационную среду.

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

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

Общее число связок паттерновой сети обозначается символом N.

Произвольный порядковый номер связки сети обозначается символом j (1<=j>=N).

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

Абстрактная паттерновая сеть имеет состав, структуру и неопределенное содержание, поскольку во всех ее доменах находится только символ 0. Таким образом, абстрактная паттерновая сеть не "привязана" к какой-либо конкретной информационной среде. Состав, структура и домены абстрактной паттерновой сети составляют в совокупности ее структурный скелет, который также называется остовом паттерновой сети. Понятия состав, структура и остов паттерновой сети будут пояснены в Примере 1, рассмотренном ниже в Разделе 4.

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

Помещенные в доменах паттерновой сети данные "привязывают" паттерновую сеть к конкретной информационной среде.

Ассоциированная паттерновая сеть как и конкретная сеть имеет состав, структуру и конкретное содержание в виде помещенных в ее доменах данных об одной или нескольких реальных модульных системах. Но при этом, в отличие от конкретной сети, переменным и ассоциированной паттерновой сети присвоены взятые из доменов сети данные, характеризующие некоторую одну реальную модульную систему. Следовательно, ассоциированная паттерновая сеть не только определена на конкретной информационной среде, но и служит моделью некоторой реальной модульной системы. Если в доменах ассоциированной паттерновой сети содержатся данные только об одной реальной модульной системе, то на схеме сети ее домены, обычно, не показываются.

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

В общем случае связка ориентированной сети обозначается двумя переменными out, in. На каждой связке паттерновой сети устанавливается бинарное отношение между двумя ее переменными, называемое отношением связей и обозначаемое символом. В дискретной теории паттернов отношение связей имеет имя "соединено". Таким образом, связка ориентированной сети, с установленным на ней отношением связей, представляется в виде:

out in, -соединено.

Если паттерновая сеть абстрактная, то на всех ее связках отношение связей -соединено имеет, по определению, единственное значение ИСТИНА. Следовательно все связки любой абстрактной паттерновой сети являются истинными. Связки конкретных паттерновых сетей также являются истинными по определению. Поэтому, в общем случае, связка абстрактной или конкретной ориентированной паттерновой сети представляется в следующем виде;

out in, -соединено ИСТИНА (9) В отличие от абстрактных и конкретных сетей, на всех связках которых -соединено ИСТИНА, связки ассоциированных паттерновых сетей могут быть либо истинными либо ложными. Если двум переменным Bout, Bin, участвующим в связке сети, присвоены данные из доменов этих переменных, то такая связка называется ассоциированной с данными. Так как ассоциированные связки паттерновых сетей могут быть либо истинными либо ложными, то в общем случае связка ассоциированной ориентированной паттерновой сети представляется в виде:

out in, -соединено ИСТИНА или ЛОЖЬ (10) Вопрос о том является ли ассоциированная связка сети истинной (соединенной) или ложной (разъединенной) решается в зависимости от данных, присвоенных двум ее переменным, а также от условия соединения-разъединения данной ассоциированной связки. Условие соединения-разъединения ассоциированной связки может быть сформулировано, например, следующим образом: если двум переменным, участвующим в связке паттерновой сети, присвоены одинаковые данные, то на этой связке -соединено ИСТИНА и связка является истинной (соединенной), а если переменным присвоены разные данные, то -соединено ЛОЖЬ и связка является ложной (разъединенной).

Если условием истинности соединения ассоциированной связки сети является равенство данных, присвоенных ее переменным, а условием ложности связки является неравенство этих данных, то в этом случае условие соединения-разъединения связки сети представляется в виде:

out in, -соединено(равенство) ИСТИНА или ЛОЖЬ (11) Слово "равенство" может быть заменено его математическим символом "=" и тогда соотношение (11) представляется более кратко:

out in, -соединено(=) ИСТИНА или ЛОЖЬ (12) Паттерновые сети, для всех связок которых условием истинности соединений является равенство данных, присвоенных их переменным, используются в компьютерной практике чаще, чем сети с иными условиями истинности соединений связок.

Связки сети помимо условия истинности соединений, определяемого равенством данных, присвоенных переменным, могут иметь иные условия истинности соединений. Например, условиями истинности соединения связки сети, ассоциированной с данными, могут быть значения -соединено: "больше" (>), "меньше" (<), "больше или равно" (>=) или другие значения. Если условием истинности соединения ассоциированной связки является значение "больше", то в соотношении (12) знак "=" заменяется знаком ">":

out in, -соединено(>) ИСТИНА или ЛОЖЬ (13) Если все связки ассоциированной паттерновой сети являются истинными, то такая сеть называется истинной.

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

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

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

Состав параметрической модели абстрактных ориентированных паттерновых сетей определим набором, состоящим из n параметрических векторов признаков образующих g1,g2,...,gn:

in out а(gi ) = a(i,,im,ir ), i=1,2,...,n (14) ili i i В Разделе 2 мы имели дело с параметрическим вектором признаков образующих (1). Он был определен при условии i=const и имел более простую форму чем параметрические векторы (14). Вектор признаков (1) состоял из компонентов - i, i1, imin, irout. Векторы признаков (14) похожи на вектор (1), но имеют ряд отличий от него.

Во-первых, в соотношениях (14) компонент i (порядковый номер образующей gi множества n образующих) изменяется и принимает значения i=1,2,...,n, а в векторе (1) компонент i являлся константой. Во-вторых, вектор (1) имел одну компоненту i1, а векторы (14) имеют li компонент. Наконец, в отличие от вектора (1), в векторах (14) параметры m,r имеют нижние индексы i.

В соотношениях (14), параметры li, mi, ri в каждом из n векторов признаков можно заменять различными числовыми значениями, выбранными в диапазонах li=1,2,...,limax, mi=1,2,...,mimax, ri=1,2,...,rimax. Причем выбираются эти числовые значения так, чтобы при определенном числовом значении i, после замены параметров li, mi, ri числовыми значениями числа входных и выходных связей полученной абстрактной образующей равнялись числам входов и выходов одного из реальных модулей, соединенных в модульную систему, моделируемую паттерновой сетью. К примеру, в соотношениях (14) абстрактная образующая с номером 3 (i=3) может иметь одну входную связь (m3=1) и пять выходных связей r3=5). Такая образующая служит моделью одного из соединенных в модульную систему (моделируемую паттерновой сетью) реальных модулей, который имеет один вход и пять выходов.

Набор из векторов признаков, определяемых соотношениями (14), является параметрическим "образом" составов многих абстрактных паттерновых сетей с конкретными числами входных и выходных связей.

Векторы признаков, описывающие составы таких абстрактных сетей, получаются путем замены в соотношениях (14) параметров li,mi,ri конкретными числовыми значениями. Состав одной абстрактной паттерновой сети представляется n образующими, в каждой из которых параметры li,mi,ri имеют определенные числовые значения.

Переменным и, фигурирующим в векторах (14), ставятся в соответствие домены in out Dil, Dim, Dir (15) i i i Поскольку мы строим параметрическую модель абстрактных ориентированных паттерновых сетей, то в каждом из доменов (15) содержится только символ 0 и нет данных о реальных модульных системах. Если в доменах находятся только символы 0,то соотношения 14) и (15) определяют состав и "пустое" содержание параметрической модели абстрактных ориентированных паттерновых сетей.

В заключение определим структуру параметрической модели абстрактных ориентированных паттерновых сетей. Cтруктура любой абстрактной паттерновой сети определяется совокупностью всех ее N связок, на каждой из которых установлено отношение связей соединено ИСТИНА.

В общем случае структура параметрической модели абстрактной ориентированной паттерновой сети определяется соотношениями:

iout j ВiТin, j-соединено ИСТИНА, j=1,2,...,N (16) В соотношениях (16) iout, iТin - переменные, приписанные выходной и входной связям j-той связки сети;

j - отношение связей j-той связки сети;

i - порядковый номер образующей, выходная связь которой участвует в j-той связке сети;

i' - порядковый номер образующей, входная связь которой участвует в j-той связке сети, составленной из n образующих. Соотношения (16) определяют N связок параметрической модели.

Соотношения (14), (15), (16) являются параметрической моделью абстрактных ориентированных паттерновых сетей. Эта модель представляет собой общий структурный скелет (остов) многих конкретных и ассоциированных ориентированных паттерновых сетей.

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

Если в доменах конкретной паттерновой сети содержатся данные об одной или нескольких реальных модульных системах и данные о некоторой одной модульной системе присвоены переменным сети, то конкретная сеть превращается в паттерновую сеть, ассоциированную с данными. Ассоциированная паттерновая сеть служит моделью некоторой реальной модульной системы.

Ранее было сказано, что отношение связей j-соединено для каждой ассоциированной с данными j-той связки сети может иметь значение ИСТИНА или ЛОЖЬ, определяемое условием соединения разъединения j-той связки. Если число связок ассоциированной паттерновой сети больше одной, то тогда возможны два предельные случая определения числа условий соединения-разъединения всех связок сети. В первом предельном случае для каждой связки сети определяется свое условие соединения-разъединения ее связей, отличное от условий соединения-разъединения других связок сети.

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

Если в параметрической модели (14),(15),(16) положить mi=1 при любых числовых значениях i, а параметры ri оставить свободными (ri=1,2,...rimax), то получается первая частная параметрическая модель абстрактных ориентированных паттерновых сетей:

out a(gi ) = a(i,, iin, ir ), i=1,2,...,n ili i out Dil, Diin, Dir (17) i i iout j iТin, j-соединено ИСТИНА В модели (17) mi=1 при любых значениях i. Поэтому, очевидно, что в ней используются линейные образующие и образующие анализа и не применяются образующие синтеза. С помощью модели (17) представляются компьютерные гипертексты.

Если в параметрической модели (14),(15),(16) положить ri=1 при всех значениях i, а параметры mi оставить свободными (mi=1,2,...mimax), то получается вторая частная параметрическая модель абстрактных ориентированных паттерновых сетей:

in a(gi ) = a(i,, im, iout ), i=1,2,...,n ili i in Dil, Dim, Diout (18) i i iout j iТin, j-соединено ИСТИНА В модели (18) ri=1 при любых значениях i. Поэтому, очевидно, что в ней используются линейные образующие и образующие синтеза и не применяются образующие анализа. С помощью модели (18) представляются реальные сети, составленные из операционных усилителей нейрокомпьютеров, и нейросети мозга.

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

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

ПРИМЕРЫ ПРИМЕНЕНИЯ ПАТТЕРНОВЫХ СЕТЕЙ Теория мало что стоит если ее нельзя применить на практике Петр Кропоткин Паттерновые сети можно применять для решения практических и теоретических задач компьютерной науки и практики, а также задач из других областей знаний, требующих модульного подхода. Основное достоинство паттерновых сетей в том, что их можно использовать в виде понятных людям наглядных схем без построения формальных описаний сетей.

Ниже рассмотрены пять характерных примеров применения паттерновых сетей к решению компьютерных задач. Первые четыре примера практические, а пятый - теоретический.

ПРИМЕР 1. МОДУЛЬНЫЕ МОДЕЛИ ДВУХ СТРУКТУРНО ПОДОБНЫХ ВЕБ СТРАНИЦ.

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

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

Ассоциированные паттерновые сети Тран. Тран.

Зак. Зак.

S преобразование q1 Транспорт q1 Закон подобия Тран. Возд. Тр. Наз. Тр. Тран.

Зак. Ст1 Ст2 Зак.

Тран. Возд. Тр. Наз. Тр. Тран.

Зак. Ст1 Ст2 Зак.

q q q2 q Воздушный Наземный Статья 1 Статья транспо рт транспорт a) b) РИС. Ассоциированная с данными паттерновая сеть, показанная на Рис.3а, моделирует веб страницу c именем "Закон". Закон имеет две статьи. Модель (паттерновая сеть) состоит из трех образующих g1, g2, g3. Образующая g1 моделирует в виде модуля первый кадр веб страницы, на котором приведены имя "Закон" и две гипертекстовые ссылки "Статья1" и "Cатья2", щелчками мыши по которым, на экран компьютера вызываются второй и третий кадры веб страницы (они представлены на рисунке образующими g2, g3). На втором и третьем кадрах веб страницы приведены тексты двух статей Закона.

Несоединенные входная и выходная связи образующей g1 моделируют вход в веб страницу из системного окружения и выход из нее.

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

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

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

Обе ассоциированные паттерновые сети Рис.3 являются регулярными, поскольку на всех их связках выполняется условие равенства данных, присвоенных переменным связок.

Рисунки 3.а,b показывают, что к двум регулярным ассоциированным паттерновым сетям, имеющим общий структурный скелет (остов) и одинаковое отношение связей на связках, может быть применено преобразование подобия, обозначаемое символом s. В результате применения к ассоциированной паттерновой сети s преобразования подобия структурный скелет сети не меняется и при этом она остается регулярной, изменяются только данные, присвоенные переменным сети. В работах [1], [2] содержатся сведения о свойствах множеств s преобразований подобия паттерновых конфигураций, составленных из образующих.

Две ассоциированные паттерновые сети, показанные на Рис.3, имеют одинаковый структурный скелет в виде абстрактной паттерновой сети, представленной на Рис.4.

Абстрактнаяпаттерновая сеть 1out 1in.3. 1,1. 1in 1in 1out 1out..2.1. out out in in 3. 2.1 2.1 3.,2 3, 3. 2. Формальное описаниепаттерновой сети in in in out out out состав a(g1) = a(1,11, 11, 12, 13, 11, 12, 13 ) in out = 21, 21 ) a(g2) a(2, 21, сети in out = 31, 31 ) a(g3) a(3, 31, структурный структура out in out in out in out in 21 12, 11 21, 12 31, 31 скелет соединение ИСТИНА сети сети D11, D21, D содержание in in in out out out D11, D12, D13, D11, D12, D сети in out in out D21, D21, D31, D РИС. Из Рис.4 видно, что абстрактная паттерновая сеть имеет состав, структуру и пустое содержание. Их совокупность называется структурным скелетом или остовом сети. Состав сети - это набор, состоящий из всех ее образующих. Содержание абстрактной сети - это набор, состоящий из всех ее доменов, определенных на пустой информационной среде. Структура абстрактной паттерновой сети состоит из всех ее связок, на каждой из которых установлено отношение связей -соединено ИСТИНА.

С помощью структуры паттерновой сети строится еще одна важная характеристика сети, называемая структурой соединений паттерновой сети и обозначаемая символом. Особое значение этой характеристики сети для компьютерной теории и практики обусловлено тем, что с ее помощью устанавливаются взаимосвязи между паттерновыми сетями и графами. В частном случае, для абстрактной паттерновой сети, представленной на Рис.4, структура ее соединений представляется набором из четырех упорядоченных пар: <2,1>, <1,2>, <1,3>, <3,1>. Набор этих пар является графом, построенным на трех соединенных связками вершинах 1,2,3 паттерновой сети Рис.4. Рассматривая приведенный выше набор из четырех упорядоченных пар легко понять общий алгоритм (правило) построения структур соединений паттерновых сетей из их связок. Очевидно, что это правило заключается в использовании в качестве первых и вторых элементов упорядоченных пар (представляющих ориентированные ребра графов) первых чисел, фигурирующих в нижних индексах переменных связок паттерновой сети.

Из рассмотрения Рис.4 следует вывод, что структура паттерновой сети представляет собой граф, построенный на вершинах сети, соединенных связками.

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

ПРИМЕР 2. ПАТТЕРНОВЫЕ, ГРАФОВЫЕ И ПАТТЕРНО-ГРАФОВЫЕ СЕТИ В Примере 1 связки паттерновой сети были преобразованы в ребра графа с помощью формального алгоритма. Проиллюстрируем теперь это преобразование на наглядных схемах сетей. На Рис. наглядно показано преобразование паттерновой сети, моделирующей веб страницу "Закон", в граф, ассоциированный с данными о странице.

Граф Паттерновая сеть Паттерно-графовая сеть Зак. Зак.

Зак Зак.

.

1, Закон 1, Закон 1, Закон Зак Ст.1 Ст.2 Зак.

2 Зак. Ст.1 Ст.2 Зак.

Статья 1 Статья 2 Статья 1 Статья Ребро графа нельзя резать Статья 1 Статья Связка сети может быть соединена и разъединена c) a) b) РИС. Если в ассоциированной паттерновой сети Рис.5b заменить все ее четыре сетевые связки ребрами графа и уничтожить (аннигилировать) две внешние связи сети, то паттерновая сеть превратится в ассоциированный граф, показанный на Рис.5а. Из сопоставления схем Рис.5а,b следует вывод, что паттерновые сети представляют компьютерные гипертексты более детально, чем графы.

Если связки сети Рис.5b заменить ребрами графа и при этом сохранить внешние связи сети, то из паттерновой сети получается паттерно-графовая сеть, показанная на Рис.5с.

На Рис.5а показано, что ребро графа нельзя резать на две части, а связка паттерновой сети может быть соединена или разъединена (см. Рис.5b).

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

Закрытая паттерновая сеть преобразуется в паттерно-графовую сеть путем замены части ее сетевых связок графовыми ребрами.

Если некоторая паттерновая сеть моделирует реальную открытую модульную систему, то связки сети представляют внутренние границы (внутренний профиль) модульной системы, а несоединенные связи сети представляют внешнюю границу (внешний профиль) модульной системы.

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

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

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

ПРИМЕР 3. ГИПЕРТЕКСТОВЫЕ ВЕБ КУРСЫ.

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

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

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

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

Наименования являются гиперссылками на тексты соответствующих лекций. Щелчком мыши по гиперссылке студент вызывает на экран вместо Оглавления курса текст соответствующей лекций. Таким образом веб курс имеет 12 прямых гипертекстовых навигационных путей из Оглавления в 12 лекций. Из любой лекции, видимой на экране, щелчком мыши студент вызывает на экран Оглавление курса.

Следовательно веб курс имеет 12 обратных навигационных путей из лекций в Оглавление. Эти 24 прямые и обратные пути навигации можно представить в виде одного взгляда рассматривающего их студента (наблюдателя). Взгляд студента на 24 пути навигации из Оглавления курса к 12 лекциям и обратно представлен на Рис.6 тремя моделями графовой, модульной и табличной.

Графовое, модульное и табличное представление взгляда на гипертекстовый курс Графовое Модульное Табличное представление представление представление Номера Номера Номера ссылок ссылок Имена кадров кадров прямой обратной Огл. Огл.

навигации навигации 0 Оглавление 1 ч 12 Оглавление 1 Лекция 1- 0, Оглавление 2 Лекция 2- ЕЕ Е Е 12 Лекция 12 - Огл. Лек Лек Огл.

.1. 1 Лекция 1 Лекция 12 Огл. Лек Лек Огл.

.1. Е 1 Лекция 1 Лекция c) a) b) РИС. Модульная модель взгляда студента на гипертекстовый веб курс, показанная на Рис.6b, является открытой ассоциированной регулярной паттерновой сетью. Она имеет имеет 24 сетевые связки, которые сгруппированы в 12 пар связок. Каждая такая пара связок изображает два навигационные пути - прямой и обратный. Пара, состоящая из прямого и обратного навигационных путей, является элементарным взглядом студента на гипертекстовую навигацию. Как видно сложный навигационный взгляд, представленный на Рис.6b состоит из элементарных взглядов. Нетрудно понять, что любой сложный навигационный взгляд на гипертекстовый веб курс состоит из элементарных взглядов.

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

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

Гипертекстовые веб курсы могут иметь очень сложные навигационные структуры, представляемые не одним, а многими взглядами наблюдателя. В частности, кроме рассмотренного выше навигационного взгляда типа "Оглавление-лекции" веб курсы могут иметь взгляды типов "Предметный указатель-лекции", "Ссылки между лекциями", "Вопросы - ответы", "Ссылки на Интернет сайты" и иные взгляды. Эти разнообразные взгляды могут быть представлены модульными, графовыми и табличными моделями.

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

ПРИМЕР 4. КОНСОЛИДИРОВАННЫЙ БЮДЖЕТ РОССИЙСКОЙ ФЕДЕРАЦИИ История развития методов моделирования и проектирования компьютерных информационных систем и их программных средств насчитывает около пятидесяти лет. В последнее десятилетие в США были выполнены работы по интеграции и стандартизации таких методов. В наиболее четкой форме результаты этих работ воплотились в стандартном языке UML. Его ядром являются UML диаграммы (наглядные модели), позволяющие разработчикам изображать в виде рисунков различные "взгляды" на сложные компьютерные системы и их программные средства. Математической основой языка UML являются теория множеств и графы. Во многих странах и в России язык UML и его диаграммы активно применяются в проектировании сложных компьютерных систем. Анализ практики разработки территориально распределенных, государственных систем, работающих на основе компьютерных сетей, показал, что для проектирования подобных особо сложных систем диаграммы UML целесообразно дополнить модульными диаграммами, построенными на основе паттерновых сетей.

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

В СССР управление экономикой осуществлялось с помощью государственного плана. Сегодня, после проведения в России рыночных реформ главным инструментом управления страной и ее экономикой является Консолидированный бюджет РФ Он имеет две части - территориальную и ведомственную. Территориальная часть (территориальный разрез) Консолидированного бюджета объединяет в единую систему федеральный бюджет, бюджеты 89 субъектов РФ (регионов) и бюджеты всех муниципалитетов страны.

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

Одним из основных направлений дальнейшего развития компьютеризации Консолидированного бюджета РФ является создание компьютерной сети, объединяющей Автоматизированные информационные системы (АИС) федерального бюджета, бюджетов регионов и муниципалитетов.

На Рис.7 приведена диаграмма модулей, наглядно изображающая территориальную часть АИС Консолидированного бюджета Р.Ф. в виде паттерновой сети со многими неориентированными сетевыми связками и двумя внешними (несоединенными) связями.

Диаграмма модулей Консолидированного бюджета РФ Граница с бюджетами out министерств и Интернетпортал АИС федерального бюджета ведомств Минфина 89 Региональный профиль АИС Консолидированного бюджета РФ АИС бюджета 1 АИС бюджета г. Москвы субъекта РФ 1.n 1. 89. 89.m 1.n 1.1 89.1 89.m 1 89 1.1 1.n 89.1 89.m АИС АИС АИС АИС Е Е бюджета бюджета бюджета бюджета муниципалитета муниципалитета муниципалитета муниципалитета РИС. Как видно, диаграмма представляет территориальную часть АИС Консолидированного бюджета в виде взаимосвязанных модулей, объединенных в трех уровневую древовидную структуру. В этой структуре каждая бюджетная АИС является модулем, моделью которого служит образующая теории паттернов. Диаграмма наглядно показывает региональный и муниципальный граничные профили АИС Консолидированного бюджета. На модульной модели в виде внешней выходной связи паттерновой сети показан Интернет сайт (портал) Минфина, содержащий среди прочих данных информацию, предназначенную для специалистов, разрабатывающих региональные и иные бюджеты, объединенные в Консолидированный бюджет. Сеть Рис. имеет три уровня. На верхнем, федеральном уровне находится АИС федерального бюджета. С помощью компьютерной сети она взаимодействует с АИС бюджетов 89 субъектов федерации (регионов), которые образуют второй, региональный уровень АИС Консолидированного бюджета. В свою очередь, АИС бюджета каждого региона через компьютерную сеть взаимодействует с АИС бюджетов его муниципалитетов. Совокупность АИС бюджетов всех муниципалитетов составляет третий, муниципальный уровень АИС Консолидированного бюджета. Граница, определяющая документальный обмен между АИС федерального бюджета и АИС бюджетов 89 регионов, является региональным профилем АИС Консолидированного бюджета. Граница, документального обмена между АИС бюджетов регионов и АИС бюджетов муниципалитетов, представляет собой муниципальный профиль Консолидированного бюджета. Региональный и муниципальный профили представляют собой внутренние границы, через которые происходит обмен электронными версиями документов между АИС бюджетов, объединенных в АИС Консолидированного бюджета. Для нормального функционирования АИС Консолидированного бюджета все сетевые связки регионального и муниципального профилей должны быть согласованы с помощью соответствующих протоколов взаимодействия.

На Рис.8 показана таблица протоколов взаимодействия регионального профиля АИС Консолидированного бюджета.

Таблица протоколов взаимодействия регионального профиля Консолидированного бюджета РФ 0 0 p 1 0 89 T p T - типовой протокол регионального взаимодействия РИС. В таблице объединены 89 протоколов взаимодействия АИС федерального бюджета с АИС бюджетов регионов России. Каждый из этих протоколов имеет индивидуальные особенности и, вместе с тем, некоторую общую часть, присущую всем 89 протоколам. Эта общая часть выделена в типовой протокол взаимодействия АИС, показанный на Рис.8 справа. Типовой протокол взаимодействия может быть разделен на частные протоколы, каждый из которых регламентирует один из аспектов типового взаимодействия АИС. Например, можно выделить в отдельный документ протокол типового взаимодействия программных средств регионального профиля АИС Консолидированного бюджета. Одной из составных частей типового протокола регионального профиля АИС может стать протокол согласованных типовых форм документов обмена данными через региональный профиль.

При этом типовые формы документов обмена могут быть представлены в виде программного кода, записанного на языке XML.

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

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

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

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

Из Примера 4 следует вывод - паттерновые сети являются эффективным средством моделирования, проектирования и стандартизации взаимодействия территориально-распределенных автоматизированных систем, функционирующих на основе компьютерных сетей.

ПРИМЕР 5. СТРУКТУРНОЕ ЕДИНСТВО МОДУЛЬНЫХ, ТАБЛИЧНЫХ И ГРАФОВЫХ МОДЕЛЕЙ ДАННЫХ.

Доказательство структурного единства модульных, графовых и табличных моделей данных разделим на три шага.

Сначала, на первом шаге, покажем, что существует структурное единство абстрактных паттерновых (модульных) сетей и графов, не ассоциированных с данными. Затем, на втором шаге, докажем структурное единство абстрактных паттерновых сетей и матриц. Тем самым будет доказано структурное единство абстрактных модульных (паттерновых) сетей, не ассоциированных с данными графов и матриц.

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

Итак покажем, что существует структурное единство абстрактных паттерновых сетей и графовых сетей, не ассоциированных с данными (первый шаг). Ранее в примерах 2,3 мы уже имели дело с частными случаями преобразований паттерновых сетей в графы. Теперь преобразуем абстрактные паттерновые сети в графы в общем случае. С этой целью вернемся к построенной в Разделе 3 параметрической модели абстрактных паттерновых сетей, определенной соотношениями (14), (15), (16). Допустим, что она определяет паттерновые сети, не имеющие внешних связей, и ограничим модель условием li=mi=ri=0.

При таких условиях из соотношений (14), исключаются in out параметрические переменные ili,,.

im iri i Параметрические векторы признаков превращаются в "вырожденный вектор" а(i) c единственным компонентом i, принимающим числовые значения от 1 до n, i=1,2,...,n. Cоотношения (15), определяющие домены параметрических переменных, также исключаются из модели, поскольку li=mi=ri=0. Соотношения (16), определяющие N связок параметрической модели паттерновой сети, преобразуются в cоотношения, определяющие N ребер ориентированного графа.

Таким образом при условии li=mi=ri=0 соотношения (14), (15), (16) преобразуются к следующему виду:

a(i), i=1,2,...,n < i,i'>j, j=1,2,...,N (19) Векторы a(i), фигурирующиеDi, Dj в соотношениях (19), определяют состав ориентированной графовой сети, имеющей n вершин, при этом символ i, обозначает порядковый номер i-той вершины графа. Соотношения j определяют N ребер (структуру) ориентированной графовой сети, имеющей n вершин. Символ j, (1>=j<=N) обозначает порядковый номер ребра среди N ребер ориентированной графовой сети. Домены Di поставлены в соответствие n вершинам графа, а домены Dj - N ребрам графа.

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

Если в параметрической модели, определяемой соотношениями (14), (15), (16), применить алгоритм преобразования связок сети в графовые ребра не ко всем, а только к некоторой части N связок сети, то в этом случае параметрическая модель паттерновых сетей преобразуется в параметрическую модель паттерно-графовых сетей.

Для доказательства существования структурного единства абстрактных паттерновых сетей и матриц (второй шаг) преобразуем построенную в Разделе 3 параметрическую модель абстрактных ориентированных паттерновых сетей, определяемую соотношениями (14), (15), (16), в параметрическую матрицу, дополненную доменами ее столбцов.

С этой целью в соотношениях (14) и (15) положим mi=ri=0.

Тогда, в соответствии с принятым ранее соглашением из соотношений (14), (15) исключаются параметрические переменные и их домены, а соотношения 14), (15) преобразуются к следующему виду:

a( ) ili, i=1,2,...,n;

li=1,2,...,limax (20) Dil i Напомним, что соотношения (14), (15) были определены на Dil пустой информационной среде. Поэтому в каждом из доменов i содержится только символ 0, обозначающий пустую информационную среду, и ни в одном из них нет конкретных данных.

Cоотношения (20) представляют собой параметрическую модель n кортежей. При этом арность каждого i-го кортежа определяется числовым значением, заменяющим параметр limax. Например, если в соотношениях (20) положить n=3, l1max=4, l2max=2, l3max=5, то они определят три кортежа с разными арностями. Причем арность первого кортежа равна 3, второго - 2, а третьего - 5.

Если в соотношениях (20) положить limax=l при любом значении i, то все кортежи, определяемые соотношениями (20), будут иметь одинаковую арность, равную l. Поскольку параметр l не зависит от номера кортежа i, соотношения (20) приобретают следующий вид:

а(il), Dil (21) где i=1,2,...,n;

l=1,2,...,m Cоотношения (21) можно представить в следующей форме:

nxm, Dm (22) где n=0,1,2,...;

m=0,1,2,...

Здесь n-параметр, обозначающий число строк матрицы, а m - параметр, обозначающий число столбцов матрицы. Dm это домены, поставленные в соответствие столбцам матрицы. При этом символы 0, помещенные в доменах Dm, означают неопределенные значения данных, присваиваемых элементам столбцов матрицы.

Итак, на втором шаге, мы преобразовали параметрическую модель абстрактных паттерновых сетей, моделирующую структуры реальных модульных систем, в матрицу (22), дополненную доменами Dm. Ранее, на первом шаге, параметрическая модель абстрактных паттерновых сетей была преобразована в графовую сеть, определяемую соотношениями (19). Тем самым доказано единство структур абстрактных модульных (паттерновых) сетей, графовых сетей и матриц.

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

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

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

Матрица (22) является обобщенным структурным скелетом таблиц реляционных баз данных т.е. структурным скелетом табличных моделей данных.

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

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

Первый пример. От преобразования параметрической модели абстрактных паттерновых сетей в матрицу можно перейти к преобразованию параметрической модели ассоциированных паттерновых сетей в реляционные модели, построенные Е.Коддом и П. Ченом [6,7].

Мы не будем рассматривать здесь эти достаточно сложные преобразования. Укажем только, что с помощью такого преобразования модели Кодда и Чена получаются из параметрической модели ассоциированных паттерновых сетей (14), (15), (16) как частные случаи.

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

Его сущность заключается в существовании двух групп людей, называемых "наблюдателями", которые обладают разными знаниями о паттерновых, графовых и паттерно-графовых сетях. Первая группа наблюдателей "видит" формальные математические описания этих трех типов сетей и их наглядные схемы. Эти люди обладают "полными" (математическими и наглядными) знаниями о сетях. Вторая группа людей "видит" только лишь наглядные схемы сетей и ничего не знает о существовании их математических описаний. Эти люди обладают лишь частичными (наглядными) знаниями о сетях, но их, зачастую, оказывается достаточно для решения практических задач.

Следует заметить, что сегодня авторы теорий и моделей все чаще вводят в свои математические построения "человеческий фактор". Например, Гренандер включил в теорию паттернов "человеческий фактор" в виде двух "наблюдателей" - реального и идеального. Это позволило ему сформулировать два принципа построения теории паттернов, один из которых он назвал принципом реализма, а другой - принципом наблюдаемости [1]. Наблюдатель косвенно присутствует и в упомянутой выше модели П. Чена в виде информационного уровня модели данных "Сущность-Взаимосвязь" [7].

В различных информационных моделях "человеческий фактор" выступает в разных видах. Например, в первой версии стандарта на язык запросов XQuery, созданной группой XML Query Working Group, "человеческий фактор" проявляется в определении двух видов синтаксиса XQuery: один из них выражен на XML, а другой представляется в виде модели, которую могут воспринимать люди [8].

Доказательство структурного единства модульных, графовых и табличных моделей данных приводит к проблеме определения сходства принципов построения и языков трех теорий - паттернов, графов и реляционных баз данных. Для ее решения могут быть использованы принципы построения теории паттернов, сформулированные Гренандером в работе [1].

ЗАКЛЮЧЕНИЕ В статье изложены начальные основы дискретной теории паттернов и паттерновых сетей, моделирующих реальные модульные системы. В ней приведены примеры применения паттерновых сетей к решению практических и теоретических компьютерных задач, требующих модульного подхода.

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

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

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

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

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

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

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

Литература 1. Grenander U. Lectures in Pattern Theory, Springer-Werlag,New York,Heidenberg Berlin, vol I (1976) Pattern Synthesis, vol II (1978) Pattern Analysis, vol III (1981) Regular Structures.

2. Grenander U. General Pattern Theory, Oxford University Press 1993,904 pp.

3. Шуткин Л.В. Паттерновое моделирование гипертекстов // НТИ, Сер.2,1995, No 9, с. 20-26.

4. Шуткин Л.В. Результаты и перспективы применения теории паттернов к компьютерам // М. НТИ, Сер. 2, 1996, No. 12. с. 13-21.

5. Шуткин Л.В. Новое мышление компьютерного мира // М. НТИ, Сер. 2, 2000, No.12.

6. Kodd, E.F. A relational model of data for large shared data banks, Commun.

ACM - 13.6 (June 1970).

7. Chen,P. The Entity-Relationship Model - Toward a Unified View of Data, ACM Transactions on Datadase Systems, v.1, N1, March 1976.

8. XQuery 1.0: An XML Query Language, W3C Working Draft (2002 16 August), http//www.w3.org/TR/query.

   Книги, научные публикации