главная     об авторе       содержание       часть1       часть2       часть3      литература

IV. ОБЬЕКТНО-КЛАССИФИКАЦИОННОЕ МОДЕЛИРОВАНИЕ СЛОЖНЫХ СИСТЕМ

4.1. Введение.

   Чем дальше развивается цивилизация общества, тем сложнее становятся общественные отношения и создаваемые обществом технические, организационные, информационные, энергетические, транспортные, производственные, военные и другие системы, составляющие суть данной цивилизации. Создание и использование этих систем требует специального теоретического осмысления общих закономерностей построения и функционирования систем любой природы. Другими словами, обществу нужна системная философия (системология), общая теория и множество специальных теорий анализа и синтеза сложных систем. Людей, практически занимающихся проектированием сложных систем, уже не устраивает вербальная философия на уровне рассуждений об общих закономерностях развития природы и общества. Современная наука ищет способы и методы строгой формализации этих рассуждений на основе последних достижений математики, логики, кибернетики, информатики и других точных наук. В предыдущем разделе были изложены некоторые принципы исследования и проектирования сложных систем, известные как принципы системного подхода к проектированию объектов. Методологической основой системного подхода является теория и практика математического моделирования сложных систем. Классический системный подход, как правило, опирается на математическое моделирование с использованием теории подобия, теории научного эксперимента, математической статистики, теории алгоритмов и ряда других фундаментальных классических теорий. Наряду с этим классическим направлением за последнее десятилетие предпринималось много попыток создания системологии адекватной новым условиям цивилизации. Это особенно заметно в области проектирования информационно-управляющих систем и программного обеспечения ЭВМ. Одним из направлений проектирования, анализа и синтеза сложных систем является так называемый объектно-ориентированный подход (ООП). ООП заявлен как перспективная методологическая основа проектирования сложных систем преимущественно в области создания программного обеспечения ЭВМ. [17,18] .  Вообще объектно-ориентированный подход очень популярен в современном программировании. Поэтому о нем уже написано достаточно много работ, в основном прикладного характера. Однако фундаментальные исследования в данном направлении мало известны и слабо формализованы. Однако, как нам представляется, распространение идей ООП на общенаучный системологический уровень было бы полезно и для философского понимания процессов мышления и для практического проектирования сложных систем. На методологическое обобщение системного анализа и синтеза претендует также теоретическая системология. [19]  В данном разделе мы пытаемся объединить последние две системные концепции понятием “объектно-классификационное моделирование” (ОКМ) сложных систем любой природы и, по возможности, формализовать данную концепцию. Основой для этого будет служить разработанный автором математический аппарат исчисления обобщенных кодов подмножеств, изложенный во втором разделе настоящего пособия. Основными методологическими категориями ОКМ являются понятия: объект, класс, отношение (связь), система. Теория ОКМ предполагает содержательное и формальное определение этих категорий с целью построения математических моделей сложных систем.

4.2. Определение понятия “объект”

  В первом разделе настоящей книги уже предпринималась попытка дать интуитивное определение понятия “объект”. В нашем представлении объект - это все что мы различаем как нечто целое, реально существующее, или возникающее в нашем сознании и обладающее свойствами, значения которых позволяют нам однозначно распознавать это нечто. [17] определяет понятие “объект” следующим способом:

“Объект – это реальная или абстрактная сущность, определяемая как:

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

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

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

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

Пример. 1.

Идентификатором конкретного человека могут служить паспортные данные, отпечатки пальцев, характеристики ДНК и т. д. В качестве аргументов для идентификаторов объектов выбираются переменные, не изменяющие своих значений в течение всего периода жизни объекта, или хотя бы в течение периода его использования.   Параметрами обычно являются: рост, вес, температура тела, отпечатки пальцев, антропометрические параметры, структурные параметры и т. д. Параметры обычно характеризуют состояние объекта во времени и пространстве. Состояние, как правило, меняется с течением времени. Особое значение для всех объектов имеют их структурные параметры: состав элементов и характер связей между ними. Методы взаимодействия с окружающей средой определяют реакции объекта (в данном случае человека) на воздействия окружающей среды, например, на пощечину. Чаще всего методы описывают изменение параметров объекта в ответ на внешние воздействия окружающей среды. К числу функций, как правило, относят действия объекта, приводящие к некоторому результату, например, к производству определенного продукта. Аргументами функций, как правило, являются значения внешних воздействий на объект и значения параметров объекта в определенные моменты времени.  Вообще говоря, методы определяют динамику внутренних состояний объектов, а функции определяют внешний эффект, возникающий в результате этой динамики.  Из приведенного примера видно, что границы между перечисленными группами атрибутов весьма условны. Назначение атрибутов при описании объекта является прерогативой исследователя и полностью определяется целями и задачами исследования. Однако очевидно, что каждому исследователю в каждом конкретном случае, когда требуется изучать какие-либо объекты, не следует изобретать свой собственный способ формального описания (моделирования) объектов. Эти способы являются предметом исследования и развития общесистемной научной дисциплины, которую можно назвать “Объектно-классификационное моделирование систем”, сокращенно - ОКМ.   Всякая научная дисциплина использует для описания исследуемых объектов определенный символический язык. Описание объектов на этом языке называют символическими моделями. Для символического моделирования любого объекта O необходимо описать все его атрибуты и описать процесс изменения значений этих атрибутов во времени под воздействием различных факторов. Первое описание называют статической моделью объекта, а второе – моделью поведения объекта в заданных условиях. Проблема ОКМ состоит в том чтобы найти общий подход к символическому моделированию (формализованному представлению) объектов и процессов любой природы.  Обозначим описание имени – идентификатора объекта символом K, описание параметров объекта символом Q и описание методов и функций объекта символом Ф. Тогда статическая модель объекта есть формула:

OЮ(K ,Q , F , t).

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

= F (K ,Q ,X,t).

  В дальнейшем мы попытаемся найти формальные средства и конкретные выражения для моделей такого рода.

4.3. Введение в формальное моделирование атрибутов объектов

  Возвращаясь к понятию “атрибут”, напомним, что по нашему определению атрибут есть существенная деталь, параметр, свойство или функция определяемого объекта. Мы разделили все атрибуты объекта на четыре класса:

Однако, описание любого атрибута A также включает в себя описания своих атрибутов. Этими атрибутами являются: идентификатор K (код имени атрибута), синтаксическая форма описания (множество Q структурных параметров) и функциональное (семантическое) значение Z. Иными словами, любой атрибут представляется моделью (K.,Q,Z,t). Описание Z значения атрибута определяет тип значения, размерность значения (его предметную интерпретацию) и символику значения. Например, фраза “объект Oj весит 250 кг.” представляет собой описание параметра по имени “вес” данного объекта. Атрибут “вес” объекта Oj в настоящее время имеет значение цифрового типа 250, и размерность – кг. Можно сказать, что фраза “объект Oj весит 250 кг.” есть модель текущего состояния объекта Oj с единственным параметром “вес”, представленная на русском естественном языке.   Эту же фразу можно представить в виде логической формулы:

(O=Oj)Ю(вес Oj = 250 кг.).

Здесь (O=Oj) и (вес=250 кг.) – логические высказывания. Символ ? указывает на то, что из истинности первого высказывания следует истинность второго высказывания. Однако, о времени в этой модели ничего не сказано. Более точная формальная модель, соответствующая фразе “объект Oj весит 250 кг.”, имеет вид:

(O=Oj)Щ(q i=вес)Щ(t=настоящее)Ю(q i,j = 250 кг.),

где q i,j параметр объекта Oj, t - фактор времени. Данная модель точно определяет условия, при которых параметр q i,j принимает значение 250 кг. Однако и эта модель является неполной, так как в ней тип и область значений параметра q i,j определяются по умолчанию. Основное преимущество последней модели в том, что к ней можно применять все правила формального исчисления высказываний, которые позволяют формализовать анализ и синтез объектных моделей. Предположим теперь, что атрибут объекта Оj является его идентификатором Кj. Это означает, что Кj однозначно указывает на конкретный объект Оj, выделяя его из множества ему подобных. Например, “человек Петров Петр Петрович, 2000 года рождения, г. Москва” или “программное средство Windows 95”. Обычно идентификатор Кj представляет собой набор значений ряда классификационных признаков (классификационных атрибутов А1,…,Аn), т. е. КjО{E1ґґEn}, где Ei область значений атрибута Ai, i=1,…,n. Отсюда следует, что формально идентификатор любого объекта можно представить как элемент декартового произведения E1ґґEn. В дальнейшем мы детально рассмотрим этот способ моделирования идентификаторов объектов. Функциональные атрибуты объектов это методы и функции, определяющие их поведение. Например: “хамелеон меняет цвет кожи в соответствии с изменением цвета окружающей среды”, “изображение объекта исчезает с экрана при нажатии левой клавиши “мышки”, когда указатель находится в поле изображения кнопки “выход””, “напряжение на участке электрической цепи равно произведению силы тока на сопротивление в этой цепи”. Структура формальной модели всех этих выражений представляет собой отношение “причина – следствие”. Причиной обычно являются некоторые действия, либо некоторые условия, а следствием – результат действия или обусловленное значение атрибута. В общем случае схема этой модели имеет вид:

f(X1,…,Xs) = Y,         

где X1,…,Xs – аргументы, а Y – функция, символ f обозначает тип операции с аргументами. Аргументами таких моделей обычно являются параметры q объектов, а так же внешние и внутренние факторы c , влияющие на поведение объектов. Поэтому применительно к объектам модели функциональных атрибутов имеют вид:

f(q 1,…q r,c 1,…,c s)=y.

Идентификатор объекта при этом предполагается известным по умолчанию. Из приведенных примеров видно, что наши представление об атрибутах рассматриваемых объектов формулируются, как высказывания на определенном языке. Поэтому можно предположить, что обобщенной формальной моделью любого атрибута является многозначный предикат P(A), с помощью которого и определяются значения атрибута конкретного объекта в его формальной модели. В простейшем случае P(A) есть утверждение: “Атрибут Аi объекта Оj имеет значение aij из множества Еi={a1,…,ak}”. В данном предикате атрибут Аi выступает в качестве предметной переменной. На формальном языке исчисления предикатов данное утверждение можно записать так: $ОjЩ$АiЅs(Аij)=aijОEi, где s(Аij) - сигнатура атрибута Аi в данной модели, i,jО{1,…,N}. Задача теории ОКМ состоит в том, чтобы найти общие методы построения комплексных математических моделей объектов и систем, представленных в пространстве всех своих атрибутов.

4.4. Классификация объектов. Пространство идентификаторов объектов.

Обычно объекты, определенные на одних и тех же атрибутах с различными значениями, относят к одному классу объектов. Процесс объединения объектов в классы в соответствии с их свойствами называется классификацией.  Ни одна научная дисциплина не может обойтись без классификации рассматриваемых в ней объектов. Таблица химических элементов Д. И. Менделеева и тория происхождения видов Дарвина – открытия полученные методом классификации объектов. В действительности мышление человека основано на абстракциях (понятиях), обозначающих классы различных объектов. При проектировании сложных систем исследователь (разработчик) должен выбирать необходимые ему экземпляры объектов из заданного класса объектов путем конкретизации значений их атрибутов (идентификации). Сложность выбора необходимого варианта (экземпляра объектов) оценивается величиной разнообразия (мощностью) данного класса объектов. “КЛАСС — термин, употребляемый в математике в основном как синоним термина “множество” для обозначения произвольных совокупностей объектов, обладающих каким-либо определенным свойством, или признаком (например, в алгебре — классы эквивалентности относительно данного отношения эквивалентности). Иногда классами предпочитают называть совокупности, элементами которых являются множества (например, в рекурсивной теории — перечислимые классы). В некоторых случаях под влиянием аксиоматической теории множеств термин “класс” применяется для того, чтобы подчеркнуть, что данная совокупность оказывается собственно классом, а не множеством в узком смысле (например, в алгебре — примитивные классы универсальных алгебр, называемые также многообразиями). Теоретико-множественные операции над классами определяются так же, как и над множествами” [20]. В общем случае классификация объектов может проводиться по нескольким определяющим признакам (атрибутам объектов). Например, людей можно классифицировать по имени, полу, дню рождения, образованию, профессии и т. д. Каждый конкретный человек данного класса будет определяться (идентифицироваться) соответствующим уникальным, только ему присущим, набором значений данных атрибутов, который в дальнейшем будем называть кодом или идентификатором данного объекта. Пусть A1,…,An – перечень независимых атрибутов, характеризующих некоторое множество объектов. Поставим в однозначное соответствие каждому атрибуту Ai многозначный предикат Pi, определяющий множество значений Ei={a1,…,ak}i данного атрибута так, что

  Другими словами, в любой момент времени атрибут Ai может принимать только одно какое-нибудь значение ae из множества Ei.    Тогда класс К есть абстракция, определяемая как декартово произведение {E1ґґEn}={К1, К2,…, Кm}, Кjкод или идентификатор конкретного объекта Oj. По данному определению символы Oj и Кj обозначают понятия, находящиеся в отношении взаимно однозначного соответствия, OjЫКjКод Кj есть символическая (абстрактная) модель объекта Oj. Размышляя об объектах, мы фактически оперируем их наименованиями, ярлыками, кодами или идентификаторами, т.е. их абстрактными представлениями в нашем сознании. Однако, экземпляр класса объектов не одно и тоже, что экземпляр класса кодов этих объектов. Экземпляр класса объектов – это конкретный объект Oj из множества объектов {O1, O2,…, Om}, составляющих данный класс, OjОО={O1, O2,…, Om}. В процессе классификации классу объектов О по определенным правилам ставится в соответствие класс представляющих объектов (моделей) – К.   Данное определение класса, по сути, эквивалентно теоретико-множественному понятию универсума U, приведенному во втором разделе настоящего пособия. Это означает, что класс как математический формализм обладает всеми свойствами формализма универсум. Поэтому для описания и анализа отношений между объектами и подмножествами объектов одного класса можно успешно применять исчисление обобщенных кодов подмножеств. При этом атрибуты A1,…,An объектов класса О можно рассматривать как оси классификационного пространства (пространства идентификаторов) объектов {O1, O2,…, Om}, где каждый конкретный объект Oj представлен точкой с координатами Kj, как показано на рис. 4.1.

Рис. 4.1. Оси классификационного пространства объектов

Image_1.gif (1778 bytes)

Введем отношение порядка в классе идентификаторов объектов {К12,…,Кm} такое, что m1)<m2)<<mm), где mj) – мера или ключ упорядочения идентификаторов объектов в классификационном пространстве. Такой мерой может быть, например, индекс j=1,…,m. Тогда пространство идентификаторов объектов можно представить таблицей 4.1.

Таблица 4.1

Image_2.gif (2179 bytes)

В данной таблице каждая строка идентифицирует конкретный объект Oj определенного класса О.

Согласно теории обобщенных кодов подмножеств (см. раздел 2) каждая строка данной таблицы есть код (a 1,j, a 2,j,…, a i,j,…, a n,j) конкретного объекта Oj - экземпляра данного класса О.

Здесь i - номер атрибута и соответствующего ему столбца, а j - номер строки таблицы, соответствующий номеру кода (идентификатора) объекта, a i,jОEi={a1,…,ak}i. Таким способом в теории ОКМ осуществляется формальное представление идентификаторов объектов. В данном случае идентификатор объекта, как мы уже говорили, является символической моделью конкретного объекта, а таблица 4.1 представляет собой модель класса объектов. В процессе исследования систем классы, как правило, разбивают на подклассы. Обычно это творческий в основном интуитивный процесс. Применение теории обобщенных кодов позволяет выяснить суть процесса разбиения класса объектов на подклассы и в значительной мере формализовать его. Если класс О представлен множеством определяюших его атрибутов A1,…,An, то предполагается, что все эти атрибуты существенны для данного класса, и каждый из них может принимать любое значение из соответствующего ему множества значений Ei={a1,…,ak}i. Устанавливая конкретное значение ai,eОEi для некоторого атрибута Ai класса О, мы тем самым ограничиваем множество объектов исходного класс О до определенного нами подмножества объектов, для которых важно, чтобы атрибут Ai имел значение ae,i, eОEi. В результате получается подкласс Оt класса О. В литературе по объектно-ориентированному программированию класс Оt обычно называют дочерним классом, а класс О - родительским классом. Введем для обозначения значений ae,i символику теории обобщенных кодов, а именно: “-i” - для обозначения того, что атрибут Ai может иметь произвольное значение из соответствующего ему множества Ei; “`ae,i” - для обозначения того, что атрибут Ai может иметь любое значение из соответствующего ему множества Ei, кроме значения ae,i; “ae,i” – для обозначения того, что Ai может иметь только данное конкретное значение ae,i. С использованием данных обозначений исходный родительский класс О можно представить одним обобщенным кодом К=(-1,-2,…,-n), а его дочерний класс Оt, с единственным существенным значением ae,i – обобщенным кодом Kt=(-1,-2,…,ae,i,-i+1,…,-n). Количество существенных значений в коде дочернего класса может быть r(Kt):0,1,…,n. Величина r(Kt) определяет уровень вложенности (иерархии) дочернего класса Оt относительно исходного материнского класса О. Величину d=r(Kt)-r(Kg) будем называть иерархическим расстоянием между классами Оt и Оg. При положительном значении d иерархический уровень класса Оt выше уровня класса Оg, при отрицательном значении d наоборот, иерархический уровень Оg выше уровня Оt. В общем случае обобщенный код K класса объектов О есть последовательность символов (a1,a2,…,ai,…,an), где aiО{a1,…,ak,`a1,…,`ak,-}i. Представление классов объектов в форме обобщенных кодов позволяет также легко вычислять количество экземпляров объектов, содержащихся в данном классе или подклассе. Для этого используют уже известную нам формулу:

(4.1)

где i - номер разряда ri, соответствующего атрибуту Aj, в обобщенном коде K,

Image_3.gif (1244 bytes)

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

4.5. Состояние объекта. Пространство состояний объекта.

  Как уже было сказано, идентификаторы объектов одного класса можно упорядочить по некоторому критерию m (Кj), определенному на множестве значений одного или нескольких атрибутов, характеризующих этот класс объектов. Например, располагая имена (идентификаторы) объектов по алфавиту, или упорядочивая их по возрастанию цифровых значений какого-нибудь иного атрибута. Если такого атрибута не существует, то в качестве критерия упорядочения может служить комбинации значений нескольких, или даже всех, атрибутов объектов данного класса. Упорядоченные объекты, точнее их идентификаторы, можно изображать точками на одной линии, которую будем называть линией классификации рис.4.2.

Рис. 4.2. Линия классификации объектов

Image_4.gif (378 bytes)

Классификационные атрибуты объектов служат для идентификации конкретных объектов. Наряду с классификационными атрибутами, как правило, не меняющими своих значений с течением времени, объекты обладают также атрибутами, которые могут изменять свои значения со временем под воздействием внешних и внутренних факторов, то есть, они являются функциями времени t и других факторов c,Ai=fi(t,X). Символом X здесь обозначено множество всех возможных факторов, воздействующих на объект О. Набор значений всех атрибутов объекта O в определенный момент времени t называется состоянием данного объекта. Атрибуты Ai=fi(t,X) характеризуют состояние объекта О, поэтому они называются параметрами данного объекта, и мы будем обозначать их специальными символами qi,q i= fi(t,X). В отличие от параметрических атрибутов q i, классификационные атрибуты, определяющие идентификатор объекта О и его место в некотором классе О, в дальнейшем будем обозначать символами k i. Таким образом множество А всех атрибутов объекта О разбивается на два подмножества K и Q . Подмножество K содержит статические атрибуты объекта О, а подмножество Q содержит атрибуты, характеризующие поведение данного объекта, т.е. A =KИQ . Значения атрибутов qi=fi(t,X) также могут быть сформулированы при помощи предикатов и объединены в последовательность переменных q1,…,qs, которая представляет собой базу координат пространства состояний определенного объекта. Состояние объекта в момент времени t изображается на графике точкой в этом пространстве. Последовательность состояний объекта Оj за определенное время D t есть процесс, который называется поведением объекта и обозначается . Пример графика поведения объекта Oj на отрезке времени [t0,t1] показан на рис. 4.3.

Рис. 4.3. Поведение объекта Oj в пространстве координат q 1, q 2, q 3,t.

Image_5.gif (1894 bytes)

Переменные q i могут быть многоместными методами или функциями, но в число их аргументов, как правило, должен входить фактор времени. Другими словами, утверждается следующее: методы и функции являются атрибутами, описывающими поведение объекта в пространстве его состояний. Поскольку классификационное пространство (пространство идентификаторов объектов) и пространство состояний объектов (параметрическое пространство) характеризуют одни и те же объекты, первое определяет объекты как экземпляры определенного класса, а второе характеризует поведение каждого объекта данного класса (изменение его состояний), то эти пространства естественно связаны между собой посредством объектов, которые они определяют и характеризуют. Фактически модель объекта определяется в двух взаимосвязанных системах координат: классификационной и параметрической. Графически эта связь показана на рис. 4.4.

Рис. 4.4. Связь классификационного пространства с пространством состояний объектов одного класса

Image57.gif (3090 bytes)

На этом рисунке показано, что каждый объект Oj, принадлежащий к определенному классу объектов, имеет свой идентификатор Кj в универсуме U и обладает своим собственным поведением, которое характеризуется функцией q i=fj(t, Кj,Х), i=1,…,s. Поведение объекта Oj зависит как от собственных параметров, так и от внешних факторов, в том числе и от воздействий со стороны других объектов, которые могут принадлежать различным классам. Согласно введенным обозначениям любой объект Oj класс О может быть представлен набором значений своих координат (k1,…,ki,qi+1,…,qn,t), функций и методов j1,…,jr, т.е. OjЮ(k1,…, kp,q1,…,qs,j1,…,jr,t) или       OjЮ(K j,Q j, F j, t),    где K j - код – идентификатор объекта Oj из классификационного пространства, Q j - набор значений параметров, определяющих поведение объекта Oj и F j - набор отношений, методов и функций, определяющих поведение объекта, t - фактор времени. При этом поведение объекта Oj

есть процесс   Image58.gif (908 bytes) = F j(K j,Q j,X,t),    где X - база факторного пространства. Фактор времени t вынесен из множества X в силу его особой значимости в процессе поведения объекта.   

Выражение Image58.gif (908 bytes) = F j(K j,Q j,X,t),   по сути есть математическая модель процесса поведения объекта Oj в условиях воздействия на него различных внешних и внутренних факторов X в определенные моменты времени t. Ее можно представить в графическом виде так как показано на рис. 4.5.

Рис. 4.5. Математическая модель поведения объекта Oj.

Image59.gif (2646 bytes)

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

4.6. Моделирование отношений между объектами и классами объектов

4.6.1. Общие положения

Связующими элементами между моделями различных объектов являются отношения. Общее представление о термине “отношения” было изложено во вводной части первого раздела настоящей книги и более строго определено в специальном разделе 2.4. Теперь же рассмотрим приложение данного понятия для формализации объектно-классификационных моделей объектов и систем.

Напомним, что определяющими атрибутами любого отношения являются:

Всеобщими свойствами отношений являются:

В математике, отношением называется подмножество R декартового произведения (E1ґE2ґ...ґEn), где Ei - множество значений некоторой переменной Xj, i=1,…,n.

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

ИМЯ_ОТНОШЕНИЯ (аргумент , ... , аргумент),     (4.2)

например, РАВНО(x,y), ЛЮБИТ(x,y), ПРИНАДЛЕЖИИТ(А,В) и т.д. На естественном языке такие отношения представляют собой высказывания, указывающие на определенные действия над значениями переменных x,y,… При определенных условиях эти высказывания могут быть истинными или ложными. Поэтому множество {ИСТИНА, ЛОЖЬ} является областью значений любого отношения. Обычно предполагается, что все специфические свойства отношения определены заранее и заданы по умолчанию. Например, предполагается, что подчиненность аргументов, или направленность действия отношения определяется порядком записи аргументов (x любит y). Все действия с отношениями выполняются с учетом этих свойств. Например, из того, что принадлежит(А, В) и принадлежит(в, с) с учетом свойства транзитивности отношения принадлежит следует отношение принадлежит(а, с). Свойство транзитивности было присвоено отношению “ПРИНАДЛЕЖИТ(X,Y)” при определении данного отношения. Формулы более сложных отношений, как правило, составляют из этих простейших формул по правилу подстановки, например так:

РАВНО(z,ПРОИЗВЕДЕНИЕ(x,y)),      (4.3)

или   РАВНО(ПРОИЗВЕДЕНИЕ(x,y),z)        (4.4)

в силу рефлективности отношения РАВНО(x,y) по определению.  В прикладной математике, чтобы приблизить формальные выражения к естественному языку, применяют следующую, более привычную форму записи отношений:

аргумент ДЕЙСТВИЕ аргумент УКАЗАТЕЛЬ результат.    (4.5)

Здесь слово ДЕЙСТВИЕ обозначает класс всех функциональных отношений, а слово УКАЗАТЕЛЬ – класс всех отношений типа “причина – следствие”, например, x+ y= z. Если между значениями атрибутов Ai объекта Oj установлена какая-нибудь зависимость, то ее можно представить (описать или смоделировать) в виде определенного отношения R. Например, если параметрами объекта прямоугольник являются длина - q 1 , ширина -q 2 и площадь - q 3, то эти параметры связаны следующим отношением:

ПРОИЗВЕДЕНИЕ(q 1, q 2)РАВНОq 3.

Как принято в арифметике, формальная запись этого отношения имеет вид:

q3=q1ґq2, или q3=q1*q2, или q 3=q 1q2.

Здесь идентификаторами отношения ПРОИЗВЕДЕНИЕ служат символы: “ґ ”, “* ” или запись аргументов без разделительных знаков; отношение РАВНО обозначается символом “=”.  Вообще формульное представление отношений многообразно и обычно зависит от языка, традиций и вкусов авторов, применяющих те или иные формальные системы. Область применения отношений также влияет на формы представления и интерпретацию отношений, применяемых в данной области. Например, в естественном языке отношения между объектами описывают с помощью соответствующих предложений (высказываний), в математике используют язык символических формул, в логике применяют свои специальные символы для записи отношений между высказываниями, химия, физика и многие другие научные дисциплины обычно используют специальные символы для записи отношений между объектами в исследуемой предметной области. Однако, в любом случае понятие “отношение” сохраняет вышеизложенные атрибуты, определяющие суть данного понятия. Поэтому можно предложить единый метод определения и формулирования отношений, как класса абстрактных объектов (понятий).

4.6.2. Классификационный подход к определению отношений

   Отношения, как разновидность абстрактных объектов, могут быть определены в системе четырех атрибутивных множеств (пространств): идентификаторов, параметров, функций и факторов, т. е. в системе KQ F X. Для этого достаточно все перечисленные выше атрибуты понятия “отношения” отнести к соответствующим пространствам K, Q , F , X и указать способы формального представления (записи) атрибутов в координатах данных пространств. Идентификаторы Kj общеизвестных отношений обычно представляют собой специальные символы, отличающиеся от алфавита естественного языка. В ОКМ для идентификаторов общеизвестных отношений мы, как правило, будем использовать общепринятую символику. Для идентификаторов отношений, имеющих новый смысл и не формализованных в каких-нибудь общеизвестных дисциплинах, мы будем употреблять слова русской речи, написанные прописными буквами. Примеры идентификаторов некоторых общеизвестных и вновь формализуемых здесь отношений приведены в первом столбце таблицы 4.2.

Таблица 4.2

Image_7.gif (10002 bytes)

Рассматривая отношения как объекты в терминах теории ОКМ, заметим, что определение любого отношения так же как и определение любого иного объекта требует явной или не явной конкретизации основных атрибутов: идентификатора, параметрических свойств, определяющих его структуру, методов и функций, характеризующих его поведение. Другими словами, отношение также как и все иные объекты представляются в следующей форме: (K j,Q j,F j,t), где F jподмножество атрибутов, определяющих алгоритм применения (иди поведение) отношения Rj. Моделирование отношений между объектами и классами объектов независимо от их природы является предметом исследования общей системологии. В теории ОКМ предпринимается попытка формализации таких моделей с целью выявления общих закономерностей и методов математического моделирования сложных систем, в также практического приложения этой теории при проектировании таких систем. По определению j есть код - идентификатор подмножества RН{E1ґґEs}, где Ei - множество значений атрибута q j, i=1,…,s. Если атрибуты принадлежат разным объектам, то отношения определяется между этими объектами. Если атрибуты принадлежат одному объекту, то отношение касается только атрибутов одного данного объекта.

Как было отмечено (раздел 2.4) важными частными случаями отношений являются:

4.6.3. Моделирование отношений между параметрами объектов

   Между параметрами одного и того же объекта, а также между параметрами различных объектов существует много различных отношения, которые могут представлять интерес для исследователей. Если рассматриваются отношения между параметрами различных объектов, то в этом случае чаще всего речь идет о сравнении значений параметров заданных объектов, например, о сравнении возраста людей или растений, о сравнении площадей различных фигур и т.п. Отношения между параметрами объектов изучаются многими общими и специальными научными дисциплинами. Как привило, специальные дисциплины при описании отношений между атрибутами изучаемых объектов применяют символику и формальные модели отношений, определяемые общими дисциплинами. Если между значениями параметрических атрибутов q объекта Oj установлена какая-нибудь зависимость, то говорят, что параметры q находятся в определенном отношении j . По определению j есть код - идентификатор подмножества RН{E1ґґEs}, где Ei - множество значений атрибута qj, i=1,…,s. Например, если параметрами объекта прямоугольник являются длина - q1 , ширина -q2 и площадь - q 3, то эти параметры связаны следующим функциональным отношением: ПРОИЗВЕДЕНИЕ(q1,q2,q3), где аргументы отношения соответственно определены, как множители (q1, q2,) и результат (произведение) - q3. Как принято в арифметике, формальная запись этого отношения имеет вид: q3=q1ґq2, или q3=q1*q2, или q3=q1q2. Здесь идентификаторами отношения ПРОИЗВЕДЕНИЕ или умножение служат символы: “ґ ”, “* ” или запись аргументов без разделительных знаков. В принципе объект Оj может быть представлен в отношении R любым числом своих атрибутов. Однако сложные отношения трудно представить в практически обозримой форме. Поэтому необходимо искать простые аксиоматические формы отношений, из которых можно строить сложные отношения с помощью простых и понятных правил.  Одним из подходов к решению данной проблемы является определение отношений между атрибутами по типам их параметров и формализация отношений с учетом специфики каждого типа. Например, общепринятыми типами являются: число, символ, множество и высказывание (предикат). Отношения между этими типами формализованы с помощью специальных общенаучных математических дисциплин: арифметики, символьной алгебры, теории множеств и математической логики. Атрибуты объектов в принципе могут определяться как предикаты. В дополнение к известным общепринятым типам атрибутов (величин, символов, высказываний, множеств и т.д.) в ОКМ вводится тип идентификаторов объектов. Идентификатор однозначно представляет объект в определенном классификационном пространстве. Другими словами, идентификатор есть элементарный код K конкретного объекта определенного класса K. Формально KО(E1ґґEn)= K. Это означает, что любой класс K объектов О1,…,Оm может быть однозначно представлен множеством {K1,…,Km} соответствующих идентификаторов K, и любой объект Оj может быть представлен своим идентификатором (кодом) K=(a1,j,a2,j,…,ai,j,…,an,j), определенном в базе координат (k1,…,kn) классификационного пространства.

4.6.4. Моделирование состояний объекта

   Как было определено выше для описания состояния объекта Oj необходимо указать значения всех его атрибутов Ai в определенный момент времени t. При этом значения классификационных атрибутов k определяют код Kjидентификатор данного объекта, а значения параметрических атрибутов q определяют состояние этого объекта в момент времени t. При этом параметры q объекта Oj взаимосвязаны определенными отношениями j Обозначим набор значений всех параметрических атрибутов q1,…,qs символом Q j и по аналогии с кодом идентификатора Kj будем называть этот набор кодом состояния объекта Oj. Таким образом модель состояния любого объекта Oj будет представлена тройкой (Kj, Q j, t). Другими словами, имеет место отображение Oj(t)Ю(Kj, Q j, t).

4.6.5. Моделирование отношений между различными объектами

   Будем считать, что объекты О1,…,Оm находятся в отношении R(Aj,1…,Ae,m), если RО(Ej,1ґґEe,m), где Aj,1…,Ae,m соответственно атрибуты объектов О1,…,Оm с множествами значений Ej,1,…,Ee,m. Это простейший случай, когда каждый объект представлен в отношении R только одним своим атрибутом.

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

Важнейшим отношением между объектами одного класса, которым мы уже пользовались при рассмотрении объектного пространства, является

отношение порядка.

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

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

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

Рис. 4.6. Типовая структура описания класса объектов.

Image_8.gif (10285 bytes)

В данном описании приведены атрибуты, имеющие следующий смысл:

Возможны и другие типы отношений между различными свойствами объектов, например: родственные, административные, конструктивные, логические и т. д. Важно, чтобы всякое отношение имело определенный критерий истинности и обладало свойством альтернативности.  Каждый класс состоит из определенных компонентов, является компонентом класса более высокого уровня и связан определенными отношениями с другими классами данного уровня. При анализе сложной системы перед исследователем, прежде всего, возникает задача оценки по определенному показателю различных вариантов структуры этой системы и выбора по некоторому критерию одного из этих вариантов. С точки зрения ОКП данную задачу можно сформулировать следующим способом. Пусть {K1, K2, …, Km} – множество классов объектов, из которых проектируется структура будущей системы. Каждый класс Ke представляет собой множество {O1, O2, …, Ot}e конкретных объектов (экземпляров) данного класса. При этом множество S={K1ґK2ґґKm} есть множество всех возможных конкретных вариантов (экземпляров Sk) структуры исследуемой или проектируемой системы.  Каждый отдельный вариант Sk структуры S есть определенная конкретизация параметров (атрибутов) всех компонентов (классов) структуры S, и каждому варианту Sk соответствует некоторое значение показателя эффективности W исследуемой системы. Задача состоит в том, чтобы, изменяя значения параметров классов KeОS, определить вариант наиболее эффективной структуры S*k проектируемой системы.

4.7. Теоретико-множественная модель класса объектов.

  Объекты одного класса можно упорядочить по некоторому критерию, определенному на множестве значений одного или нескольких атрибутов данного класса. При этом упорядоченные объекты можно изображать точками на одной линии - линия классификации (см. раздел 4.5). Классификационные атрибуты объектов, как правило, не связывают со временем или пространством. Это всего лишь идентификаторы конкретных объектов. Вместе с тем каждый реальный объект, как известно, существует в пространстве и во времени. Многие свойства объектов меняют свои значения с течением времени, а сам объект может перемещаться в пространстве.  Пусть X1, X2,…,Xk,…,Xr – перечень таких свойств объекта Oj. Предполагается, что каждое свойство Xk есть функция времени Xk=fk(t). Тогда набор значений переменных Xk, отнесенный к определенному моменту времени te, характеризует состояние объекта Oj в момент te. Множество переменных X1, X2,…,Xk,…,Xr, t образует пространство состояний объекта Oj, а набор значений этих переменных называется координатами состояния объекта Oj. Последовательная смена состояний объекта Oj называется процессом. Поэтому переменные Xk, в отличие от классификационных атрибутов Ai будем называть временными или процессуальными координатами.

Основными свойствами понятия “класс” являются: наследование, инкапсуляция и полиморфизм.

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

Формально это означает, что U2= U1ґ{En+1,…,En+k}.

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

Свойство полиморфизма состоит в том, что различные классы объектов могут иметь в качестве атрибутов одни и те же методы, но для разных объектов эти методы могут отрабатываться по-разному. Поэтому конструктор должен знать, как выполнять одни и те же методы применительно к различным объектам. Например, почти все элементы Visual Basic в качестве одного из атрибутов содержат метод Move. Когда этот метод вызывается для конкретного объекта, то инструментальная программа "знает" как выполнять данный метод для данного объекта. Отношения в ООП1) определяются как закономерные или установленные соответствия между значениями атрибутов различных комплексов, или между атрибутами одного комплекса. Например, класс ФС2) может быть связан с классом АРМ3) атрибутами “идентификатор АРМ” - “тип ФС”, а значениям атрибута “тип ФС” должно соответствовать значение атрибута “интенсивность” в классе ФС. Схема этих отношений показана на рис.4.7.


  1. обьектно-ориентированнный подход
  2. форма сообщения
  3. автоматизированное рабочее место
  4. информационно-расчетная система

Рис. 4.7. Схема отношений между классами объектов

 Image_9.gif (3489 bytes)

Проблема анализа процесса обмена ФС в ИРС4) состоит в том, чтобы:

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

 

Литература

  1. Братко И. Программирование на языке ПРОЛОГ для искусственного интеллекта. - М.: Издательство “МИР”, 1990, 560 с
  2. Журавлев Ю. И. Теоретико-множественные методы алгебры логики. - М.: Проблемы кибернетики, 1962, вып.8, стр. 5-44.
  3. Веников В. А., Веников Г. В. Теория подобия и моделирования - М.: Высшая школа, 1984.
  4. Закревский А. Д. Алгоритмы синтеза дискретных автоматов. - М.: Наука, 1971, 511 с.
  5. Математическая теория логического вывода. Сб. Переводов, - М., 1967 г.
  6. Новиков О. А., Петухов С. И. Прикладные вопросы теории массового обслуживания. - М.: “Советское радио”, 1969 г., 397 с.
  7. Охоцимский Д. У., Сихарулидзе Ю. Б. Основы механики космического полета. - М.: Издательство Наука, Главная редакция физико-математической литературы. 1990 г., 445 с.
  8. Основа теории полета космических аппаратов. Под редакцией Г. С. Нариманова и М. К. Тихонравова. - М.: Издательство “Машиностроение”, Москва, 1972 г.
  9. Рабочая книга по прогнозированию. Отв. редактор Н. В. Бестужев-Лада , - М.: “Мысль”, 1982 г.
  10. Рябинин И. А., Черкасов Г. Н. Логико-вероятностные методы исследования надежности структурно-сложных систем.
  11. Смирнов Д. М. Математическая Энциклопедия. т. 1, стр. 488. - М.: Издательство “Советская Энциклопедия”, 1977 г.
  12. Стерлинг Л., Шапиро Э. Искусство программирования на языке ПРОЛОГ. - М.:, Издательство “МИР”, 1990 г., 336 с.
  13. Успенский В. А. Алгоритм. Математическая Энциклопедия. т. 1, стр. 202. - М.: Издательство “Советская Энциклопедия”, 1977 г.
  14. Устенко А. С. Докторская диссертация. "Теоретические основы структурного проектирования алгоритмических процессов для автоматизации контроля и управления космическими средствами военного назначения". В/ч 73790, 1986 г.
  15. Худсон Д. Статистика для физиков. Лекции по теории вероятностей и элементарной статистике. - М.: Издательство Мир , 1970 г., 296 с.
  16. Цаленко М. Ш. Моделирование семантики в базах данных. - М.: Издательство “Наука”, Главная редакция физико-математической литературы. 1989 г., 286 с.
  17. Гради Буч. Объектный анализ и программирование с примерами приложений на С++. Второе издание. Перевод с английского под редакцией И. Романовского и Ф. Андреева. - М.: “Издательство Бином, СПб: Невский диалект, 1998 г., 560 с., ил.
  18. Фридман А. Л. Основы объектно-ориентированной разработки программных систем, - М.: “Финансы и статистика, 2000 г., 192 с.
  19. Клир Дж. Системология. Автоматизация решения системных задач. Перевод с английского М. А. Зуева Под редакцией Ф. И. Горлина. - М.: “Радиосвязь 1990 г. 540 с.
  20. Математическая энциклопедия, т. 2, стр. 862, издательство Советская энциклопедия”, - М.: 1979 г.

главная     об авторе       содержание       часть1       часть2       часть3      литература