Как генерировать отрицательные примеры в индуктивном логическом программировании?

Я пытаюсь изучить правила головоломок и настольных игр, наблюдая за человеком, использующим индуктивное логическое программирование. Я использую PROGOL, программу для ILP, написанную на Прологе. В то время как для некоторых игр он может правильно дать мне правила, для других это невозможно из-за отсутствия отрицательных примеров.

Например, в головоломке «Ханойские башни» одно из правил состоит в том, что больший блок не будет помещаться поверх меньшего блока. Это отрицательное правило. Но так как при обучении это событие не происходит, то нет явного отрицательного примера, из которого можно было бы выучить это правило.

Короче говоря, как генерировать негативные примеры в ПИО?




Ответы (1)


Я думаю можно узнать с положительными данными только в проголе?

http://link.springer.com/chapter/10.1007/3-540-63494-0_65

Магглтон, Стивен. «Учимся на положительных данных». Индуктивное логическое программирование. Springer Berlin Heidelberg, 1997. 358–376.

Включите режим обучения только на положительных данных, выполнив это в Progol:

|- установить(только)?

person user27815    schedule 14.04.2014
comment
В Progol вы можете привести отрицательные примеры. doc.ic.ac.uk/~shm/progol_anim_example_in.html показывает отрицательные примеры, например: :- class(t_rex,bird). :- класс(черепаха,птица). - person web_ninja; 15.04.2014
comment
Я имею в виду, что можно настроить Progol так, чтобы вы могли учиться только с положительными результатами. - person user27815; 15.04.2014
comment
Ох, ну ладно. Я проверю это. - person web_ninja; 15.04.2014
comment
Спасибо за совет. Способен наводить цель в посонном режиме. Индуцированное правило on(A,B):-больше(B,A) . - person web_ninja; 16.04.2014