Известия Алтайского государственного университета (Mar 2021)
Особенности программной реализации логических задач на языке Prolog
Abstract
Одним из перспективных направлений использования языка Prolog является решение логических задач. В данном исследовании обозначен подход поиска ответа на основе процедуры генерации состояния и процедуры проверки. Представлены решение логической задачи, которое демонстрирует на практике предлагаемый подход, и способ задания процедуры для генерации состояний. В предложенном примере генерируется битовая цепочка, которая определяет код для буквы в решении прикладной задачи. Построение ответа средствами генерации кода с проверкой позволяет не хранить в базе знаний бинарное дерево всех возможных кодов. Процесс генерации новых состояний можно связать с обучением программы и с динамическим формированием базы знаний. Подход базируется на возможностях программных сред для добавления фактов и правил к уже имеющимся, которые были получены в качестве результатов работы программы либо ее этапов. В данном случае генерирующим правилом является вся программа. Анализ построенных и апробированных процедур динамической генерации состояний и генерации фактов позволяет говорить о применимости такого решения для определенных прикладных задач.
Keywords