будет возможно подключение к сети одного миллиона гаджетов.
Использованные источники:
1. Росляков, А.В. Сети связи: учеб. пособие по дисциплине «Сети связи и системы коммутации». - Самара: ФГБОУ ВО ПГУТИ, 2017., с. 9-10
2. https://setphone.ru/stati/standarty-sotovyx-setei-ot- 1g-do-5g
УДК 004.9
Карпенко Т.А. студент Игрунова С. В., к.т.н.
доцент НИУ «БелГУ» РФ, г. Белгород
РЕАЛИЗАЦИЯ АЛГОРИТМА МЕТОДА ИЗВЛЕЧЕНИЯ ЗНАНИЙ
«ДИАЛОГ»
Аннотация: в данной статье описана программная реализация алгоритма метода извлечения знаний «диалог», выбор средств программирования.
Ключевые слова: метод извлечения знаний, диалог, чат-бот, база знаний.
Karpenko T.A. student Igrunova S.V., Ph.D., Associate Professor National University of BelSU Russian Federation, Belgorod REALIZATION OF THE ALGORITHM OF METHOD OF EXTRACTION OF KNOWLEDGE "DIALOG"
Abstract: This article describes the software implementation of the algorithm for extracting knowledge "dialogue", the choice of programming tools.
Keywords: method of knowledge extraction, dialogue, chatterbot, knowledge base.
Необходимо написать программный код, реализующий блок-схему работы программы в режиме диалога. Сам диалог будет реализован в виде чат-бота.
Чат-бот (англ. chatterbot) - это компьютерная программа-собеседник, которая создана для имитации речевого поведения человека при общении с одним или несколькими собеседниками. Чат-бот может обладать своего рода искусственным интеллектом и способностью к обучению. А может быть простым эмулятором, способным адекватно реагировать на определённые слова и фразы.
Данный чат-бот реализован с среде разработки IntelliJ IDEA на языке программирования Java.
IntelliJ IDEA - интегрированная среда разработки программного
обеспечения на многих языках программирования, в частности Java, JavaScript, Python, разработанная компанией JetBrains[19].
Java представляет собой объектно-ориентированный язык программирования и платформу вычислений, которая была впервые выпущена Sun Microsystems в 1995 г. Существует множество приложений и веб-сайтов, которые не работают при отсутствии установленной Java, и с каждым днем число таких веб-сайтов и приложений увеличивается[19].
Первым шагом необходимо реализовать интерфейсную оболочку. Для этого импортируем три библиотеки: java.awt, java.awt.event, javax.swing, они необходимы для того чтобы работала графика.
На языке Java все программы являются классами. В каждом классе Java может существовать метод main, который объявляется следующим образом:
public static void main(String[] args) { new SimpleChatBot(); }
Этот метод срабатывает тогда, когда программа запускается.
Для отображения формы используем константы, каждая из которых начинается со слова final, то есть это объявление переменной которая не будет изменяться. Final string - объявление неизменяемой строки, final int -объявление неизменяемой целочисленной переменной.
final String TITLE OF PROGRAM = ' =r: simple chatbot"; — - WWWWWW»
final int 5 TART_ L C-CAll ON = 200;
final int WIN DOWJilDIH = 350;
final int WIN DOW_HEIGHT = 450;
final String СЕБА1 = "AI";
final String 3:::_ENIER = "Enter";
Рисунок 3 - Объявление констант
Для того что бы работала кнопка отправки сообщения на форме, необходимо реализовать следующий программный код.
public void acticniPerformed(ActicnEvent event) { if (message . getlext () . trim() . lengthf) > 0) { try {
S t yledDocume nt dc c = di a1c gue.ge t S t y 1edDocument();
doc. insert String (doc. getLengthf) , str: message . getlext (| +■ "\n",
new SimpleAttributeSet()); doc.insertString(doc.getLength(),
str IIILE_OF_FROGRAM. substring (0, 9) +■
sbct.saylnfieturn(message.getlext(), ai.isSelectedf)) +■ "\n", botStyle); } catch(Exception e) { }
}
message.setlext("");
me33age. reguestFocusInWindowO;
}
Рисунок 4 - Программный код для работы кнопки
Далее для работы самого диалога необходимо прописать следующий программный код (рис. 3.5)
final MapiString, String>
= new HaaliHapiString, String;-О {{
putfhello™, "Здравствуйте, рад Вас видеть. ДаЕай пообщаемся? Что Вы предпочитаете пить?™); put("ccffe", "Извиняюсь, но с данной темой н не работаю. Если хотите продолжить общение напишите про чай™); put("who", "Какой Ваш любимей тип чая?"); put("li5t"p "Что чаше всего Вы добавляете в чай?™);
Рисунок 5 - Формирование вопросов
final Map<String, Strings- PATTKRli5_FOE_JkliALY515 = new HaaliMapiString, String>() {{ ff hello
^ut ("призет ", "hello"); put("здорово", "hello"); put("здразотзуй", "hello");
ff who
put (|глга5лю\Лз .*чай "who"); put ("чай", "who") ; ff ccfie
ААНЧАНЧАНЧАЛ
put (,глю5лю\\з , *ко£е ", "coffe"); put("Ko£e". "coffe");
Рисунок 6 - Формирование ответов
Для того, чтобы программа работала необходимо создать базу данных, из которых и будут браться вопросы и возможные варианты ответа. База данных создаваться будет в программной среде Open Server.
База данных называется «dialog» с таблица «question» и «answears». Таблица вопросов представлена на рисунке 7.
w id question
□ J? * X 1 Здравствуйте, рад Вас видеть. Давай пообщаемся? lt..
J? * X 2 Извиняюсь, но с данной темой я не работаю. Если хо...
□ J * X 3 Какой Ваш любимый тип чая?
J? * X 4 Что чаще всего Вы добавляете в чай?
□ J * X 5 Какую фасовку чая Вы чаще всего выбираете?
J? * X 6 Какой вид листового чая Вы предпочитаете?
□ J * X 7 Какая форма пакетиков Вам больше нравится?
J? * X 0 В какой упаковке покупаете чай?
□ J * X 9 Какой страны производителя чая Вы предпочитаете"7
J? * X 10 Какой китайский производитель чая Вам больше всего...
□ J * X 11 Какой российский производитель чая Вам больше всег...
J? * X 12 К какой ценовой категории относится Ваш чай?
□ # 5- X 13 Что ж спасибо за беседу :) Хотите вывести отчет?
# 5- X 14 До свидания. Надеюсь, ещё увидимся.
□ J 5- X 15 Вашим предпочтениям соответствует китайский пакети...
5- X 16 Вашим предпочтениям соответствует листовой чай Gre...
Рисунок 7 - Вид вопросов в таблице
На следующем рисунке представлена таблица возможных вариантов ответа эксперта.
ж id variants id_parent
□ J? X 1 привет, здравствуй 1
X 2 люблю кофе. кофе, люблю воду. вода, воду 2
□ J X 3 чай, люблю чай 3
J? X 4 черный, зеленый 4
□ J? X 5 лимон, мята, мяту, имбирь. 5
□ J? X s заваривать в листьях, завариваю в листьях 6
□ J X 7 завариваю в пакетиках, пакетированный 7
J? X 3 мешочки, пирамидки 3
□ J X 9 крупнолистовой, мелколистовой э
□ J? X 10 картонной, картонная, жестянной 10
□ J X 11 китай 11
s X 12 россия: россию 12
□ J X 13 jfk. липтон. гринфилд 13
J X 14 бюджетная, бюджетной, средней, дорогой 14
□ J X 15 нет 15
s X 16 да 16
□ J X 17 конечно 17
Рисунок 8 - Возможные варианты ответа В конце совершенной работы можно сделать вывод, что цель достигнута и программа реализована языком программирования java, представляющая способ извлечения и анализа данных.
Разработанная система в итоге характеризируется тем, что диалог ведется в терминах проблемной области и на выходе пользователь получает конечный результат, являющийся целью его общения с программным приложением.
Использованные источники:
1. Андерсен В. Базы данных Microsoft Access. Проблемы и решения: Практ. пособ. /Пер. с англ.— М.: Издательство ЭКОМ, 2001.—384 с.: илл.
2. Глухих, И. Н. Интеллектуальные информационные системы : учеб. пособие для студентов учреждений высш. проф. образования / И. Н. Глухих ; М-во образования и науки Рос. Федерации, Тюм. гос. ун-т. - М. : Академия, 2012. - 110 с.
3. Ефимов, Е. Н. Информационные системы и технологии в экономике : учеб. пособие для студентов, обучающихся по специальностям "Мировая экономика", "Бухгалт. учет, анализ и аудит" и "Финансы и кредит" / Е. Н. Ефимов, Е. В. Ефимова, Г. М. Лапицкая ; под ред. Г. М. Лапицкой. - Ростов н/Д : МарТ: Феникс, 2012. - 296 с.
4. Ясницкий, Л. Н. Введение в искусственный интеллект : учеб. пособие для студентов вузов, обучающихся по мат. направлениям и специальностям / Л. Н. Ясницкий. - 3-е изд., стер. - М. : Академия, 2013. - 175 с.
5. Боженюк, А. В. Интеллектуальные интернет-технологии : учеб. для студентов вузов, обучающихся по специальности "Прикладная информатика (по обл.)" и др. специальностям / А. В. Боженюк, Э. М. Котов, А. А. Целых. -Ростов н/Д : Феникс, 2012. - 382 с.