.
Эвристические алгоритмы. Урок 1. Решающие деревья.
Автор megabax   
14.05.2024 г.
New Page 1

Эвристические алгоритмы. Урок 1. Решающие деревья.

Чтобы смотреть урок полностью, подпишитесь на платный раздел.

В платном разделе статья находится здесь.

Исходники у уроку можно скачать в платном разделе


Для начала определимся, что такое эвристический алгоритм. Стандартное определение звучит так: эвристический алгоритм — это алгоритм решения задачи, правильность которого для всех возможных случаев не доказана, но про который известно, что он даёт достаточно хорошее решение в большинстве случаев. Если говорить простым словами, то это алгоритм, который как-то работает, но непонятно как, непонятно почему и работает не всегда. Может возникнуть вопрос - а для его тогда нужные эти алгоритмы? Отвечу. Хорошо, если у нас есть нужный алгоритм для решения нашей задачи и мы точно знаем, что он работает всегда. Откуда мы это можем знать? а оттуда, что если ранее задача была решена математически, то это математическое решение мы можем запрограммировать и оно будет работать. но как быть, если у нас нет такого решения и мы не представляем, как можно решить данную задачу и возможно ли вообще. А программу написать надо. Вот тут то нам на помощь и приходит эвристика.

Какие бывают эвристические алгоритмы? Перечислю наиболее распространенные из них:

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

...

...

... Графический программа отобразить наши условия вот таким образом:

Эвристические алгоритмы. Урок 1. Решающие деревья.

 

Если залить области решения то мы увидим следующее (желтый для красных точек, серый для зеленых)

Эвристические алгоритмы. Урок 1. Решающие деревья.

 

Сами можете это проверить, задавая различные значения в обработчике кнопочки "Тест".

В данном случае мы "обучили" решающее дерево вручную. Но, хотелось бы, что бы это было автоматически. но об этом речь пойдет уже в следующем уроке.

Последнее обновление ( 14.05.2024 г. )