Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Листинг 19.10. Изучение понятия арки




% Изучение понятия арки

backliteraK isa[X,Y), (X:object], []):-

member С Y, [polygon,convex_poly,stable_poly,unstable_poly,triangle,

rectangle, trapezium, unstable_triangle, hexagon]). % Y - эя блок

% с любой из указанных форм

backliteraK support (X, Y), [X:object, Y:object], []). backliteraK touch(X,Y), [X:object, Y:object], []). backliteral (not C -, [X: object, Y: object], [)):-G = touch(X,Y); G = support(X,Y),

prolog_predicate(isa [X,Y)). prolog^predicate(support(xrY)). prolog_predicate(touch(X,Y)).

prolog__predicate(not G).

ako(polygon, convex_poly>. % Блок выпуклой многоугольной формы

«представляет ссоой одну из разновидностей блоков многоугольной формы ako(convex poly, stable_poly). I Блок устойчивой формы представляет

% собой одну из разновидностей блоков выпуклой многоугольной формы ako< convex_poly, unstablejpoly!. * Блок неустойчивой формы представляет

% СОООЙ одну из разновидностей Блоков выпуклой многоугольной фермы aicof stable poly, triangle), % Блок треугольной формы представляет

% собой одну из разновидностей блоков устойчивой формы ako(stable_poly, rectanple). * Блок прямоугольной формы прерставляет

% собой одну из разновидностей блоков устойчивой формы ako(Stable poly, trapezium). ■ Блок трапециедальной формы представляет

% соОой одну из разновидностей блоков устойчивой формы akot unstable_poly, unstable_triangle). % Блок неустойчивой треугольной формы Ь представляет собой одну из разновидностей блоков неустойчивой формы ako{ unstable poly, hexagon). I Блок шестиугольной формы представляет собой одну КЗ разновидностей блоков неустойчивой формы

akoi rectangle, X):-

member! X, [alr aZ, аЗ, а4,а5,Ы,Ь2,ЬЗ,М, Ь5, cl,c2, сЗ I ). г Прямоугольные блоки


akoC triangle, с4).

ako(unstable_triangle, c5).

isa С zFigurel, FigureZ):-а ко I Figure2, Figure!).


% Блок устойчивой треугольной формы % Блок треугольной формы, перевернутый % основанием вверх

4 Блок Figure 1 предстааляет собой блок Figure2


 


isa(FigO, Fig):-ako{ Figl, FigO), isa(Figl, Fig).

support(al,cl). support Ca3,c3). support (a.4, c4). support(45,c5).


support lbl,cl). support (b3,c3). support(b4, c4). support(b5,c5)■


touch (a3,b3)


st.art_clause[ [arch (X, Y, Z) ] / [X: object, Y: object, Z: object) I-


Глава 19. Индуктивное логическое программирование



ex<arch(al,bl,cl)).

су. (arcri<a4,b4,c4)).

next arch [а2,Ь2,с2)). nex(arch(a3,b3, c3) ). next arch (a5, bS,c5) >. пек(arch{al,b2,cl)). next arch(a2,bl,cl))

Резюме

Индуктивное логическое программирование (ILP) представляет собой сочета­ние логического программирования и машинного обучения.

■ ILP — это метод индуктивного обучения, в котором в качестве языка гипотез используется логика предикатов. Кроме того, ILP представляет собой один из подходов к осуществлению автоматического программирования на примерах.

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

■ В графе усовершенствования предложений узлы соответствуют логическим предложениям, а дуги — отношениям усовершенствования между предложе­ниями.

■ В графе усовершенствования гипотез узлы соответствуют множествам логиче­ских предложений (программам Prolog), а дуги - отношениям усовершенство­вания между гипотезами.

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

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

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

Программа HYPER, разработанная в этой главе, осуществляет логический вы­вод программ Prolog на основании примеров, выполняя поиск среди гипотез в графе усовершенствования.

■ В настоящей главе рассматривались следующие понятия:

 

• индуктивное логическое программирование;

• усовершенствование предложения;

• усовершенствование гипотезы;

• графы усовершенствования предложений или гипотез;

• тэта-классификация;

• автоматическое программирование на примерах.

476 Часть II. Применение языка Prolog в области искусственного интеллекта






Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 425 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Своим успехом я обязана тому, что никогда не оправдывалась и не принимала оправданий от других. © Флоренс Найтингейл
==> читать все изречения...

2351 - | 2156 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.