КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Операции реляционного исчисления
Реляционное исчисление Если реляционная алгебра изучает способы формирования алгебраических отношений и приемы исполнения различных операций над отношениями, то реляционное исчисление изучает логические функции на множестве кортежей отношения: истина логической функции подтверждает верность алгебраического выражения для формирования отношения, а ложь – отрицает ее. По аналогии с исчислением предикатов на множестве кортежей t определим переменные-кортежи (x,y,z) и постоянные–кортежи (a,b,c). Таким образом, если результатом алгебраической операции над отношениями является отношение, то результатом реляционного исчисления является множество кортежей t, каждый из которых определяется истинным значением некоторой логической функции F(t), т.е. r’={t’|F(t), t’Î{t}}, где F(t) – формула предиката (логическая функция); при значении F(t)=и из множества связанных переменных-кортежей t извлекается подмножество свободных переменных-кортежей t’Îr’. Введем понятия элементарной формулы (атома) и формулы в реляционном исчислении: • если r - отношение, а t - кортеж, то r(t) – элементарная формула, • если x и y – переменные-кортежи и дан оператор θ сравнения значений двух (или нескольких) атрибутов Ai и Aj, то (x(Ai)θy(Aj)) - элементарная формула, • иных элементарных формул нет, • любая элементарная формула есть формула, т.е. F=r(t), или F=x(Ai)θkj, или F=x(Ai)θy(Aj), где kj – значение атрибута, • если F1 и F2 -формулы, то (¬F), (F1∨F2), (F1&F2) - также формулы, • если x – переменная-кортеж и F(x) - формула, то ∃x(F(x)) и ∀x(F(x)) - также формулы, • иных формул нет. Здесь формула ∃x(F(x)) утверждает, что существует такое значение кортежа-переменной х, при подстановке которого эта формула становится истинной; формула ∀x(F(x)) утверждает, что при подстановке любого кортежа подходящей арности эта формула становится истинной. Переменная-кортеж является связанной, если ей предшествует квантор по этой же переменной, и свободной - в противном случае. Если существует выражение реляционной алгебры, то существует эквивалентное ему выражение в реляционном исчислении с переменными-кортежами. Операция выборки - имеет вид:r’={t’|∃x(r(x)&(<условия на атрибуты переменного-кортежа>))}. Квантор существования выбирает такие переменные-кортежи, для которых формула (<условия на атрибуты переменного-кортежа>) имеет значение истины. Примеры условий на атрибуты переменного-кортежа: (x(Ai)θki), (x(Ai)θki)and(x(As)θks), (x(Ai)θki)or(x(As)θks), (x(Ai)θx(As)). Например, дано отношение «учебный_план1»:
1) Определить формы занятий и формы отчетности по информатике и электронике. Решение: r’={t’|$x(учебный_план1(х)&(x(дисциплина)=‘информатика’or (дисциплина)= ‘электроника’))}. Результат:
2) Определить дисциплины, для которых число часов лекций превышает число часов л/з, а также формы занятий и формы отчетности для них. Решение: r’={t’|$x(учебный_план1(х)&(x(лекции)>x(л/з)))}. Результат:
Операция проекции - имеет вид: r’={t’|∀x(r(x)&(t’[1]=x(Ai))&(t’[2]=x(Aj))&…&(t[k]= x(An)))}, где [] – место атрибута Ai,Aj,…An в кортеже t’. Квантор всеобщности использует в отношении-результате все кортежи исходного отношения, но не все его компоненты-атрибуты. Эта операция позволяет также переупорядочить расположение атрибутов в кортеже. Например, по отношению учебный_план1 определить формы отчетности по каждой дисциплине. Решение: r’={t’|"x(учебный_план1(х)&(t’[1]=x(дисциплина))&(t’[2]=x(отчетность)))}. Результат:
Операция объединения – имеет вид r’={t’|∀x∀y(r1(x)&r2(y)&((t’=x)∨(t’=y)))}. Квантор всеобщности объединяет в отношении r’ все кортежи отношений r1(x) и r2(y). Если атрибуты кортежей не упорядочены, то атрибуты кортежа второго отношения должны быть упорядочены так же, как у кортежей первого отношения (см. операцию проекции). Например, дано отношение учебный_план2:
Выполнить объединение данного отношения и отношения учебный_план1. Решение: r’={t’|∀x∀y(учебный_план1(x)&учебный_план2(y)&((t’=x)∨(t’=y)))}. Результат:
Операция разности – имеет вид: r’={t’|∃x∃y(r1(x)&r2(y)&(t’=x)&¬(t’=y))}. Кванторы существования накладывают условия для извлечения только таких кортежей первого отношения, которых нет во втором. Например, даны отношения учебный_план1 и учебный_план2. Определить перечень дисциплин, отсутствующих в отношении учебный_план2. Решение: r’={t’|$x$y(учебный_план1(x) &учебный_план2(y)&(t’=x)&Ø(t’=y))}. Результат:
Операция пересечения – имеет вид: r’={t’|∃x∃y(r1(x)&r2(y)&(t’=x)&(t’=y))}. Кванторы существования позволяют выбрать одинаковые кортежи в первом и втором отношениях. Например, даны отношения учебный_план1 и учебный_план2. Определить перечень дисциплин, общих для обоих отношений. Решение: r’={t’|$x$y(учебный_план1(x)&учебный_план2(y)&(t’=x)&(t’=y))}. Результат:
Операция прямого произведения – имеет вид: r’={t’|∀x∀y(r1(x)&r2(y)&(t’[1]= x[1])&(t’[2]= x[2])&...&(t’[n1]=x[n1])&(t’[n1+1]=y[1])&(t’[n1+2]=y[2]) &...&(t’[n1+n2]=y[n2]))}, где [] – место атрибута в кортеже t’,x или y. Кванторы всеобщности позволяют приписать каждый кортеж второго отношения к каждому кортежу первого отношения (операция конкатенации). Например, даны отношения учебный_план1 и преподаватель1:
Определить по каждой дисциплине из учебного плана список возможных преподавателей: r’={t’|∀x∀y(учебный_план1(x)&преподаватель1(y)&(t’[1]=x[1])&(t’[2]=x[2])&(t’[3]=x[3])&(t’[4]=х[4])&(t’[5]=x[5]) &(t’[6]=y[1])&(t’[7]= y[2])&(t’[8]=y[3]))}. Результат:
Операция естественного соединения – имеет вид: r’={t’|∃x∃y(r1(x)&r2(y)&(x(Ai)=y(Ai))& (t’[1]=x[1])&…&(t’[n1]= x[n1])&(t’[n1+1]=y[1])& (t’[n1+2]=y[2])&...&(t’[n1+n2-1] = y[n2]))}. Кванторы существования обусловлены выбором переменных-кортежей, имеющих одинаковые значения одноименных атрибутов двух отношений. Например, даны отношения учебный_план2 и преподаватель2:
Определить, какие преподаватели ведут дисциплины из учебного плана, и указать характеристики этих дисциплин. Решение: r’={t’|∃x∃y(преподаватель2(x)&учебный_план1(y)&(х(Дисциплина)=y(Дисциплина))& (t’[1]=x[1])& (t’[2]=x[2])&(t’[3]=х[3])& (t’[4]=y[2])&(t’[5]=y[3])& (t’[6]=y[4])&(t’[7]=y[5]))}. Результат:
Операция θ -соединения - имеет вид: r’={t’|∃x∃y(r1(x)&r2(y)&<условие>& (t’[1]=x[1])&...&(t’[i]=x[i])&…&(t’[n1]=x[n1])&(t’[n1+1]=y[1])&…& (t’[n1+j]=y[j])&... &(t’[n1+n2]=y[n2]))}. Примеры условий: (x(Ai)θy(f(Ai))), (x(f(A))θy(Ai)), ((x(Ai)θy(Ai))and(x(Au)θy(Av))), ((x(Ai)θy(Ai))or(x(Au)θy(Av))). Например, даны отношения учебный_план2 и преподаватель3:
Определить преподавателей, которые могут вести ту или иную дисциплину в соответствии с нагрузкой, т.е. когда общее число часов по дисциплине не превышает индивидуальную нагрузку преподавателя; в ответе указать все данные из исходных таблиц как по дисциплинам, так и по преподавателям. Решение: r’={t’|∃x∃y(преподаватель3(x)&учебный_план2(y)&(x(Нагрузка)³(y(Лекции)+y(Л/з)+y(П/з)))&(t’[1]=x[1])&(t’[2]=x[2])&(t’[3]=x[3])&(t’[4]=y[1])&(t’[5]=y[2])&(t’[6]=y[3])&(t’[7]=y[4])&(t’[8]=y[5]))}. Результат:
5. Нечёткая логика Нечёткая логика была предложена американским профессором Л. Заде, который для оценки частичной истинности или частичной ложности высказывания ввел множество рациональных чисел на интервале [0,1]. Например, дано высказывание «Сидоров имеет рост 178см.» и дан предикат Р(x):=«x – высокий человек». Спрашивается: «Сидоров – высокий человек?». Некто установил значение истины высказывания Р(Сидоров)=0,75. Это означает, что высказывание «Сидоров – высокий человек» истинно на три четверти. Точно так же оно на одну четверть ложно. Такие высказывания не дают числовой характеристики объекта, но с учетом опыта специалиста и описания сопутствующих фактов дают оценку истинности высказывания «быть высоким человеком». Слабым моментом нечеткой логики является задание значения истинности на интервале [0,1]. Это - задача высококвалифицированных специалистов в конкретной отрасли знаний - экспертов. И, как правило, при разработке экспертных систем используют опыт многих специалистов. 5.1. Нечёткие множества В основе нечеткой логики лежит понятие нечеткого множества. Пусть дано универсальное множество U. Если на этом множестве задать подмножество X’, характеристическое свойство которого недостаточно четко определено, то принадлежность элементов u∈U множеству X’ может быть описана функцией принадлежности - μX’(u) как субъективная мера. Значение функции μX’(u) называют степенью принадлежности и определяют на интервале [0, 1], т.е. μX’ (ui): U →[0, 1]. Тогда модель нечеткого множества X’ определяется следующим образом: X’={μX’(u1)/u1, μX’(u2)/u2,..., μX’(un)/un}, где μX’(ui)∈[0,1] – степень принадлежности каждого элемента ui∈U нечёткому множеству X’: μX’(ui): U →[0, 1], U – универсальное множество, μX’(u) – функция принадлежности. Связь между четким и нечетким множествами выражается следующими положениями: 1) носителем нечёткого множества X’ являются элементы четкого подмножества X⊆U, т. е. X={u1, u2,...,un}⊆U, если для ui∈X μX’(ui)>0, 2) если для ui∈U имеем μX’(ui)=1, то элемент ui четко принадлежит множеству X’, 3) если для ui∈U имеем μX’(ui)=0, то элемент ui четко не принадлежит множеству X’, 4) если все элементы носителя X имеют значение μX’(ui)=1, то дано четкое подмножество X’=X множества U, 5) если все элементы носителя X имеют значение μX’(ui)=0, то дано пустое множество, т.е. X’=∅. Например, дано 10 предметов. Требуется сформировать множество подмножеств, удовлетворяющих предикату «несколько предметов». Иначе, надо определить нечеткое понятие «несколько предметов». Решение: Пусть U={1, 2, 3, …, 10} – универсальное множество. Эксперт, пользуясь своим знанием языка, так определил понятие «несколько предметов» - Х’: X’={0.6/3, 0.8/4, 0.8/5, 0.8/6, 0.6/7, 0.6/8, 0.6/9}, т.е. подмножества из 3, 4 и т.д. (до 9 включительно) предметов могут соответствовать понятию «несколько предметов» с определенной в формуле степенью принадлежности. Для подмножеств, содержащих один, два или все 10 предметов, эксперт определил степень принадлежности, равную нулю. Носитель нечеткого множества X’ – четкое множество: X={3,4,5,6,7,8,9}. 5.2. Нечёткая алгебра Основана на операциях над нечеткими множествами, особенностью которых является определение степени принадлежности результирующему нечеткому множеству каждого элемента универсального множества. Пусть Т’(U)={X’1,X’2,…} – множество нечетких подмножеств универсального множества U, F={Ø,È,Ç} – множество операторов. Тогда нечеткая алгебра определяется как: A=<T’(U), F, m(ui)>, где m(ui) – функция принадлежности элементов (ui) универсального множества U нечеткому подмножеству X’. Определим синтаксические правила для формул нечеткой алгебры: 1) любое нечеткое подмножество универсального множества есть элементарная формула, т.е. X’i=F’i; 2) других элементарных формул нет; 3) любая элементарная формула есть формула, 4) если F’1 и F’2 – формулы, то ØF’, (F’1ÈF’2), (F’1ÇF’2) – также формулы; 5) других формул нет.
Дата добавления: 2014-01-04; Просмотров: 850; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |