Программирование - это просто
Advertisement
Главная
05.05.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Разрабатываем экспертную систему. Урок 14. Улучшаем интерфейс ЭС. Печать E-mail
Автор megabax   
29.05.2021 г.
unit AIObj

Разрабатываем экспертную систему. Урок 14. Улучшаем интерфейс ЭС.

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

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


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

Разрабатываем экспертную систему. Урок 14. Улучшаем интерфейс ЭС.

Начтем с того, что доработаем класс ObjectProperty...

...

...

...Этот другой компонент мы назовем tvProperties. В связи с этим нам предстоит переделать ряд методов главной формы, в частности  tsmiEditProperty_Click (редактировать признак),

        private void tsmiEditProperty_Click(object sender, EventArgs e)

        {

            //если выбран узел, то редактируем его

            if (tvProperties.SelectedNode != null)

            {

                //Получим свойство объекта ЭС, которые мы будем хранить в свойстве Tag узла

                ObjectProperty prop = tvProperties.SelectedNode.Tag as ObjectProperty;

 

                InputString form = new InputString();

                form.Text = "Введите имя признака (свойства)";

                form.tbEdit.Text = prop.name;

                if (form.ShowDialog() == DialogResult.OK)

                {

                    prop.name = form.tbEdit.Text;

                    Library.refresh_properties(tvProperties,data);

                }

 

            }

            else

            {

                MessageBox.Show("Выберите свойство");

            }

        }

...

...

...Это у нас новая форма, ее надо создать. Она предназначена для связывания признаков со входами нейросети:

Разрабатываем экспертную систему. Урок 14. Улучшаем интерфейс ЭС.

На картинке пример для медицинской экспертной системы. Признаки - это симптомы заболеваний, а искомые объекты - это сами болезни...

..

..

...В обработчике этого пункта меню просто откроем диалог редактирования настроек:

        private void tsmiOptions_Click(object sender, EventArgs e)

        {

            OptionsForm form = new OptionsForm(data);

            form.ShowDialog();

        }

...

...

...И все, программа готова. Теперь вы сможете редактировать список признаков в виде дерева. Мы еще хотели создать редактор обучающих матриц и контроль, чтобы пользователь не ввел один и тот же признак дважды (см. прошлый урок). Но этим мы займемся на будущих уроках.

 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги