Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


НЕ М ОНОТОННЫЕ РАССУЖДЕНИЯ



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

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

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

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


 


226



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

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

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

топливо(Х, бензин): -автомобиль(Х)

Но для паровых машин Стэнли это подразумеваемое правило
приведет к ложному заключению. Для них требуется более кон-
кретное правило:

топливо{Х, пар): - Стэнли(Х)

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

Более сложный вид немонотонных рассуждений' связан с уда-
лением утверждений из базы данных и называется поддержкой ис-
тинности.
В системе поддержки истинности (СПИ) (truth main-
tenance system - TMS) доказанные факты вместе с их обосновани-
ем называются записями зависимости ( dependency records ) к хра-
нятся в базе данных. В традиционных системах считается, что если
факт попал в базу данных, он достоверен,, В СПИ элементы базы
данных уместнее называть предположениями ( beliefs: ), поскольку
они зависят от предположений, не всегда верных. Возможны гипо-
тетические дрпущения, которые в случае неудачного доказатель-
ства удаляются. Если какое-либо утверждение оказалось некоррек-
тным, то все основанные на нем предположения должны быть так-
же удалены из базы данных. Области обоснования предположений
образуют сеть, где обоснованиями некоторою предположения с
жат другие предположения и правила. В конечном итоге эта сеть























































В


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

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

Вы уже видели, каким образом в Прологе предложения, ис-
пользуемые словом ПОИСК для доказательства цели, накаплива-
ются в списке РЕШЕНИЯ. Такие предложения являются обоснова-
на цели и должны заноситься в базу данных вместе с целями.
Если позднее некоторое предложение окажется ложным, то доказа-
тельства, на основании которых получено это предложение, будут
удалены из базы данных. Например, цель КОЗЕЛ (см. рис. 9.4)
обосновывается утверждениями, содержащимися в последнем
фрейме списка РЕШЕНИЯ. Если любое из них, например факт
ИМЕЕТ-РОГА, признается ложнкм, то цель КОЗЕЛ, не имеющая
более обоснований, должна быть удалена из базы данных.

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ
ПРОГРАММИРОВАНИЕ

В базе знаний Пролога правила не организованы з какие-либо
группы по родственным признакам, разве что упорядочены по
смыслу программистом. Базы знаний, не имеющие внутренней
классификации предложений, называются плоским и ( flat ) сис-
темами. Все правила в них расположены на одном иерархическом
уровне. Такой способ организации, хотя и упрощает базу знаний,
также не является эффективным, поскольку при сопоставлении
каждой цели должен просматриваться весь список предложений
целиком. Если бы предложения были сгруппированы по своим кон-
тeкстам, то интерпретатор правил мог бы по индексу выбирать
соответствующую группу и пытаться применять правила, содержа-
щиеся в ней. Системы, организация которых основана на разбие-
нии знаний по группам, называются объектно-ориентированными
( object - based ).

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

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

229


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

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

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

Простая семантическая сеть изображена на рис, 10.1. Ее узды
представляют объекты или их свойства. Линии, соединяющие
их, отражают связи между ними. На рисунке показано два вида
связи: ЭТО (или ЯВЛЯТЬСЯ) и СВОЙСТВО. Первый вид связи
ЭТО (IS-A) наиболее часто употребляется в семантических сетях и
определяет класс, которому принадлежит конкретный объект.
КОЗЕЛ принадлежит классу МЛЕКОПИТАЮЩЕЕ, БОРЬКА при-
надлежит классу КОЗЕЛ и является представителем этого класса.
Вид связи СВОЙСТВО приписывает объектам свойства. У объекта
КОЗЕЛ одно свойство - ИМЕЕТ-РОГА. Но будучи включекным в
класс МЛЕКОПИТАЮЩЕЕ, он наследует также и свойства данно-
го класса: ДАЕТ-МОЛОКО и ИМЕЕТ-ВОЛОС-ПОКРОВ. Несмотря
на то что БОРЬКА сам не обладает этими свойствами но. являясь
КОЗЛОМ и МЛЕКОПИТАЮЩИМ, наследует их от указанных
классов.

Основная форма организации таких сетей - классификацион-
ная иерархия (
ta x o n o mi c Metarchy ), где между объектами сущест-
вуют только связи типа ЯВЛЯТЬСЯ. Возможности выражения вза-
имоотношений между объектами в семантических сетях не ограни-
чиваются лишь принципом иерархии. Линии на рисунке могут обо-


Рис. 10.1. Семантическая сеть. БОРЬКА - это КОЗЕЛ, и он наследует
свойства как понятия КОЗЕЛ, так и понятия МЛЕКОПИТАЮЩЕЕ

значать и другие виды взаимоотношений между объектами. Более
сложная семантическая сеть включает уже свойства со значени-
ями. Вместо некоторого универсального свойства здесь могут быть
изображены конкретные свойства, например для связывания слов
РОГА и КОЗЕЛ можно использовать свойство " является-частью".

Семантические сети считаются более сложной формой пред-
ставления знаний, чем логика предикатов. Однако и в этих сетях
логика неявно присутствует. Чтобы не получить в результате се-
мантической бессмыслицы, взаимосвязям должны быть присвоены
конкретные значения. Даже на первый взгляд очевидно, что прос-
тому отношению ЭТО может соответствовать несколько значений.
На рис. 10.1 таких значений два. Линия, связывающая объект
БОРЬКА с объектом КОЗЕЛ, в терминах логики, обозначает пре-
дикатное утверждение о ■ том, что БОРЬКА есть представитель
класса КОЗЕЛ:

козел(борька).

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

млекопитающее(Х): - козел(Х)


 


230


231


 


что означает; для всех X, если X являетея козлом, то X также
является и млекопитающим. Второе значение ЭТО показыва е т, что
объект " козел" откосится к подмножеству млекопитающих.

Наследование свойств логически выражается не так просто,
как операции Пролога, выполняемые над переменными. В Прологе
все переменные имеют квантор всеобщности, так что истинность
некоторого предположения распространяется на все подстановки
переменных. Если все объекты класса наследуют некоторое
свойство, характерное для данного класса, например КОЗЕЛ н з
класса МЛЕКОПИТАЮЩЕЕ, то для всех млекопитающих свойст-
ва объектов класов МЛЕКОПИТАЮЩЕЕ считаются и ст и нным.
Из рис. 20.1 ясно, что свойство ДАЁТ-MOJIGKO логически связало
с классом МЛЕКОПИТАЮЩЕЕ следующим образом:

дает-молоко(Х): - млеко пита ющее (Х)

Объединяв это правилом, с предыдущим, получим

дает-молоко (X): -козел (X).

До последнего пункта семантическая c ert * эквивалентна свое-
му логическому представлению в виде двух утверждений Пролога.
Отличия от логики предикатов начинают проявляться, когда неко-
торый объект получает' право отказаться от свойств путем введения
локального отношения. Если у козла БОРЬКИ не было рогов, а это
свойство наследовано им от объектов класса КОЗЕЛ, то он должен
отказаться сг наследованного свойства И М ЕЕТ-РОГА. В данном
случае X в утверждениях Пролога применимо не для всех X, по-
скольку
БОРЬКА составляет исключение.

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

Семантические сети не следует воспринимать как один из
аспектов (усовершенствованный) инженерии знаний. Лишь в по-
следнее время стало проясняться логическое следствие приписыва-
ния такому фундаментальному типу связи, как ЯВЛЯТЬСЯ
(ЭТО), различных значений путем " вычленения" его возможных
значений посредством отдельных связей. Несмотря на свою нефор-
мальную природу, семантические сети могут найти широкое при-
менение, особенно в области понимания естественного языка.


МЕТАРАССУЖДЕНИЯ: УПРАВЛЕНИЕ ВЫВОДОМ

Ввдвг мы рассмотрели вызов по образцу как способ более
гибкого управления интерпретатором. Кроме того, в гл.9 (" Поиск в
ширину и эвристический поиск" ) обсуждался эвристический поиск
в качестве средства для повышения эффективности функциониро-
вания интерпретатора. Если правильный путь на низлежащие уро-
вни выбирается с привлечением эвристических знаний, то поиск
пути к достижению цели будет короче. Интересным вариантом во-
п лощения дачного подхода является снабжение интерпретатора его
собственными знаниями о методах выбора пути при поиске, при-
чем эти управляющие знания могут быть представлены в той же
форме, что и знания предметной области (в форме предложений).
Таким образом, интерпретатор при выборе следующего предложе-
ния из списка ПРЕДЛОЖЕНИЯ может пользоваться своими зна-
ниями по управлению. Правила, которые содержат управляющие
знания, называются метаправилами.

Процедура поиска интерпретатора с привлечением метаправил
несколько отличается от алгоритма ПОИСК, изложенного в гл. 9.
Сначала для заданной цели находятся все сопоставимые с нею
предложения. Такой набор предложений называется конфликтным
набором ( conflict set ).
" Конфликт" заключается в необходимости
выбора правила из нескольких возможных. Поскольку все они аль-
тернативны и расположены на уровне ИЛИ дерева вывода, поиск
будет вестись вниз по каждому из них. Метаправила применяются
при выборе одного из альтернативных продолжений.

Отдельные метаправила основаны на некотором знании харак-
тера самой решаемой задачи. Например, следующее правило:

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

эвристически утверждает, чт j в первую очередь должен осуществ-
ляться поиск по наикратчайшему пути.

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

Уровень здания:   Размещение, внешние размеры, выбор

расположения комнат.
Уровень комнаты: Выбор техслужб и отделки.


 


232


233


 


Уровень техслужб: Размещение систем (водоснабжения

электроосвещения,    обогрева)   с учетом расположения стен.

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

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

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

нением ограничений ( constraint propagation). Ограничения выража-

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

Ограничения используются по принципу наименьших сверше-ний ( least commitment principle ), т.е. при решении глобальных  проблем на подзадачи накладываются минимальные ограничения с

тем, чтобы облегчить нахождение оптимального решения на лока-

льном уровне.

Похожий метод, называемый управляемым возвратом ( dipen-

dency - directed backtraking ), аналогичен методу поддержания истинности. Но вместо того, чтобы каждый раз обновлять базу

данных для внесения в нее записей обусловленностей или их уда-

ления, при данном методе эти записи служат основой для анализа

 тупиковых правил и фактов с тем, чтобы учитывать их во время

выбора альтернативного пути при возврате. Информация, собран-

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

 использована для предотвращения повторения одних и тех же

ошибок

           НЕОПРЕДЕЛЕННОСТЬ И ДОСТОВЕРНОСТЬ

      Управляемый возврат помогает проводить доказательства с не-полными данными. Сами же доказательства выполняются по точ­ным правилам вывода. Отказ от строгих рассуждений сделал воз-можным использование вероятностей для описания достоверности правил.     Достоверность правил выражаетс с помощью чисел от 1

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

факторами достоверности (certainty factors). Поскольку теория

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

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

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

же базу знаний, в которой обоснованность всех правил проводи-

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

Поскольку методы стандартной статистики применять крайне

сложно, в медицинской экспертной системе MYCIN были использо-

ваны факторы достоверности. Каждому правилу ставился в соот-

ветствие фактор достоверности (ФД). Вычисление ФД доказанного

 

X + Y - XY

где X -ФД факта, а Y - ФД правила, причем значения X и Y на-

на той же  формуле определения ФД, но в диапазоне от 0 до 100, например:

 

X + Y - XY/100

 

Факторы достоверноcти могут передаваться по цепочке дока-

зательств. Чем больше применяется правил, тем выше значение

ФД при приближении к достоверности.                                Такое увеличение ФД про-

исходит в результате накопления достоверности для финального

заключения и не зависит отпорядка применения правил. В основе формулы определения факторов достоверноси не лежит какая-ли-

бо теория обоснованности. Она используется лишь постольку, пос-

кольку отдельные свойства отражают степень их обоснованности

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

ной аргументацией против нее.

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

 

Принадлежность к группе

0.1
0.3

0.5
0.9

всех этих фрагментов отдельные гипотезы, обосновываемые и
образуют перекрывающиеся подмножества. Существует теория до-
с т овер но с т и Демпс т ера-Шейфера
(D-S теория), которая предста-
вляет собой математическую теорию, включающую как специаль-
ные случаи и функции Байеса, и ФД, с той лишь разницей, что
если степень достоверности некоторой гипотезы принимается за X
(в диапазоне от 0 до 1), то на другие возможные поднаборы данной
гипотезы остается значение (1 - X). В D-S теории X называется
базовым распределение м вероятностей (БРВ) - basic probability
assignment
(BPA). Это понятие отличается от вероятности Байеса,
где (1-Х) представляет вероятность подгруппы, содержащей все
остальные гипотезы. Согласно же D-S - теории (1-Х) считается
распределением по объединению всех остальных подгрупп.

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

1. Групп, содержащих заключения двух правил, в каждое
которых имеется по одному и тому же элементу: БРВ = XY.

2. Группы-заключения правила один и остальных возмож,
подгрупп, содержащих X: БРВ = X(l-Y).

3. Группы-заключения правила два и остальных возможных
подгрупп, содержащих Y: БРВ = Y(l-X).

4. Остальных возможных подгрупп (1-XM1-Y).

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

XY + Х(1 - Y) + Y(1 - X)
или после преобразования:
X + Y - XY

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

236


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

группа (диапазон чисел)

от 0 до 2км

от 2 до 20км

от 20   до 50км
свыше 50 км

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

m(X u Y) = mах(m(Х), m(Y))
m(Х п Y) = min(m(X), m(Y)}

где m(Х) и m(Y) - степени принадлежности к группам X и Y
соответственно.

КОНТЕКСТНЫ Е СЛОВАРИ ФОРТА

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

VOCABULARY имя

Тем самым создается контекстный словарь с именем, следующим
за словом VOCABULARY. Например:

VOCABULARY EDITOR

создает словарь текстового редактора. После вызова EDIT список
слов из Этого словаря становится доступным внешнему интерпрета-
тору, осуществляющему чтение из входного потока. В Форте-83
корневым словарем является FORTH, состоящий из стандартных
слов Форта. Если мы введем слово WORDS, то на экран будут вы-
ведены слова из доступного, текущего словаря.

 




Такие слова-словари, как FORTH и EDITOR, содержат указа­тель на nfa последнего слова в обозначаемых ими словарях. Значе­ние указателя хранится в pfa словарей. На рис. 10.2 изображена общая схема словаря Обратите внимание на то, что слово FORTH расположено в общем словаре и имеет в своем pfa указатель на
















































































































































































































































Рис, 10.2.


Поделиться:



Последнее изменение этой страницы: 2019-03-29; Просмотров: 234; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.088 с.)
Главная | Случайная страница | Обратная связь