2014-09-11 3 views
0

У меня есть условие, которое ниже, которое сохраняется в базе данных. У каждого условия есть результат. Я показываю доступные результаты в combobox. Когда пользователь выбирает результат, я должен отображать дерево решений для этого результата.Создание дерева решений с условием в строковом формате

Пример:

COND1 AND (COND2 OR COND3 AND COND4 OR (COND5 AND COND6)) 

Условие должно быть, например, возраст> 10, ДОБ IS NOT NULL, Х в таблице (Y), и т.д. мне нужно сначала извлечь все условия отдельно, а затем с помощью AND, OR & Скобки, я должен отображать их как дерево решений в C#. Я планировал использовать Accord.Net. Есть ли более простой доступный, becoz. У Accord.Net есть больше возможностей, которые мне не нужны.

Заранее благодарим за помощь.

ответ

0

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

Есть пара проблем, которые я вижу при создании этих правил.

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

Во-вторых, деревья принятия решений традиционно являются И-только, тогда как условия в вашем списке содержат условия ИЛИ. Хотя теоретически можно преобразовать такие правила в таблицу (see here), я бы заподозрил, что не будет общего инструментария, который сделает то, что вам нужно сделать легко.

Надеюсь, это поможет!

0

это может быть не то, что вам нужно точно

Что бы здесь использовать встроенный скриптовый язык и прочитать фрагменты сценария из базы данных и получить скриптов для их выполнения и возвращать результат

Javascript имеет несколько встроенных двигателей - я использую JINT https://jint.codeplex.com/

или python.net или Lua

Смежные вопросы