Progol

Progol to implementacja programowania w logice indukcyjnej , która łączy odwrotne implikacje [ potrzebna definicja ] z przeszukiwaniem od ogółu do szczegółu za pomocą wykresu udoskonalenia. [ potrzebna definicja ] Został opracowany przez Stephena Muggletona .

Odwrotna konsekwencja jest używana z deklaracjami trybu w celu uzyskania najbardziej szczegółowej klauzuli w języku trybu [ potrzebna definicja ] , która pociąga za sobą dany przykład. Klauzula ta służy do kierowania przeszukiwaniem wykresu uściślającego.

W przeciwieństwie do przeszukiwań systemu wnioskowania o modelu (MIS) Ehuda Shapiro i FOIL J. Rossa Quinlana , przeszukiwanie Progola jest efektywne i ma możliwą do udowodnienia gwarancję zwrócenia rozwiązania o maksymalnej kompresji [ potrzebna definicja ] w przestrzeni poszukiwań. W tym celu przeprowadza dopuszczalne A* , kierując się kompresją, po klauzulach, które obejmują najbardziej szczegółową klauzulę.

Progol radzi sobie z zaszumionymi danymi, używając miary kompresji, aby porównać opis błędów z długością opisu hipotezy. Progol dopuszcza dowolne Prologu jako wiedzę podstawową i dowolne zdania określone jako przykłady. Mimo to testy porównawcze pokazują, że skuteczność Progolu wypada korzystnie w porównaniu z FOIL. [ potrzebne źródło ]