CLIPS- Как понимать выходные файлы конструкций в c?

Я использую команду constructs-to-c на верхнем уровне для преобразования моих конструкций в код c. На данный момент я знаю, как использовать эти исходные файлы в качестве черных ящиков. Я думаю, что в этих файлах CLIPS реализуют алгоритм RETE, верно? Я хотел бы знать, как я могу понять соглашение об именах и содержимое этих файлов? Я не нашел объяснения этому в справочниках. Это единственное объяснение, которое я нашел к этому моменту, но не t многое понял из второго пункта. Однако я хорошо понимаю алгоритм RETE. Также есть ли способ визуализировать сеть RETE, которую CLIPS создает для моих конструкций? Спасибо


person Salahuddin    schedule 15.06.2017    source источник


Ответы (1)


Файлы, сгенерированные из-за конструкции-в-c, представляют собой просто дамп структур данных C, используемых для представления конструкций CLIPS, поэтому они представляют собой не представление алгоритма rete, а скорее данные, с которыми работает алгоритм. Соглашение об именах, используемое массивами в сгенерированных файлах, предназначено для того, чтобы ссылки указателей из одного массива в другой были короткими и отчетливыми, а не для того, чтобы их было легко читать. Чтобы визуализировать сеть, вам нужно вручную нарисовать соединения самостоятельно. Я бы сказал, что это проще сделать, добавив простые/одиночные правила в CLIPS и пройдясь по коду с помощью отладчика, чтобы увидеть, как обрабатываются утверждения и отказы.

person Gary Riley    schedule 15.06.2017
comment
Спасибо Грей за ответ. Итак, как я могу понять, как CLIPS реализует алгоритм RETE? Я имею в виду альфа- и бета-сети (узлы и память)? Я имею в виду, как CLIPS действительно реализует это в коде. Что является отправной точкой для понимания этого? - person Salahuddin; 15.06.2017
comment
Здесь есть несколько слайдов высокого уровня с некоторыми деталями реализации: sourceforge. net/projects/clipsrules/files/CLIPS/Misc/. Пошаговое выполнение кода с помощью отладчика — лучший способ наблюдать за деталями реализации. - person Gary Riley; 16.06.2017
comment
Большой. Это то, что я искал. Спасибо Гэри - person Salahuddin; 16.06.2017