Модели онтологии и онтологической системы. Онтологическая модель представления знаний

Онтология (ontos-сущность+logos-учение).Термин предложен немцем Гоклениусом. Один из разделов философии. Определяется, как:

1) учение о бытие, как таковом;

2) учение о сверхчувственном мире;

3) учение о мире в целом.

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

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

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

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

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

К 13 в. намечается разделение онтологической мысли на 2 потока: на аристотелевскую и августианскую традицию. Представитель аристотелизма Фома Аквинский вводит в средневековую онтологию различение сущности и существования, а также акцентирует момент творческой действительности бытия, сосредоточенной в полной мере в самом бытии и в Боге.

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


Целесообразно выделить следующие формы бытия:

1) бытие вещей (тел), процессов, которое в свою очередь делится на бытие вещей, процессов, состояний природы. Б. природы как целого;

2) Б. второй природы – произведенных человеком вещей.

3) Б. духовного (идеального), которое делится на индивидуализированное духовное и объектированное (внеиндивидуальное) духовное;

4) Б. социального, которое делится на индивидуальное бытие (бытие отдельного человека в обществе и процессе истории) и бытие общества.

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

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

Бытие отдельного человека представляет собой диалектическое единство тела и духа. Человек для самого себя и первая, и «вторая природа». Не случайно в традиционной, классической философии человека нередко определяли как «мыслящую вещь». Но бытие человека как мыслящей и чувствующей «вещи» в мире природы явилось одной из предпосылок возникновения и общения, т.е. предпосылкой формирования специфики человеческого бытия. Бытие каждого конкретного человека есть взаимодействие, во-первых, мыслящей и чувствующей «вещи» как единства природного и духовного бытия, во-вторых, индивидуальной особи, взятой на данном этапе эволюции мира вместе с миром, и, в-третьих, как социально-исторического существа. Его специфика проявляется, например, в том, что:

Без нормального функционирования в человеке его духовно-психической структуры человек как целостность не полноценен;

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

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

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

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

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

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

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

Таким образом, формы бытия, в свою очередь, различаются по их отнесению к объективной и субъективной реальности. Соответственно, в истории философии для обозначения объективной реальности была выработана категория материи, или реального мира, или природы, т. е. всего того, что существует независимо от сознания человека. А субъективная реальность была связана с такими понятиями, как дух, сознание и т. д., которые заключают в себе все разнообразие сознательной и бессознательной психической деятельности индивидуального или коллективного «Я», связанного с сознанием человека.
Таким образом мы можем рассматривать бытие еще и как особого рода структуру или универсум, в котором реальные различия форм бытия исчезают и остаются только его абстрактные характеристики, которые и выступают предметом онтологии.
Фундаментальными абстрактными категориями бытия являются «дух» и «материя».
Понятие материи прошло долгую эволюцию. Ее отождествляли с конкретным веществом или группой веществ (Античность). В этот же период ее уже понимали и как абстракцию типа гомеомерий или апейро- на, которые являются неопределяемым началом бытия. В Античности же было выработано мощнейшее представление о материи как атоме, т. е. о мельчайших частицах, из которых состоит все в мире. В период ньютоновско-картезианской физики материя отождествлялась с веществом или массой инертного, покоящегося вещества.
Понятие духа (в различных вариантах, мышления, сознания) выступало либо как свойство материи, либо противопоставлялось ей как высший атрибут бытия.
Таким образом, можно выделить следующие варианты построения онтологии.
Говоря о материалистической онтологии, необходимо сделать ряд уточнений. Прежде всего в данном типе онтологии изменяется содержание понятия «бытие», которое при всех разнообразиях его вариантов фактически сводится к разновидности понимания материи, будь то поиск одного или нескольких первоначал или нахождение иной материальной основы мира. В результате этого, исследование бытия есть по существу исследование природного мира, т. е. того, что у Аристотеля было второй философией, или физикой. Материалистическая онтология, таким образом, исследует фундаментальные материальные предпосылки реального бытия или действительности.
Идея первоначала, или субстанционального начала, в связи с развитием наук приобретает конкретнонаучные черты. Конечно, в философии развивались и другие линии в трактовке бытия, но, безусловно, что ориентация на его совмещение с научными данными, а, значит, и неизбежная ориентация на критерии научности, стала магистральной линией развития философии по данному вопросу. В связи с развитием наук Нового времени идея субстанциальности мира переходит в новое качество и строится исходя из физических представлений.
В основе физики Ньютона лежит убеждение в «простоте» устройства мира и его исходных элементов. Поэтому в качестве субстанции выступает материя. Это - вещество, или механическая масса (т. е. количество материи), которое состоит из физически неделимых мельчайших частиц - атомов. «Быть материальным» означало «состоять из неделимых частиц», обладающих массой покоя. Правда, сам Ньютон (будучи глубоко религиозным человеком) не отрицал существования Бога. Причем чисто материалистическая концепция физики даже выступала своеобразным косвенным средством обоснования его существования. С позиции механики, масса - инертна, она не может двигаться без приложенных к ней усилий. Поэтому для
пассивной материи необходим первотолчок, которым и выступает в ньютоновской системе Бог.
Создается механическая картина мира, в которой материя представляла собой иерархию систем. Вначале атомы связываются в некоторые тела, которые в свою очередь образуют более крупные тела, и так вплоть до космических систем. Вещество равномерно распределено во вселенной и пронизывается силами всемирного тяготения. Причем скорость распространения взаимодействий считалась бесконечной (принцип дальнодействия). Соответственно, в этой физике пространство и время рассматривались как абсолютные сущности, не зависимые друг от друга и от других свойств материальной действительности, хотя к этому времени существовали и противоположные концепции (например, Августина или Лейбница). Ньютон, как позже отмечал А. Эйнштейн, фактически дал модель мира, которая в силу своей стройности долгое время оставалась непревзойденной. «Мышление современных физиков в значительной мере обусловлено основополагающими концепциями Ньютона. До сих пор не удалось заменить единую концепцию мира Ньютона другой, столь же всеохватывающей единой концепцией».
В то же время, отмечает А. Эйнштейн, концепция Ньютона, по существу, представляла собой именно теоретическую (сконструированную) модель, которая не всегда вытекала из опыта. В философском плане Ньютон дал своеобразную общую картину мира, которая базировалась на том, что физические закономерности, присущие части мира, распространялись на его абсолютное понимание. Предлагалась картина мира, которая одинакова для всей вселенной. Таким образом, обоснование материального единства мира здесь было связано с очень сильными теоретическими допущениями, характерными для философии метафизического материализма данного периода.
Само развитие физики подвергло сомнению установленные физикой Ньютона взгляды на мир. На рубеже XIX - XX вв. в физике происходят кардинальные открытия. А с 1895 по 1905 год эти открытия в силу их количества и значимости приобретают взрывной характер, разрушая старые представления о физике и той картине мира, которая на ней базировалась. Каждое из открытий разрушало основанное на теории Ньютона физическое представление о мире и наносило удар по метафизическому материализму, который был в этот период господствующей философской концепцией и базировался при построении философской онтологии на принципах классической физики. Кризис ньютоновской физики показал принципиальную относительность конкретно-научных представлений о мире, опиравшихся на очень сильные допущения в интерпретации мира. Оказалось, что сам принцип экстраполяции (распространения) наших знаний о части вселенной на весь мир неправомерен и ограничен, что законы микро-, макро- и мегамира могут в значительной степени отличаться друг от друга.
Парадокс философской ситуации данного периода заключался в том, что метафизический материализм был уже не способен объяснить новые явления в физике, а диалектика была в достаточной степени оторванной от развития конкретных наук.
Для объяснения новых проблем необходима была более синтетическая концепция, соединяющая в себе материалистические и диалектические компоненты подхода к миру, и на эту роль стал претендовать диалектический материализм. Здесь была предпринята попытка выработать самостоятельную форму онтологии, базируясь на соединении знаний из области естественных наук, прежде всего физики и диалектикоматериалистической разновидности философии.
Философия диалектического материализма в вопросах онтологии базировалась на синтезе материалистических учений и материалистически истолкованной диалектики Гегеля, что и позволяет ее по многим пунктам относить к классической модели онтологии. Соответственно, формирование понятия материи, как центральной части онтологии, шло по пути отказа от ее представления как некоторого вещества или совокупности веществ (влияние материализма) к более абстрактному пониманию с элементами диалектики (влияние Гегеля). Так, например, Энгельс, исследуя понятие материи и высказывая идеи о том, что материя это
некоторая абстракция, т. е. чистое создание мысли, которое не существует чувственно, одновременно, в некоторых случаях трактовал ее вслед за французскими материалистами как совокупность веществ. Плеханов в 1900 году писал, что «в противоположность «духу», «материей» называют то, что действуя на наши органы чувств, вызывает в нас те или другие ощущения. Что же именно действует на наши органы чувств? На этот вопрос я вместе с Кантом отвечаю: вещь в себе. Стало быть, материя есть ни что иное, как совокупность вещей в себе, поскольку эти вещи являются источником наших ощущений».
И, наконец, В.И. Ленин ставит в центр диалектикоматериалистического понимания онтологии представление о материи как особой философской категории для обозначения объективной реальности. Это означало, что она не может быть сведена к какому-то конкретному физическому образованию, в частности к веществу, как это допускали физика Ньютона и метафизический материализм.
Это была форма материалистического монизма, т. к. все остальные сущности, в том числе и сознание, рассматривались как производные от материи, т. е. как атрибуты реального мира. «Диалектический материализм отвергает попытки строить учение о бытии спекулятивным путем... «Бытие вообще» - пустая абстракция». Исходя из этого утверждалось, что материя объективна, т. е. существует независимо и вне нашего сознания. Отсюда делался вывод о связи онтологии и гносеологии, в частности, о том, что научное познание есть прежде всего познание материи и конкретных форм ее проявления, а объектом философии выступает материя и формы, через которые она реализует свое существование. Философами данного периода, которые стояли на иных позициях, было сразу отмечено, что такое понимание материи во многом перекликалось с аналогичными понятиями объективного идеализма. В таком понимании был понятен гносеологический смысл материи, связанный с обоснованием принципа познаваемости мира, но был неясен ее онтологический статус (призыв дополнить ленинское определение материи онтологическими характеристиками был очень популярен и в советской философии).
В данной философской системе категория бытия не выполняла никаких функций, кроме как синонима объективной реальности, поэтому онтология трактовалась как теория материального бытия. Любые рассуждения о «мире в целом», о «бытии как таковом», о соотношении «бытия и небытия» даже в рамках предшествующего материализма рассматривались как существенный недостаток онтологических концепций. «Начиная построение онтологии с выдвижения «общих принципов бытия», относящихся к «миру в целом», философы фактически либо прибегали к произвольным спекуляциям, либо возводили в абсолют, «универсализировали», распространяли на весь мир вообще положения той или иной конкретнонаучной системы знаний...Так возникали натурфилософские онтологические концепции».
Категория субстанции здесь также оказывалась лишней, исторически устаревшей, и предлагалось говорить о субстанциальности материи. «Снятие» извечной философской проблемы противопоставления бытия и мышления обосновывается положением о совпадении законов мышления и законов бытия. В результате чего диалектика понятий является отражением диалектики действительного мира, поэтому законы диалектики выполняют гносеологические функции.
Сильной стороной диалектического материализма стала ориентация на диалектику (при всей критике Гегеля), что проявилось в признании принципиальной познаваемости мира, основанной на понимании неисчерпаемости свойств и структуры материи как всеобщей категории онтологии, и детальное обоснование диалектики абсолютной и относительной истины как принципа философского познания.
Объективно-идеалистическая позиция в понимании бытия реализуется в признании объективно существующей идеи, абсолютного духа, мирового Разума, в теологическом варианте Бога и т. д. Соответственно, в качестве особого рода сущности, все богатство бытия есть своеобразное логическое разворачивание абсолютного духа, через систему понятий, отражающих иерархичность бытия. Обычно это глобальные философские системы, охватывающие буквально все, о чем можно помыслить человеческим разумом. Некоторый парадокс данных систем был даже не в противопоставлении реальности, а просто в том, что сама реальность выводилась из абсолюта. Хотя в философском плане это вполне объяснимо и даже логично. Поэтому анализируя системы такого рода и отвлекаясь от их изначальных установок, мы, вдруг, неожиданно замечаем, что на уровне анализа конкретных проблем данные философские объяснения не слишком отличаются от материалистических. Не случайно именно объективный идеализм Гегеля был выбран Марксом в качестве объекта знаменитого «переворачивания с головы на ноги», что сделало его фундаментом диалектико-материалистического подхода. Обе позиции схожи именно в силу того, что в основу кладется одно начало, порождающее или объясняющее мир. Именно это позволяет и той, и другой концепции построить теорию бытия на монистической основе как единую систему.
Примером теологического варианта может выступать концепция средневекового философа и теолога Августина. Принимая тезис Аристотеля об изначальном божественном начале, Августин интерпретирует его по- своему. У Аристотеля Бог хотя и является причиной мира, но лишь целевой причиной, которая задает тенденцию развития мира, но не есть причина физического мира. У Августина Бог - творец и причина всего существующего. Как отмечает современный французский философ Турина, следует лишь удивляться, как был интерпретирован Аристотель. У последнего Бог не только не создает мир, но внешен, инертен по отношению к нему, «ибо мыслит только самого себя». В христианской теологии Бог не столь невозмутим, а, напротив, активен
и ради спасения мира готов пожертвовать даже своим сыном. «В результате метафизика была сведена к теологии, понятой как наука о первой сущности, к которой все сущности привязаны как причине своего бытия»9. И соответственно, античное понятие мудрости, было проинтерпретировано как знание Бога. А отсюда вытекает значение философии как любви к мудрости. Это - любовь к Богу. «Мудрость есть знание вещей божественных»,- писал Августин. Соответственно, если наука исследует знание человеческого, то мудрость - знание божественного. Но, поскольку божественное является первоначалом, то именно теология опирается на абсолютную достоверность, данную от Бога, придавая достоверность и другим наукам.
Рационально-идеалистический вариант представлен в концепции диалектики абсолюта Гегеля.
Гегель изначально исходит из тезиса о совпадении бытия и мышления, следовательно о совпадении онтологии и логики. Поэтому изложение онтологии происходит в его труде, который называется «Логика». Фактически, на новом этапе, это возвращение к схеме Аристотеля, который различал первую философию, или теологию (метафизику), занимающуюся исследованием первоначал, и вторую философию, или физику, которая исследовала основы природного бытия.
В основе всей системы Гегеля стоит Абсолют, который понимается как божественное в его вечной сущности, как истина сама по себе. Абсолют представляет собой процесс реализации идеи, проходящей разные стадии развития.
Вначале абсолют развивается как « идея в себе или идея как логос», исследованием этого занимается логика, в рамках которой разворачиваются все предельные характеристики бытия. Далее абсолют реализуется как «идея вне себя» (философия природы) и завершается «идеей в себе и для себя», или как «идея, вернувшаяся к себе» (философия духа). Соответственно, философия природы здесь это особый период отчуждения идеи на пути перехода к Духу.
Понятно, что именно логика представляет собой онтологию Гегеля, хотя и в философии природы исследуются предпосылки реального мира, т. е. реализация идеи в природе также может быть отнесена к онтологическому философскому материалу, или то, что раньше Аристотель относил к предмету физики.
Внутри логики выделяются, соответственно, логика бытия, логика сущности и логика понятия.
Логика бытия подразделяется на логику качества, количества и меры. Понятие качества совпадает с вещью, количество - это то, в чем отсутствует качество. Мера есть синтез, снимающий противоречие качества и количества.
Таким образом, образуется абсолютное начало логики также в виде триады: бытие, небытие, становление, и разворачивается вся понятийная система Гегеля. В логике бытия мысль как бы скользит по горизонтали.
Соответственно, по закону гегелевской триады, бытие должно быть снято в результате познания, обогатившись конкретным содержанием. Отсюда и первое противоречие бытия. Это, с одной стороны, - всегда нечто (конкретность), а с другой, - ничто (абстракция). Таким образом, бытие - это первая чистая мысль. Но тогда возникает другое противоречие. Истинная философская система должна базироваться на истинном начале. А истина сама по себе - это конец, завершение рассуждения, конец некой цепочки мысли. Гегель делает вывод, что истинная система замкнута, ее конец должен совпадать с началом, т. е. первичная абстрактность бытия должна наполняться конкретным содержанием всей системы знаний. Категория бытия - это начало построения любой философской системы.
Противоречие между бытием и ничто как раз и разрешается в категории нечто, в которой исчезает неопределенность и абстрактность бытия. Оно начинает обладать реальными признаками, т. е. определенным качеством. Происходит переход от категории «для- себя-бытие» к определенному бытию. Это, в свою очередь, определяет переход от бытия к сущности.
Логика сущности заставляет мысль двигаться вглубь, вскрывая процесс перехода от категории видимости к сущности и явлению, показывая их реализацию в действительности, выявляя суть случайности и Необходимости. Соответственно, выделяются логика «сущности сущности», «логика сущности явления» И «логика сущности действительности». Т. е. вскрывается специфика этих онтологических предпосылок. Здесь бытие теряет свою неопределенность и абстрактность, оно становится лишь видимостью, т. е. явлением, за которым стоит сущность, которую мы должны познавать. Бытие здесь проявляется в категории существования и действительности.
И, наконец, логика понятия представляет собой определенное завершение, когда мысль достигает полноты, как бы возвращаясь к себе. Гегель называет логику понятий еще и субъективной логикой. Здесь исследуются предельные понимания субъективности, объективности, идеи и абсолютной идеи.
Но все, что здесь было изложено, это лишь абстрактный уровень, это, как говорил Гегель, «представление Бога». Для того, чтобы развить понимание движения идеи дальше, необходимо исследовать сотворенный мир, т. е. природу. Этому посвящена гегелевская философия природы, в которой абсолютная идея отчуждает себя. Здесь исследуются механика, физика и органическая физика или биология. В собственном онтологическом смысле здесь интересно рассмотрение механики, в которой анализируются категории пространства и времени, материи и движения.
Кроме того необходимо особо выделить субъективно-идеалистическую позицию по отношению к проблемам онтологии. Здесь проблема передвигается в плоскость гносеологии, и речь фактически идет о правомерности использования таких общих понятий, как «материя» или «дух», для объяснения. Поскольку в этом мире мы можем достоверно говорить только о том, что переживается нашими чувствами и сознанием и нет гарантии, что есть нечто еще, находящееся за пределами сознания, то быть и означает быть воспринимаемым. Поэтому либо существует Бог, с которым мы при некоторых обстоятельствах можем соприкасаться непосредственно, и это зависит не от нас, либо природа вещей, их познание в конечном счете вообще невозможно. Предмет есть до тех пор, пока мы его воспринимаем. Соответственно, конструировать сложные системы с использованием таких понятий, как дух или материя - абсурд, т. к. они не могут быть восприняты нами.

НАЧАЛО — Онтологии в корпоративных системах. Часть I

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

Во второй части статьи вкратце рассмотрены теоретические понятия, инструментальные средства, практические примеры применения.

ФОРМАЛЬНАЯ МОДЕЛЬ ОНТОЛОГИИ

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

Формальная модель онтологии O= — это упорядоченная тройка конечных множеств, где:

  • Т — термины прикладной области (ПрО), которую описывает онтология O;
  • R — отношения между терминами заданной ПрО;
  • F — функции интерпретации, заданные на терминах и/или отношениях онтологии O.

Модели онтологий классифицируются таким образом:

  • простые (имеют лишь концепты);
  • на основе фреймов (имеют лишь концепты и свойства);
  • на основе логик (например Ontolingua, DAML+OIL).

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

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

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

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

ЯЗЫКИ ОПИСАНИЯ ОНТОЛОГИЙ

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

Ключевым моментом в проектировании онтологии является выбор соответствующего языка спецификации онтологий (Ontology specification language). Цель таких языков — дать возможность указывать дополнительную машинно-интерпретируемую семантику ресурсов, сделать машинное представление данных более похожим на положение вещей в реальном мире, существенно повысить выразительные возможности концептуального моделирования слабо структурированных Web-данных.

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

Существуют традиционные языки спецификации онтологий: Ontolingua, CycL, языки, основанные на дескриптивных логиках (такие как LOOM), языки, основанные на фреймах (OKBC, OCML, Flogic).

Более поздние языки основаны на Web-стандартах (XOL, SHOE, UPML). Специально для обмена онтологиями через Web были созданы RDF(S), DAML, OIL, OWL, которые будут рассмотрены далее.

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

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

Язык RDF . В рамках проекта семантической интерпретации информационных ресурсов Интернет (Semantic Web) был предложен стандарт описания метаданных о документе Resource Description Framework, использующий XML-синтаксис.

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

RDF уже получил поддержку многих ведущих производителей ПО. Разработан ряд программных продуктов, позволяющих создавать RDF-описания для разного рода систем. Предполагаются возможности интеграции существующих хранилищ информации в общую базу семантического описания и интеграции концепции RDF-базы с форматом MPEG. RDF Schema — стандарт, предложенный по инициативе W3C для представления онтологических знаний. Он специфицирует множество всевозможных допустимых схем данных. Модели предметных областей описываются посредством ресурсов, свойств и их значений. RDFS предоставляет хорошие базовые возможности для описания словарей типов предметных областей. Одно из ограничений — невозможность с помощью RDFS выразить аксиоматические знания, т. е. задать аксиомы и правила вывода, построенные на них.

DAML+OIL — семантический язык разметки Web-ресурсов, расширяющий стандарты RDF и RDF Schema за счет более полных примитивов моделирования. Последняя версия DAML+OIL обеспечивает богатый набор конструкций для создания онтологии и разметки информации таким образом, чтобы их могла читать и понимать машина.

Первыми предложениями по описанию онтологии на базе RDFS были DARPA DAML-ONT (DARPA Agent Markup Language) и European Commission OIL (Ontology Inference Layer). Эти стандарты спецификации и обмена онтологиями были разработаны для поддержки процесса обмена знаниями и интеграции знаний. На базе этих предложений и возникло совместное решение DAML+OIL. Онтология DAML+OIL состоит из: заголовков (headers); элементов классов (class elements); элементов свойств (property elements); экземпляров (instances).

OWL (Web Ontology Language) — язык представления онтологий, расширяющий возможности XML, RDF, RDF Schema и DAML+OIL. Этот проект предусматривает создание мощного механизма семантического анализа. Планируется, что в нем будут устранены ограничения конструкций DAML+OIL.

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

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

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

ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА ОБРАБОТКИ ОНТОЛОГИЙ

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

Редакторы

Ontolingua. Кроме собственно редактора онтологии, эта система содержит сетевой компонент Webster, предназначенный для определения концептов, сервер, обеспечивающий доступ к онтологиям Ontolingua по протоколу OKBC (Open Knowledge Base Connectivity), и Chimaera — инструментарий для анализа и объединения онтологий.

Protégé — свободно распространяемая Java-программа, предназначенная для построения (создания, редактирования и просмотра) онтологий той или иной прикладной области. Она включает редактор онтологии, позволяющий проектировать онтологии, разворачивая иерархическую структуру абстрактных и конкретных классов и слотов. На основе сформированной онтологии Protégé позволяет генерировать формы получения знаний для введения экземпляров классов и подклассов.

Инструмент поддерживает использование языка OWL и позволяет генерировать html-документы, отображающие структуру онтологий. Поскольку он использует фреймовую модель представления знаний ОКВС, это позволяет адаптировать его и для редактирования моделей ПрО, представленных не в OWL, а в других форматах (UML, XML, SHOE, DAML+OIL, RDF и RDFS и т. п.).

DOE — простой редактор, который позволяет пользователю создавать онтологии. Процесс спецификации онтологии состоит из трех этапов.

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

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

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

OntoEdit — инструментальное средство, обеспечивающее просмотр, проверку и модификацию онтологии. Оно поддерживает языки представления онтологии OIL и RDFS, а также внутренний язык представления знаний OXML, основанный на XML. Как и Protégé, это автономное Java-приложение, но его коды закрыты. Свободно распространяемая версия OntoEdit Free ограничена 50 концептами, 50 отношениями и 50 экземплярами.

OilEd -автономный графический редактор онтологии, разработанный в рамках проекта Оп-То-Knowledge. Он свободно распространяется по общедоступной лицензии GPL. Инструмент использует для представления онтологий язык OIL. В OilEd отсутствует поддержка экземпляров классов.

WebOnto разработан для просмотра, создания и редактирования онтологий. Для моделирования онтологий он использует язык OCML (Operational Conceptual Modeling Language). Пользователь может создавать различные структуры, в том числе классы со множественным наследованием. Инструмент имеет ряд полезных особенностей: просмотр отношений, классов и правил, возможна совместная работа над онтологией нескольких пользователей.

ODE (Ontological Design Environment) взаимодействует с пользователями на концептуальном уровне, обеспечивает их набором таблиц для заполнения (концептов, атрибутов, отношений) и автоматически генерирует код на языках LOOM, Ontolingua и FLogic. Инструмент получил свое развитие в WebODE, который интегрирует все сервисы ODE в единую архитектуру, сохраняя свои онтологии в реляционной БД.

Сложные инструментальные средства

Эти средства нужны для того, чтобы не только вводить и редактировать онтологическую информацию, но и анализировать ее, выполняя типичные операции над онтологиями, например:

  • выравнивание (alignment) — установка различного вида соответствий между двумя онтологиями для того, чтобы они могли использовать информацию друг друга;
  • отображение (mapping) — нахождение семантических связей между подобными элементами разных онтологий;
  • объединение (merging) — операция, которая по двум онтологиям генерирует третью, объединяющую информацию из первых двух.

PROMPT служит для объединения и группировки онтологий. Это дополнение к системе Protégé, реализованное в виде плагина. По двум онтологиям, которые надо объединить, PROMPT строит список операций (например, объединение терминов или их копирование в новую онтологию) и передает его пользователю, который может выполнить одну из предлагаемых операций. Затем список операций модифицируется, и создается список конфликтов и их возможных решений. Это повторяется до тех пор, пока не будет готова новая онтология.

Chimaera — интерактивный инструмент для объединения онтологии, базирующийся на редакторе онтологий Ontolingua.

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

OntoMorph определяет набор операторов преобразования, которые можно применить к онтологии.

OBSERVER объединяет онтологии с информацией об отображении между ними и находит синонимы в исходных онтологиях.

ONION базируется на алгебре онтологии и предоставляет инструменты для определения правил артикуляции (соединения) между онтологиями.

МЕТОДОЛОГИЯ СОЗДАНИЯ ОНТОЛОГИЙ

Практическая разработка онтологии включает:

  • определение классов в онтологии;
  • расположение классов в таксономическую иерархию (подкласс — надкласс);
  • определение слотов и описание допускаемых значений этих слотов;
  • заполнение значений слотов экземпляров.

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

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

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

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

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

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

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

ОРГАНИЗАЦИОННЫЕ ОНТОЛОГИИ И ПОРТАЛЫ ЗНАНИЙ

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

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

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

Разработанные онтологии позволят сотрудникам одной отрасли или корпорации использовать общую терминологию и избежать взаимных недоразумений, которые могут усложнить сотрудничество и привести к серьезным убыткам (например, организационная онтология четко отражает взаимную иерархию и связи между подразделениями предприятия, а также сферы их компетенции, а ссылки на определенные нормативные документы обеспечивают одинаковую базу для переговоров). Они обеспечат работу со структурированными источниками данных, для которых может быть построена схема данных, то есть описаны типы данных и связи между ними, и существует формальный способ получения отдельных элементов данных. Примерами структурированных источников данных можно считать различные базы данных (например реляционные и объектные), а также слабо структурированные ресурсы, описанные в форматах XML, RDF, OWL, DAML+OIL.

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

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

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

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

Данная технология предусматривает создание типового решения для управления основными данными и НСИ для промышленных предприятий, холдингов и государственных структур. В качестве технологической платформы используется SAP MDM (Master Data Management), предназначенный для интеграции различных (в том числе разноплатформенных) приложений в масштабе компании, холдинга, отрасли, госструктуры и т. п., а также для организации и управления отраслевой или корпоративной нормативно-справочной информацией (мастер-данными).

ПРИМЕРЫ ПРИМЕНЕНИЯ ОНТОЛОГИЙ

TOVE (Toronto Virtual Enterprise). Цель проекта — создание модели данных, которая должна:

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

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

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

Среди множества других проектов Ontolingua использует проект Enterprise project.

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

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

KACTUS. Цель проекта — построение методологии многократного применения знаний о технических системах во время их жизненного цикла. Это необходимо, чтобы использовать одни и те же базы знаний для проектирования, оценки, функционирования, сопровождения, перепроектирования и обучения.

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

Основным формализмом в KACTUS является CML (Conceptual Modeling Language).

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

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

SHOE (Simple HTML Ontology Extensions) позволяет авторам аннотировать свои Web-страницы, внося в них семантическое содержание. Основным компонентом SHOE является онтология, которая содержит информацию о некоторой области. Используя эту информацию, средства поиска и построения запросов обеспечивают более релевантный ответ на запрос по сравнению с существующими поисковыми машинами, так как предоставляется возможность включать в Web-страницы знания, которые интеллектуальные агенты могут действительно прочитать. Для этого SHOE дополняет HTML набором специальных тэгов для представления знаний. SHOE позволяет находить знания с помощью таксономии и правил вывода, существующих в онтологии.

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

ЗАКЛЮЧЕНИЕ

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

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

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

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

    Гладун Анатолий Ясонович — канд. техн. наук, с.н.с. Международного НУЦ информационных технологий и систем НАНУ,

    Рогушина Юлия Витальевна — канд. физ-мат. наук, с.н.с. Института программных систем НАНУ.

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

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

Под формальной моделью онтологии О будем понимать упорядоченную тройку вида:

X - конечное множество концептов (понятий, терминов) предметной области, которую представляет онтология О;

Конечное множество отношений между концептами (понятиями, терминами) заданной предметной области;

Ф - конечное множество функций интерпретации (аксиоматизация), заданных на концептах и/или отношениях онтологии О.

Заметим, что естественным ограничением, накладываемым на множество X, является его конечность и непустота. Иначе обстоит дело с компонентами Ф и 91 в определении онтологии О. Понятно, что и в этом случае Ф и 91 должны быть конечными множествами. Рассмотрим, однако, граничные случаи, связанные с их пустотой.

Пусть Тогда онтология О трансформируется в простой словарь:

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

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

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

где - множество интерпретируемых терминов;

Множество интерпретирующих терминов.

такие что

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

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

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

Для представления модели онтологии, которая нужна для решения задач обработки информации в Интернете, очевидно, требуется отказаться от предположения

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

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

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

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

Результаты анализа частных случаев модели онтологии приведены в таблице 8.1.

Таблица 8.1. Классификация моделей онтологии

Представления множества концептов X в виде сетевой структуры;

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

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

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

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

Под формальной моделью онтологической системы будем понимать триплет вида:

Онтология верхнего уровня (метаонтология);

Множество предметных онтологий и онтологий задач предметной области;

Е - модель машины вывода, ассоциированной с онтологической системой

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

В модели имеются три онтологические компоненты:

Метаонтология;

Предметная онтология;

Онтология задач.

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

Предметная онтология содержит понятия, описывающие конкретную предметную область, отношения, семантически значимые для данной предметной области, и множество интерпретаций этих понятий и отношений (декларативных и процедурных). Понятия предметной области специфичны в каждой прикладной онтологии, но отношения - более универсальны. Поэтому в качестве базиса обычно выделяют такие отношения модели предметной онтологии, как partjof, kindjof, contained_in, member_of, seealso и некоторые другие.

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

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

Заметим, что и отношение see_also «не вполне» транзитивно. Действительно, если предположить, что (XI то можно считать, что (XI Однако по мере увеличения длины цепочки объектов,

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

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

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

Рис. 8.6. Взаимосвязь между онтологиями онтологической системы

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

С активацией понятий и/или отношений, фиксирующих решаемую задачу (описание исходной ситуации);

Определением целевого состояния (ситуации);

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

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

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

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

Основные направления применения и место онтологий в решении системных и прикладных задач показано на (рис. 2.13).

Рис. 2.13.

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

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

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


Рис. 2.14.

Традиционный подход к разработке информационных систем определен в модели ANS1/SPARC и предполагает описание элементов данных на трех уровнях:

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

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

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

Рис. 2.15.

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

Проработка онтологических слоев выполняется в двух направлениях:

  • от прикладной онтологии к базовой - с целью поиска онтологических оснований;
  • от базовой онтологии к прикладной - для гармонизации (устранения противоречий и несоответствий) онтологий.

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


Рис. 2.16.

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

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

Корректное построение моделей данных, лежащих в основе баз данных и знаний, осуществляется на основе гармонизированных онтологий, конкретизируемых от уровня базовых до прикладных. Поиск необходимых признаков элементов информации осуществляется на аналитическом этапе с использованием информационных моделей процессов, основное назначение которых - визуализация пунктов появления и движения элементов данных. Формирование информационных моделей может выполняться как с использованием инструментария структурного анализа, так и с помощью средств, реализующих объектно-ориентированный подход. В качестве одного из вариантов таких моделей могут использоваться схемы, отображающие движение информации во время реализации процессов - диаграммы потоков данных (DFD - Data Flow Diagram), пример которой для случая применения нотации Гэйна-Сарсона приведен на рис. 2.17.

Рис. 2.17.

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

Рис. 2.18.

Детализация модели данных на уровне определений до структуры базы данных на уровне атрибутов позволяет сформировать привычную схему базы данных в виде ER-модели (ER - Entity Relationship, сущность - связь), а затем и физической модели, которые непосредственно используются при создании баз данных и знаний информационных систем.

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

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

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

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


Рис. 2.19.

При выборе базовой онтологии могут рассматриваться следующие варианты:

  • база знаний ОрепСус - содержит информацию из различных предметных областей, однако в качестве недостатка этой базы знаний можно указать повышенную сложность и наличие проблем с масштабируемостью;
  • SUMO (Suggested Upper Merged Ontology) - свободно распространяемая онтология IEEE (Institute of Electrical and Electronics Engineers, Институт инженеров электротехники и электроники), содержащая наиболее общие и самые абстрактные концепты. Является «канонической» онтологией верхнего уровня, содержит обозримое число концептов и аксиом, имеет ясную иерархию классов, легко может быть подвергнута расширению;
  • BFO (Basic Formal Ontology) - разработка общей онтологии научных исследований. Состоит из серии подчиненных онтологий различного уровня детализации. Представляет собой единую инфраструктуру для работы с трех- и четырехмерными описаниями действительности;
  • ISO 15926 - стандарт представления сведений, связанных с инженерией, строительством и эксплуатацией установок непрерывного производства. К особенностям этого типа базовой онтологии можно отнести возможность учета временной составляющей объектов (40-моделирование), а также обеспечение моделирования жизненного цикла систем (а не просто текущего состояния той или иной системы). Стандарт содержит онтологическое ядро и подразумевает использование общих библиотек справочных данных для создания прикладных информационных моделей .

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

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

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

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

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

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

Вопрос про сервисы-процессы и задачи, а также сервисы-сущности (Are Services Nouns or Verbs, http://www.zapthink.com/report.html?id=ZAPFLASH-20091014) мне напомнил про необходимость онтологического уровня рассуждений, о котором говорил Chris Partrige в своей презентации июля 2007г. "Data and process revisited: ontology driving a paradigm shift in the development of business application systems" (http://ontolog.cim3.net/cgi-bin/wiki.pl?ConferenceCall_2007_07_05), но навело на другие мысли, которые я опишу тут пока несколько сумбурно.

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

SOA развивается как дисциплина, обеспечивающая гибкость "корпоративных" информационных систем. Подход интеграции данных в САПР на базе онтологических схем -- все то же самое.

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

Эти схемы огромны. В ISO 15926 изначально было порядка 50тыс. сущностей. В Gellish около того. В Dassault Systemes V6 универсальный моделер MatrixOne (на котором базируются все остальные модули V6, и который связывает все эти модули между собой и предоставляет им общую для всех базу данных) предоставляет возможность сделать SOA-архитектуру (чем гордятся) с 20тыс. классов "из коробки". Поясню: вы можете программировать, но вы должны понимать, что в вашем языке программирования есть 20 тыс. зарезервированных слов, каждое из которых что-то значит. Сравните это с изучением иностранного языка плюс вспомните, что компьютер не простит двусмысленностей и неточностей -- и вы получите представление о сложности сегодняшнего программирования. Никакая computer science пока тут рядом не стояла, пока это все вотчина software engineering.

Мне кажется, что application agnostic zone из презентации Chris Partrige уже есть. Вы еще не начали программировать свое "приложение", а вам уже дадено 20тыс. понятий. Вовсе не факт, что все эти понятия из системной архитектуры, а не предметной архитектуры. Вовсе не факт, что эти 20тыс. понятий все относятся к описанию самой V6 и ее модулей. Нет, в современных САПР вы обязательно найдете upper ontology во всей ее красе, вы найдете "полную схему мира", хотя и краткую по необходимости. В каждом современном САПР есть свой CYC, только он маленький и сводится к common sense только для инжиниринга -- там нет сведений о литературе и искусстве, медицине и политике.

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

Еще раз перепроверимся: ISO 15926 "из коробки" на верхнем уровне включает порядка 50тыс. классов. Предполагается, что вы работаете именно с ними, и там все основное и необходимое есть. Не предполагается, что вы заново создаете все понятия по мере того, как в них возникает потребность.

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

Тем не менее, забудь о рефакторинге, всяк сюда входящий: внутрь кирпичей не смотрят, это и достоинство и проблема. Я думаю, если внимательно проработать 20тыс. классов MatrixOne, а также поглядеть на все дублирующие друг друга части модулей V6 и "отрефакторить" по-человечески, то можно было бы получить систему другого класса как по масштабируемости, так и по легкости освоения и сопровождения.

Итак, современное программирование -- это работа по написанию "сервисов" над огромными плохо отрефакторенными онтологиями. Уже нет "данных", есть онтологии, но работа с онтологиями по существу отстает от работы с агентской ("выполнителями", "процессорами", "модулями", сервисами, объектами-с-методами и т.д.) частью. Рост же компьютерной мощности дает возможность плюнуть на эту онтологическую грязь, "онтологический долг" (ср. technical debt из agile).

Текущее обсуждение "программирования-в-большом" (programming-in-large, http://en.wikipedia.org/wiki/Programming_in_the_large_and_programming_in_the_small) эти проблемы игнорирует, опять таки сосредотачиваясь на "языках программирования-в-большом" и тем самым сводя все изменение парадигмы к повторению истории "программирования-в-малом" для асинхронных распределенных сервисов. Мне же кажется, что акцент тут нужно делать не на том, что есть множество асинхронных распределенных сервисов, а в том, что это (включая тот факт, что сервисы эти пишутся разными людьми и отражают структуру разных предметных областей) приводит к появлению огромных слабо контролируемых онтологий и тем самым к появленю нового сорта архитектур -- "универсальных моделирующих комплексов", которые сейчас стремительно развиваются под маркой SOA.

Тем самым я рассматриваю SOA просто как способ:
-- указать на то, что подлежащие модели являются не айтишными моделями, а задающимися спецификой деятельности организации. После этого появляется эпистемологическая проблема расхождения модели и реальности, и кроме инженерной части работы возникает мыслительная часть ("полагание" онтологии) и исследовательская часть по выявлению поведения этой онтологии в реальности. Именно отсюда и родился так похожий на agile manifesto манифест SOA.
-- дать хоть какой-то набор практик жизненного цикла (software process) для программирования-в-большом. Ведь на сегодня программная инженерия говорит что-то осмысленное только про программирование-в-малом. А программирование-в-большом (которое, замечу, скрывается и внутри программирования на C++ и Java, а не только BPEL) осталось без специфичных для него практик. Вот SOA и заполняет эту брешь, уж как может.

Сама проблема "программирования в большом" для меня очень близка к тематике проектирования-конструирования. Проектирование -- это для меня полный аналог "программирования-в-большом". Ты должен собрать из (в пределе, например для ядерной подводной лодки, которую любит приводить в пример Dassault Systemes) 4 миллионов комплектующих (данных тебе в виде каталогов стандартных комплектующих главным образом, и лишь совсем чуть-чуть в виде конструируемых специально для твоего проекта особых деталей), и тем самым добиться того, чтобы эти результаты чужого труда каким-то образом заработали вместе, а вся результирующая композиция не развалилась, не взорвалась и служила долго.

Сейчас с проблемой моделирования-в-большом столкнулись модельеры, у которых встала та же самая задача modeling-in-the-large (подробнее см. megamodeling в https://gforge.inria.fr/plugins/scmsvn/viewcvs.php/*checkout*/Publications/2009/SLE-IfMDEisSol.pdf?rev=29&root=atlantic-zoos , но эти ребята из AMMA заявили об этой проблеме на конференциях MDAFA 2003/2004, и опубликовались в 2005г. http://www.springerlink.com/content/dqj98uwqp2gbu3cx/?p=c10f5251afa74af6b134631cf4dae7a1&pi=2 . У них там еще пять лет назад говорилось то, что я твержу сейчас -- "There is probably not going to be a unique monolithic modeling language (like UML 2.0) but instead an important number of small domain specific languages (DSLs) and this will only be possible if these small DSLs are well coordinated. To avoid the risk of fragmentation, we need to offer a global vision, wich can be provided by the activity of modeling in large").

Тем самым, мы наблюдаем много-много разных способов сделать language workbenches: SOA (как это ни странно), собственно language workbenches, работы типа ведущихся в группе AMMA, современные САПР с "универсальной датацентрикой" и кучерявой схемой/моделью данных/онтологией.

Это магистраль, "в большом". Это и есть текущий мейнстрим. Онтологии тут -- enabling technology.

Loading...Loading...