2. Методология решения задачи
2.1 Модель представления знаний для проекта «Учебное расписание»
При обсуждении задачи составления (планированию) расписания важно выделить требования, предъявляемые к знаниям. Знания, необходимые для выполнения функций планирования расписания, должны быть полными, хорошо определенными и тщательно структурированными. Методы для представления и использования этих знаний должны иметь результатом расписание, достаточно эффективное и гибкое. Среда, для которой создается расписание на базе искусственного интеллекта, должна демонстрировать недетерминизм, означая, что возможен более чем один допустимый путь его составления. Для решения здесь требуются рассуждения, которые связаны с объектами, обладающими гибкими (полиморфными) характеристиками.
На данном этапе введем понятие архитектуры для обработки и представления знаний (АОЗ). АОЗ имеет две составляющих: внутреннюю и внешнюю. Внешняя составляющая напрямую связана с моделью представления знаний, а внутренняя отождествляется с конкретной аппаратной (,или программной,) архитектурой электронной вычислительной машины (ЭВМ), на платформе которой создается программный продукт. Естественно, что указанные составляющие должны иметь как можно более простые связи, т.е. каждому семантическому элементу модели представления знаний должна быть сопоставлена естественная аппаратная (программная) реализация.
В ЭВМ "неймановского типа" для того, чтобы выполнить некоторую обработку данных, необходимо написать алгоритм обработки в виде программы и ввести ее в компьютер. Если попытаться подобным методом разработать систему обработки знаний, то неизбежно возникают две проблемы. Первая связана со слиянием знаний с механизмом логического вывода. Она состоит в том, что знания об объекте и механизм логического вывода, использующий эти знания, не должны отличаться друг от друга, т.е. их следует представлять в виде цельной процедуры. Вторая проблема обуславливается сложностью обновления знаний, когда пополнение, уничтожение или изменение знаний, ломающихся объекта, означает изменение программы, и трудно точно определить, до какой части программы распространяется это влияние. Эти проблемы можно разрешить, если разработать систему с модульным представлением знаний.
Наиболее часто используемые модели представления знаний для решения задач искусственного интеллекта (ИИ) приведены в табл. 1.1.
Таблица 1.1
Описательные формализмы | Иерархия | Наследование | Модульность |
Семантические сети | + | - | - |
Фреймовая модель | + | + | - |
Продукционная модель | + | - | + |
ОО модель | + | + | + |
Для проекта "Учебное расписание" был выбран объектно-ориентированный (ОО) формализм представления знаний, который можно трактовать как уточнение формализма фреймов (в формализме фреймов не делается различия между видом отношений класс/подкласс и видом отношений класс/конкретный экземпляр, в то время как в ОО формализме эти два вида отношений являются ортогональными).
ОО модель знаний также выгодна с точки зрения процесса представления знаний, который включает в себя следующие этапы:
1. Идентификация классов и объектов данного уровня абстракции;
2. Идентификация семантики классов и объектов;
3. Идентификация связей между классами и объектами;
4. Идентификация классов и объектов (программная реализация).
2.1.1. Объектно-ориентированная модель представления знаний
Концептуальной основой объектно-ориентированного стиля представления систем является подход, которому соответствуют четыре главных элемента:
- абстрагирование;
- ограничение доступа;
- модульность;
- иерархия.
Под абстрагированием понимают выделение существенных характеристик (атрибутов) объектов (определение абстрактного типа данных), которые отличают его от всех других видов объектов и, таким образом, четко определяют особенности данного объекта с точки зрения дальнейшего рассмотрения и анализа.
На данном этапе введем понятие инкапсуляции как объединения атрибутов объектов и функций управления объектами в единую описательную структуру - класс. Таким образом, понятие класс определяет множество объектов, связанных общностью структуры и поведения.
Следует разделять внутреннее и внешнее проявление класса. Интерфейсная часть описания класса соответствует его внешнему проявлению, подчеркивает его абстрактность, но скрывает его структуру и особенности поведения. Реализация класса составляет его внутреннее проявление и определяет особенности поведения, т.е. в данной части раскрывается реализация тех операций, которые перечислены в интерфейсной части описания.
Интерфейсная часть класса состоит из перечня действий, который допускает описание, других классов, констант, переменных и других особенностей, необходимых для полного определения данной абстракции. Интерфейсная часть описания класса разделена на три составные части:
- общедоступная;
- защищенная;
- обособленная (скрытая).
К = , (2.1)
где
А – атрибуты класса;
Ф – функции (методы) класса.
В свою очередь:
А =, (2.2),
а
Ф = , (2.3)
где
О[А,Ф] - общедоступные элементы класса;
З[А,Ф] - защищенные элементы класса;
С[А,Ф] - скрытые элементы класса.
В общедоступной части интерфейса класса декларируются определения, "видимые" для всех объектов-пользователей данного класса.
В защищенной части интерфейса класса даются определения, "видимые" только для объектов, относящихся к подклассам данного класса.
В обособленной части интерфейса класса декларируются определения, "скрытые" для объектов всех других классов.
Созданию абстракции объекта предшествуют решения о способе ее реализации. Выбранный способ реализации должен быть скрыт и защищен для большинства объектов, обращающихся к данной абстракции. Ограничение доступа определяет процесс защиты отдельных элементов объекта, не затрагивающий существенных характеристик объекта как целого.
Модульность является свойством системы, которое связано с возможностью декомпозиции ее на ряд тесно связанных модулей (областей).
Иерархия реализует механизм отношений между классами объектов. Отношения между классами могут быть комбинацией следующих типов иерархий;
- наследование;
- использование;
- метаклассы.
Наследование – отношение между классами, когда один класс повторяет (включает в себя) структуру и поведение другого (простое наследование) или других (множественное наследование) классов. Класс, структура и поведение которого наследуются, называются суперклассом (класс-предок), а производный от суперкласса класс навивается подклассом (класс-наследник). Очевидно, что лучшим способом сохранения единства подхода к проекту и решения проблемы избыточности описания, является создание для каждого вида данных отдельного класса, что позволит защитить данные в каждом классе и увязать их с выполняемыми операциями.
Отношение использования связано с объявлением общности (дружественности) классов, которая означает возможность доступа к защищенным элементам класса объектам других классов.
Метакласс (абстрактный класс) является классом, объекты которого сами являются классами.
... интерфеса и интерфейса локольной сети · Предложение о выборе вариантов загрузки При этом возможен вариант запгрузки как с SCSI устройства (диск, CDROM, лента, …) так и через локальную сеть. Загрузочный диск должен быть предварительно сконфигурирован. Так как обьем Boot ROM не может быть большим, в его задачи входит загрузка вторичного загрузчика ...
... производительных сил, тем быстрее повышается Б. населения. В еще большей степени Б. связано с эффективностью социально-экономической политики в данном обществе. Информатика как наука. Предмет и объект прикладной информатики. Системы счисления Инфоpматика — это основанная на использовании компьютерной техники дисциплина, изучающая структуру и общие свойства информации, а также закономерности и ...
... современным компьютерам, должна стать мощным усилителем мыслительных процессов в образовании. И здесь особая роль отводится преподавателям, которые являются носителями технологии образования и которые должны творчески переосмыслить накопленный интеллектуальный багаж в соответствии с новыми технологическими возможностями. До настоящего времени в российском обществе отсутствует четкое понимание ...
... равенства и неравенства. При полном равенстве в распределении доходов "кривая Лоренца" представляла бы собой прямую и, наоборот, кривизна усиливается по мере роста неравенства. В соответствии с современной экономической теорией нежелательно как абсолютное равенство в распределении доходов, так и резкий разрыв в уровне жизни различных групп населения. Абсолютное равенство в доходах не стимулирует ...
0 комментариев