Автор: Пользователь скрыл имя, 19 Марта 2012 в 14:50, курс лекций
В курсе изложены основы системного анализа, синтеза и моделирования систем, которые необходимы при исследовании междисциплинарных проблем, их системно-синергетических основ и связей. Курс предназначен для студентов, интересующихся не только тем, как получить конкретное решение конкретной проблемы (что достаточно важно), но и тем, как ставить, описывать, исследовать и использовать такие задачи, находить и изучать общее в развивающихся системах различной природы, особенно, в информационных системах
1. Лекция: История, предмет, цели системного анализа
2. Лекция: Описания, базовые структуры и этапы анализа систем
3. Лекция: Функционирование и развитие системы
4. Лекция: Классификация систем
5. Лекция: Система, информация, знания
6. Лекция: Меры информации в системе
7. Лекция: Система и управление
8. Лекция: Информационные системы
9. Лекция: Информация и самоорганизация систем
10. Лекция: Основы моделирования систем
11. Лекция: Математическое и компьютерное моделирование
12. Лекция: Эволюционное моделирование и генетические алгоритмы
13. Лекция: Основы принятия решений и ситуационного моделирования
14. Лекция: Модели знаний
15. Лекция: Новые технологии проектирования и анализа систем
Человек пользуется естественным формализмом - языком, письменностью. Язык, языковые конструкции развиваются благодаря тому, что человеческие знания постоянно нуждаются в языковом представлении, выражении, сжатии, хранении, обмене. Мысль, которую нельзя выразить в языковой конструкции, не может быть включена в информационный обмен. Язык - форма представления знаний. Чем многообразнее язык народа, чем больше знаний он может отражать, тем богаче культура народа. В то же время, предложения и слова языка должны иметь однозначный семантический смысл. Особую роль играет язык математики как язык наук (не только точных, но и гуманитарных), формализации знаний, основа изложения системы знаний в естественных науках. Свой язык имеют химия, физика, экономика, информатика и т.д. Языки наук часто пересекаются и взаимообогащаются при исследовании междисциплинарных проблем.
Использование языковых систем и диалектов повышает надежность информационного обмена, снижая возможность неправильного истолкования передаваемой информации и уровень шумов в сообщениях. Главное назначение языка науки - создавать и использовать типовые, "стандартные" формы изложения, сжатия и хранения знаний, ликвидация полисемии (смысловой многозначности) естественного языка. Полисемия, обогащая естественный язык, делая его богаче и выразительнее, тем не менее, является в информационном обмене источником семантического шума, смысловой неоднозначности, а часто - и алогичности, неалгебраичности.
Пример. Найдем и формализуем закономерность в последовательности 1, 10, 11, 100, 111, 1000, 1111, 10000, ... . Из сравнения членов A[i] (i=1,2,...) последовательности, стоящих на четных местах и на нечетных местах, видно, что: 1) элемент на нечетном месте получается из элемента на предыдущем нечетном месте добавлением единицы справа к нему; 2) каждый элемент на четном месте получается из элемента на предыдущем четном месте добавлением справа к нему нуля. Это словесно описанное (неформализованное) правило можно записать на математическом языке, в аналитическом виде. Получим для случаев 1) и 2): A[2n]=10A[2n-2], A[2n-1]=10A[2n-1]+1, n=1, 2, ... . Можно записать формулу, объединяющую обе эти формулы: A[2n+m]=10A[2n+n-2]+m, где m=0 или m=1. Лучшая форма (с меньшей полисемией): А[2n+mod(n,2)]=10A[2n+mod(n,2)
Пример. Формализуем закон формирования последовательности: AB, AAB, ABB, AAAB, ABBB, ... . Словесное описание правила имеет вид: к слову, стоящему на очередном нечетном месте, добавляется с конца символ "В", а к слову, стоящему на очередном четном месте слева, добавляется символ "А". "Формульная" запись правила: Х2n+1=X2n-1+B, X2n=A+X2n-2, n=1, 2, 3, ... . Здесь операция "+" означает конкатенацию (присоединение текста к тексту справа), а Хn - элемент последовательности на n-м месте.
Одной из важных форм (методов) формализации знаний является их представление классом (классификация).
Классификация - выделение некоторого критерия (некоторых критериев) распределения и группировка систем или процессов таким образом, что в одну группу попадают лишь те системы (процессы), которые удовлетворяют этому критерию (значению критерия). Классификация - это метод научной систематики, особенно важный на начальном этапе формирования базовых знаний научного направления. Классификация, установление эквивалентности объектов, систем позволяет решать такие важные задачи информатики как фиксация знаний, поиск по образцу, сравнение и др.
Пример. Такими системами являются классификационная система К. Линнея в ботанике, систематика живых организмов, таблица элементов Д. Менделеева, систематика экономических систем, механизмов, "табель о рангах", введенная Петром Первым в 1722 г. Эта табель подразделяла чины на 14 рангов. Каждому чину соответствовала определенная должность. Первые 6 рангов статской и придворной служб и первый обер-офицерский чин в армии давали право на получение потомственного дворянства, что способствовало формированию дворянской бюрократии. Таким образом, "табель о рангах" выполняла социально-экономическую классификацию определенной (определяющей) части общества, социально-экономическое стимулирующее упорядочивание.
Указанные выше классификационные системы - иерархические структуры (модели) представления знаний. Отдельные понятия, факты, знания, связаны между собой отношениями дедуктивного (от частного к общему), индуктивного (от общего к частному) или индуктивно-дедуктивного вывода и формализуются соответствующими формальными структурами: древовидными, морфологическими, реляционными и др.
Пример. Рассмотрим систему "Фирма". Опишем всех сотрудников фирмы в лексикографически упорядоченном списке с именем "Сотрудники", указывая табельный номер, ФИО, год рождения, образование, специальность, разряд, стаж работы. Этот список дает нам знание о коллективе, его возрастных и профессиональных качествах и др. Составим другой список - "Заработная плата", где укажем для каждого сотрудника условия оплаты, величину их заработка (стоимости единицы времени их работы). Этот список дает нам знания о системе оплаты фирмы, ее финансового состояния и др. Оба списка содержат необходимый объем знаний о трудовом коллективе, если цель исследования этой системы - начисление заработной платы. Здесь мы наблюдаем и древовидные, и морфологические, и реляционные модели представления знаний.
Для более строгой формализации (сложных и динамических) знаний в последнее время используют такой перспективный инструментарий, как категории и функторы. Впрочем, математическая сложность такого аппарата не дает применять его на первоначальных этапах формализации знаний и он чаще используется лишь тогда, когда знания получили достаточно полную математическую форму описания.
Появление и развитие объектно-ориентированных технологий и объектно-ориентированного проектирования, использующих близкие по духу идеи, тем не менее, актуализируют аппарат категорий и функторов, поэтому введем основные начальные понятия.
Категория K=<S,M> - это совокупность S элементов (компоненты, характеристики, параметры, свойства и другие параметры исследуемой системы), называемых объектами категории, и совокупность преобразований, морфизмов M - специального типа преобразований, которые позволяют описывать (определять), например, эквивалентность, инвариантность и другие свойства. Объекты и морфизмы связаны между собой так, что:
Категории, их использование для представления знаний адекватны мыслительным процедурам человека, учитывающим опыт, интуицию, понимание мира в терминах категорий, которым мы затем приписываем реальные оболочки, конкретные структуры. Объекты категории могут быть связаны между собой, влиять друг на друга, даже если у них нет общего (формального) сходства, а свойства категорий отражают сущность способностей человека, его поведения в окружении.
Функтор - обобщение понятия категории. Для введения преобразования между категориями используем понятие функтора. Функтор - аналог семантической операции, т.е. преобразования информации, приводящего к появлению некоторого смыслового (семантического) содержания.
Функтор определяется парой отображений, которые сохраняют композицию морфизмов и тождественные отображения (сохраняют смысл информации при преобразованиях): одно отображение преобразует объекты S (грубо говоря, - информацию), а другое - преобразует морфизмы M (грубо говоря, - семантический смысл).
Самый плохо формализуемый в информатике процесс - это процесс образования семантического смысла. Строгая математическая основа аппарата категорий и функторов позволяет исследовать семантический смысл математически корректно (путем построения семантических сетей, анализа фреймов, продукционных правил и др.), что является необходимым условием формализации знаний, разработки баз знаний и систем интеллектуальной поддержки принятия решений.
Категорийно-функторный подход к проблеме формализации знаний позволяет формализовать многие интуитивно используемые понятия.
Пример. Формализуем, например, понятия "формула", "теория". Формула Fi - запись вида Ri(k)(x1,:,xk), которую следует читать так: k переменных x1,:, xk удовлетворяют отношению Ri(k). В каждой i-ой формуле Fi может быть различное число свободных (не связанных) переменных. Понятие "(формальная) теория" можно определить как кортеж Т=<S,F>, где S - сигнатура (множество определенных, разрешенных операции), а F - множество формул без свободных переменных (аксиом теории). Если дополнительно определено и множество правил вывода P, то T=<S,F,P>. Отсюда видно, что формальная теория базируется на конкретной предметной области, определяемой сигнатурой.
Для компьютерного представления и обработки знаний и данных о предметной области (об объектах, процессах, явлениях, их структуре и взаимосвязях), они должны быть формализованы и представлены в определенном формализованном виде.
При традиционном способе реализации математической модели, знаний, заложенных в ней, строится моделирующий алгоритм (моделирующая программа), т.е. знания процедурно зависят от метода (алгоритма) обработки. В интеллектуальных системах (в системах искусственного интеллекта, в частности) знания о предметной области представлены в виде декларативной (описательной) модели формирования базы знаний и соответствующих правил вывода из нее и явно не зависят от процедуры их обработки. Для этого используются специальные модели представления знаний, например, продукционные, фреймовые, сетевые и логические. При обработке модели знаний используются процедуры логического вывода, называемые также механизмом или машиной вывода. Обычно в базе знаний зафиксированы общие закономерности, правила, описывающие проблемную среду и предметную область.
Процедуры вывода позволяют на основании общих правил вывести решение для заданной конкретной ситуации, описываемой некоторыми исходными данными. Цепочка логического вывода строится по мере приближения к решению, в зависимости от выведенных на каждом шаге данных и выведенных к этому шагу новых знаний. Конкретные формы организации дедуктивного вывода зависят от того, в какой форме представлены знания в базе знаний (на каком языке представления знаний).
Продукционная модель представления знаний наиболее распространена в приложениях. Модель реализуется правилами-продукциями:
если <условие> то <заключение>.
В качестве условия может выступать любая совокупность суждений, соединенных логическими связками и (), или ().
Пример. Продукцией будет следующее правило:
если (курс доллара-растет)(сезон-осень)(
то (прогноз цен на рынке жилья - рост рублевых цен на квартиры).
Такого рода правила и знания о ценах, предложении и спросе на рынке жилья могут стать базой для базы знаний о рынке жилья и экспертной системы для риэлторской группы (фирмы).
Существуют две основные стратегии вывода на множестве правил-продукций:
Обе приведенные стратегии вывода имеют недостатки, достоинства и модификации.
Пример. Если все множество правил-продукций разбито на группы по некоторому признаку (структурировано), то вместо полного или случайного перебора всех правил при прямом и обратном выводе осуществляется целенаправленный переход от одной группы правил к другой. Используются также смешанные стратегии вывода, сочетающие прямой и обратный вывод.
Продукционные модели удобны для представления логических взаимосвязей между фактами, так как они более формализованы и достаточно строгие (теоретические), модульные (продукции явно между собой не связаны, поэтому их можно модифицировать по модульной технологии), соответствуют долговременной памяти человека.
Представление знаний в виде семантической сети является одной из основных моделей представления знаний.
Семантическая сеть - это ориентированная графовая структура, каждая вершина которой отображает некоторое понятие (объект, процесс, ситуацию), а ребра графа соответствуют отношениям типа "это есть", "принадлежать", "быть причиной", "входить в", "состоять из", "быть как" и аналогичным между парами понятий. На семантических сетях используются специальные процедуры вывода: пополнение сети, наследование свойств, поиск по образцу и др.
Пример. Рассмотрим факт: "причиной неритмичной работы предприятия является старое оборудование, а причиной последнего - отсутствие оборотных средств". Семантическая сеть может содержать вершины "оборотные средства", "старое оборудование", соединяемые ребрами - отношениями типа "быть причиной".
Достоинство семантических сетей - наглядность представления знаний, с их помощью удобно представлять причинно-следственные связи между элементами (подсистемами), а также структуру сложных систем. Недостаток таких сетей - сложность вывода, поиска подграфа, соответствующего запросу.
Информация о работе Введение в анализ, синтез и моделирование систем