Разработка экспертной системы по подбору кадров на основе нейронной сети
Описание экспертной системы по подбору кадров. Требования к функциональным характеристикам программы. Состав и параметры технических средств ЭВМ. Структура входных данных. Руководство программиста и пользователя. Тестирование программного средства.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 13.11.2016 |
Размер файла | 897,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
22
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
Высшего профессионального образования
"Сибирский государственный аэрокосмический университет имени академика М.Ф. Решетнева"
Институт информатики и телекоммуникаций
Кафедра информатики и вычислительной техники
Курсовой проект
по дисциплине: Интеллектуальные системы и технологии
на тему: "Разработка экспертной системы по подбору кадров на основе нейронной сети"
Выполнил: ст-т гр. БИСЗУ 13-01
Бобков А.И.
Проверил: руководитель работы
Дамов М.В.
Красноярск, 2016
Содержание
- Введение
- 1. Описание экспертной системы по подбору кадров
- 1.1 Описание для разработки постановка задачи
- 1.2 Назначение разработки
- 1.3 Требования к надежности
- 1.4 Требования к программе
- 1.5 Требование к функциональным характеристикам
- 1.6 Требование к составу и параметрам технических средств ЭВМ
- 2. Разработка экспертной системы по подбору кадров
- 2.1 Структура входных данных
- 2.2 Руководство программиста
- 2.3 Руководство пользователя
- 2.4 Тестирование программного средства
- Заключение
- Список используемой литературы
- Приложение
Введение
Все чаще речь идет не о точечном, индивидуальном отборе, а о массовом рекрутменте, когда нужно за короткий срок подобрать множество кандидатов одновременно. И сделать это не только быстро, но и максимально эффективно (да еще и с минимальными затратами). Представьте, сколько трудностей необходимо преодолеть, чтобы реализовать такой большой проект. Речь об управлении огромным объемом информации, множеством ресурсов и каналов. Не каждой компании, кадровой службе по плечу такая задача. И не каждая система, программное обеспечение по подбору персонала справится с этим. Зачастую у кадровиков просто нет необходимого инструментария, опыта и знаний для осуществления подобного рода проектов.
Экспертная система - это система, которая объединяет возможности компьютера и знания вместе с опытом эксперта в такой форме, что может дать разумный совет или осуществить разумное решение поставленной задачи. К дополнительному свойству экспертной системы можно отнести способность пояснять ход своих рассуждений в понятной для пользователя форме.
Для этого необходимо разработать программное средство, то есть "Экспертную систему по подбору кадров с использованием нейронной сети".
Целью данной курсовой работы является изучение системы работы с кадровым учетом по отбору кандидатов на ту или иную должность.
Выгоды и преимущества автоматизации подбора сотрудников с помощью "Экспертной системы":
· Сокращение трудозатрат, связанных с вводом информации;
· Убыстрение поиска и привлечения кандидатов.
· Постоянный рост базы.
· Упрощенный учет, исключение потери данных.
подбор кадр экспертная система
· Качественная, полноценная проработка информации о требованиях на вакансию.
1. Описание экспертной системы по подбору кадров
1.1 Описание для разработки постановка задачи
Как правило, экспертные системы создаются для решения практических задач в некоторых узкоспециализированных областях, где большую роль играют знания специалистов. Экспертные системы были первыми разработками, которые смогли привлечь большое внимание к результатам исследований в области искусственного интеллекта.
Экспертные системы имеют одно большое отличие от других систем искусственного интеллекта: они не предназначены для решения каких-то универсальных задач, экспертные системы предназначены для качественного решения задач в определенной разработчиками области, в редких случаях - областях.
Основанием разработки программы является выполнение курсовой работы по дисциплине "Интеллектуальные системы и технологии" на примере "Экспертной системы по подбору персонала с использованием нейронной сети". Программа должна быть разработана для оптимизации подбора кадров.
1.2 Назначение разработки
Экспертная система предназначена для хранения и обработки сведений о подборе кадрового персонала. Программное средство "Экспертная система по подбору кадров на основе нейронной сети" может существенно упростить задачу по поиску с помощью характеристика объекта информации о самом объекте, который имеет эти характеристики. Данное программное средство разработано не только для кадрового учета она также имеет возможность применяться и в других сферах деятельности.
1.3 Требования к надежности
Надежность системы в целом зависит от надежности используемой операционной системы.
Экспертная система должна за приемлемое время найти решение, которое было бы не хуже, чем то, которое может предложить специалист в этой предметной области.
1.4 Требования к программе
Основным требованием к "Экспертной системе по подбору персонала на основе нейронной сети" является функция по подбору персонала с помощью фактора.
1.5 Требование к функциональным характеристикам
Программа должна обеспечивать возможность выполнения перечисленных ниже функций:
· Изменять характеристика объекта и сам объект;
· Добавлять/изменять, удалять характеристики объекта и сам объект;
· Сохранять/загружать базу хранения информации об объекте;
· Осуществлять обучение сети;
· Выполнение вопроса по подбору кадров.
1.6 Требование к составу и параметрам технических средств ЭВМ
В качестве компьютера должен использоваться компьютер с характеристиками, не ниже следующих:
· процессор Intel Pentium 1000 МГц;
· объем оперативной памяти - 512 Мб;
· объем HDD - 30 Гб.
В качестве операционных систем может использоваться:
· Microsoft Windows XP и выше.
2. Разработка экспертной системы по подбору кадров
2.1 Структура входных данных
Входные данные программы должны быть организованы в виде вводимого в специальную форму текста или сохранение/загрузка файла, соответствующего определенному шаблону. Данные, вводимые вручную, записываются в соответствующее поле.
Что подразумевается под словом желаемый результат? Это факт, введенный во время обучения нейронной сети "Экспертной системы".
Если мы задали значение факт, что высшее образование, и знание языков программирования. С++, Delphi, 1C: Предприятие, C# - это программист, то это значит, что единицы сигнала падают на входы, закрепленные за признаками "высшее образование" и "знание языков программирования. С++, Delphi, 1C: Предприятие, C#" и нули на остальные входы, а желаемый результат реакции будет равен 1. Если для данных свойств имеется факт, что это не наш объект - то желаемый результат реакции будет равен 0.
В программном средстве "Экспертная система по подбору персонала с помощью нейронной сети" для каждого объекта предусмотрен свой нейрон. Например, когда вы добавляете новый объект, создается новый экземпляр класса RecognizableObject, а в нем создается и экземпляр класса Neuron.
Для реализации программного средства "Экспертная система по подбору кадров на основе нейронной сети" была спроектирована нейронная сеть, которая имеет два параметра:
- характеристика объекта;
- наименование объекта.
Ниже изображено окно ввода признака (свойства) объекта.
Рисунок 1 - Ввод имени признака (свойства) объекта
Используемый класс нейросети изображен ниже:
// / Объявление класса нейрона
[Serializable]
public class Neuron
// / Входные данные нейросети
public List<double> inputs;
Ниже изображен рисунок 2, на котором видно окно ввода имени объекта при вводе и редактировании.
Рисунок 2 - Ввод имени объекта
2.2 Руководство программиста
Программа состоит из файлов следующих типов:
· ExpertSystemKadru. exs - файл базы данных экспертной системы;
· Neuron. cs - модуль нейронной сети;
· FuncTranc. cs - передаточная функция;
· ExpertSystemKadru. csproj - главный файл проекта;
После запуска файла ExpertSystem. exe на экране появится окно главного проекта.
Рисунок 3 - Окно программы "Экспертная система по подбору кадров на основе нейронной сети"
Ниже изображен рисунок 4, вопрос "Экспертной системе по подбору кадров" далее необходимо выбрать признак объекта который необходимо идентифицировать.
Рисунок 4 - Окно вопроса "Экспертная система по подбору кадров на основе нейронной сети"
Ниже изображен рисунок 5, вывод ответа на вопрос "Экспертной системе по подбору кадров" с помощью нейронной сети мы подали на вход два значения получили ответ, на определенную должность имеющий этот признак в данном случае "Специалист по подбору персонала" содержит характеристику "Высшее образование, Знание 1С: Предприятие Зарплата и кадры государственного учреждения редакция 2-3". Ответ на выходе нейронной сети подал верный сигнал.
Рисунок 5 - Окно вывода результата с помощью нейронной сети "Экспертная система по подбору кадров на основе нейронной сети"
Основная задача экспертной системы - по заданному набору признаков распознать объект.
2.3 Руководство пользователя
В ходе курсового проектирования была разработана "Экспертная система по подбору персонала на основе нейронной сети". Руководство пользователя по работе с данным программным средством представлено в таблице 1.
Таблица 1 - Действия пользователя при работе с программой.
Операция |
Действия пользователя |
Действие программы |
|
Запуск программы |
ExpertSystem. exe |
Появится главное окно программы |
|
Выбор раздела - Файл |
Нажатие на кнопку - Загрузить |
Необходимо указать файл сохраненной базы "Экспертной системы по подбору персонала" |
|
Нажатие на кнопку - Сохранить |
Необходимо указать имя файла "Экспертной системы по подбору персонала" для сохранения базовой информации |
||
Нажать на кнопку - Выход |
Выход из программы "Экспертной системы по подбору персонала" |
||
Категория - Свойства |
Нажать на кнопку-Добавить свойство |
Добавляет в список поля свойства для объектов |
|
Нажатие на кнопку - Редактировать свойство |
Редактирует выбранное свойство |
||
Нажатие на кнопку - Удалить свойство |
Удаляет в том, случае если нет списка объектов, иначе запрет на удаление свойства |
||
Категория - Объекты |
Нажать на кнопку - добавить объект |
Добавляет в список поля объект |
|
Нажать на кнопку - редактировать объект |
Редактирует выбранный объект |
||
Нажатие на кнопку - удалить объект |
Удаляет данный объект |
||
Продолжение таблицы 1 - Действия пользователя при работе с программой. |
|||
1 |
2 |
3 |
|
Произвести обучение по сети |
Нажатие на кнопку - Ввод факторов о кадрах |
Выбор объекта в качестве входного параметра и создание фактора для этого объекта с выбором свойства для подбора персонала |
|
Выполнить вопрос |
Нажатие на кнопку - Выполнить вопрос |
Экспертная система находит объект по совокупности признаков |
|
О программе |
Нажать кнопку - об Авторе |
Высвечивается информация о разработчике |
Когда пользователь выполняет (задает) вопрос Экспертной системе, выбирая нужные признаки, на соответствующие входы подаются сигналы 1, а на остальные, невыбранные - 0. При чем у каждого нейрона. Если выходной сигнал будет равен 1 - это наш объект (должность наша), если 0 то нет (не знает объект или должность). Может быть и так, что заданным признакам соответствует несколько объектов. Программа сообщит об этом, может произойти так, что и ни одного. Тогда "Экспертная система" ответит: "Я не знаю, что это за вакансия".
2.4 Тестирование программного средства
В целом "Экспертная система по подбору кадрового" работает хорошо, хотя возможны и ложные срабатывания. Выход решения с такими ложными срабатываниями заключатся в том, что бы в процессе обучения задать экспертной системе больше фактов, особенно, касающихся факта, что "Это не тот объект". Например, наряду с фактами что "Высшее образование и знание 1С - это Бухгалтер" полезно задать факты, что "стаж вождения 3 года и высшее образование - это Бухгалтер", "знание языков программирования С++, С# - это не огурец" кислый и оранжевый - это не Бухгалтер".
Рисунок 6 - Окно вывода факта "Экспертная система по подбору кадров на основе нейронной сети"
Ниже изображен рисунок 7 выполнение вопроса в "Экспертной системе".
Рисунок 7 - Окно вывода факта "Экспертная система по подбору кадров на основе нейронной сети"
Экспертная система реализована в виде отдельных форм: главная форма, формы редактирования и обучения сети, а также форма принятия решений экспертной системы. Форма принятия решений использует созданную базу знаний для поиска конкретной информации и на тот или иной объект, чтобы его отыскать.
Заключение
В результате выполнения курсовой работы были изучены основные современные принципы построения экспертных систем в различных областях, изучены структура и принципы функционирования экспертных систем, их классификация и характеристики.
Далее была проанализирована возможность построения экспертной системы для решения задачи подбора персонала, а при помощи экспертной системы на основе нейронной сети. Было реализовано развернутое техническое задание на проектирование такой системы.
В качестве программной системы реализации экспертной системы выбрана система Visual Studio Professional 2010 в качестве языка программирования C#.
Данная система выбрана как наиболее подходящая с точки зрения реализации принципов объектно-ориентированного программирования. Была создана структура классов, разработаны формы и их программные модули.
Разработанная система может быть использована в качестве системы по подбору персонала и др.
Список используемой литературы
1. Агуров П.В. C#. Сборник рецептов. 2007, 429 стр. djvu;
2. Ишкова Э.А. Самоучитель C#. Начала программирования 2013 год;
3. Уотсон Карли и др. C# 2008 Базовый курс. 2009, 1211 стр. djvu;
4. Как построить свою экспертную систему: Нейлор К. 1991 год;
5. Хайкин С. Нейронные сети: Полный курс 2006 год.
Приложение
Приложение А
ЛИСТИНГ ПРОГРАММЫ
Модуль - Neuron
using System;
using System. Collections. Generic;
namespace ExpertSystem
{
// / Объявление класса нейрона
[Serializable]
public class Neuron
{
// / Генератор случайных чисел
private static Random rnd = new Random ();
// / Входные данные нейросети
public List<double> inputs;
// / Выходной результат нейросети
public double output;
// / Весовые коэффициенты нейросети
public List<double> weights;
// / Передатчоная функция
public FuncTranc trans;
// / Коэффициент обучения нейронной сети
public double mu;
// / Конструктор по количеству весов
// /Количество весов
// /Передаточная функция
public Neuron (int a_count, FuncTranc a_trans)
{
inputs = new List<double> ();
weights = new List<double> ();
for (int i = 0; i < a_count; i++)
{
inputs. Add (0);
weights. Add (rnd. NextDouble () * 2 - 1);
}
trans = a_trans;
}
// / Рассчитать нейрон
public void compute ()
{
double res = 0;
for (int i = 0; i < weights. Count; i++)
{
res += (weights [i] * inputs [i]);
}
output = trans.compute (res);
}
// / Обучение нейрона
// / Желаемая реакция
// / Входной вектор
public void study (double t, List<double> a_inputs)
{
double y = output;
double dty = t - y;
trans. study (mu, dty);
for (int i = 0; i < weights. Count; i++)
{
weights [i] = weights [i] + mu * dty * a_inputs [i];
}
}
// / Установить входные параметры
// /
// / Список чисел
public void set_incomes (List<double> a_incomes)
{
if (a_incomes. Count! = inputs. Count) throw new Exception ("Neuron: set_incomes: Указано неверное число входных параметров!");
int cn = a_incomes. Count;
for (int i = 0; i < cn; i++)
{
inputs [i] = a_incomes [i];
}
}
}
}
Модуль - передаточной функции FuncTranc
namespace ExpertSystem
{ // / Класс констант кодов передаточной функции
public static class TransFuncConstId
{
// / Пороговое значение
public const int ThresholdId = 1;
// / Трехуровневая передаточная функция
public const int ThreeLevelsId = 2;
// / Сигмоидная передаточная функция
public const int SignFuncId = 3;
// / Линейная функция с насыщением
public const int LinearSaturationId = 4;
// / Гаусоовская передаточная функция
public const int GaussFuncId = 5;
// / Передаточная функция "Как есть"
public const int AsisId = 6;
// / Количество видов передаточных функций
public const int TransFuctionCount = 6;
}
// / Интерфейс передаточной функции
public interface FuncTranc
{
// / Проверить эквивалентность передаточной функции
// / Другой объект передаточной функции
// / true - эквивалентны, false - разные
bool is_equal (FuncTranc a_func);
// / Рассчитать передатчоную функцию
// / Передаваемое значение
// / Результат расчета
double compute (double a_income);
// / Создать самостятельную копию передаточной функции
// / Самостоятельная копия
FuncTranc clone ();
// / Идентифкационный код передаточной функции
int id {get; }
// /Проверка корректности передаточной функции
// /true - корректная, false - некорректная</returns>
bool valid (double min, double max);
// / Обучение передаточной функции
// / Коэффицент обучения
// / Разница между желаемым и реальным исходом
void study (double mu, double dty);
}}
Размещено на Allbest.ru
Подобные документы
Описание входной и выходной информации. Требования к комплексу технических средств и к интерфейсу конечного пользователя. Разработка форм представления входных и выходных данных. Проектирование программных модулей. Руководство пользователя и программиста.
курсовая работа [421,6 K], добавлен 27.06.2015Общая характеристика киноиндустрии как предметной области работы. Разработка базы данных и дерева вопросов для получения информации для выбора фильма. Программная реализация экспертной системы. Тестирование системы и создание руководства пользователя.
курсовая работа [1,9 M], добавлен 19.05.2014Особенности алгоритмов, критерии качества. Создание и применение программного продукта на языке Delphi. Тип операционной системы. Внутренняя структура программного продукта. Руководство пользователя и программиста, расчет себестоимости и цены программы.
дипломная работа [1,5 M], добавлен 12.06.2009Технико-экономические показатели деятельности организации. Требования к информационной и программной совместимости. Описание нормативно-справочной информации. Требования к функциональным характеристикам. Руководство пользователя и программиста.
отчет по практике [43,4 K], добавлен 23.02.2011Базовые принципы правового регулирования трудовых отношений. Проектирование автоматизированной информационной системы "Отдел кадров", программная реализация, тестирование. Состав базы данных, методы анализа надежности системы, руководство пользователя.
дипломная работа [3,6 M], добавлен 11.03.2010Структура типичной экспертной системы. База данных (рабочая память), её назначение. Функция getsport как экземпляр класса cSport. Алгоритм работы экспертной системы. Реализация пользовательского интерфейса. Результаты тестирования системы пользователем.
курсовая работа [1018,8 K], добавлен 13.06.2012Проектирование программного модуля: сбор исходных материалов; описание входных и выходных данных; выбор программного обеспечения. Описание типов данных и реализация интерфейса программы. Тестирование программного модуля и разработка справочной системы.
курсовая работа [81,7 K], добавлен 18.08.2014Разработка экспертной системы по выбору языка программирования для данного программного обеспечения. Выбор и обоснование механизма вывода решения. Дерево базы знаний экспертной системы. Программа формирования основного меню, руководство пользователя.
курсовая работа [1,9 M], добавлен 15.08.2012Разработка программы, позволяющей реализовать шифрование и дешифрование текстового файла методом замены и методом перестановки. Требования к функциональным характеристикам, надежности, составу и параметрам технических средств ПО. Интерфейс пользователя.
курсовая работа [19,0 K], добавлен 30.04.2011Создание интеллектуальной экспертной системы по подбору комплектующих для стационарного компьютера. Медицина как пример экспертной системы с использованием метода Криса-Нейлора. Извлечение знаний, их структурирование, представление, стратегия вывода.
контрольная работа [827,5 K], добавлен 14.12.2012