Об одном способе построения запросов к базе данных на основе аппарата нечеткой логики

Актуальное направление развития электронного документооборота - переход к информационным системам, поддерживающим диалоговое взаимодействие с пользователем на естественном языке. Проблема преобразования словесных критериев, описывающих свойства данных.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 28.07.2017
Размер файла 179,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Об одном способе построения запросов к базе данных на основе аппарата нечеткой логики

Н.Н. Венцов,

В.В. Долгов,

Л.А. Подколзина

Аннотация

Показано что актуальным направлением развития электронного документооборота является переход к информационным системам, поддерживающим диалоговое взаимодействие с пользователем на естественном языке. Данная проблема является актуальной по причине лавинообразного роста данных обрабатываемых современными информационными системами. На примере данных отделов кадров предприятий описана проблема преобразования словесных критериев, описывающих свойства искомых данных, в SQL-запросы, выполнение которых позволит получить требуемые информационные массивы. Математически формализация словесных критериев фильтрации данных была формализована при помощи трапецеидальных функций принадлежности нечеткому множеству. Описана реализация процесса преобразования трапецеидальной функции принадлежности в условные выражения SQL-запросов к реляционных систем управления базами данных. Реализованные преобразования математически соответствуют как теории нечетких множеств, так и концепции реляционных баз данных (т.е. стандарту SQL). Соответствие преобразований теории нечетких множеств в дальнейшем позволит использовать операторы работы с множествами (объединение, пересечение и т.д.), а соответствие требованиям SQL практически реализовывать предложенный подход средствами широкого класса реляционных систем управления базами данных.

Ключевые слова: нечеткая логика, функция принадлежности, нечеткое множество, терм, лингвистическая переменная, база данных, нечеткие запросы, -срез, индекс соответствия

Введение

Повышение объемов производимой и перерабатываемой информации стимулирует к переходу на электронные формы организации документооборота. Использование компьютерных технологий позволяет не ограничивать обработку документов операциями чтения и записи, а использовать интеллектуальные алгоритмы формирования документации на основе имеющейся первоначальной информации. Одной из проблем, возникающей на данном этапе, является формализация качественных высказываний, оформленных на естественном языке. Работая с первичными данными пользователю удобнее оперировать инструментами родного языка, а не использовать специфический математический аппарат. Для автоматизации связи качественных характеристик, заданных на естественном языке, с количественными параметрами объектов или процессов часто используют теорию нечетких множеств и нечеткую логику [1].

Актуальной задачей исследования является повышение эффективности управления сложными объектами через разработку алгоритма интеллектуализации системы, способной в той или иной степени воспроизводить действия человека, связанные с анализом, классификацией знаний в предметной области, накопленными оператором или самой системой [2 - 4]. электронный информационный документооборот

Постановка задачи

Создание, модификация и передача электронных документов может быть реализовано только средствами автоматизированной системы (АС), где данный электронный документ приобретает статус, регистрируется и хранится. Регистрация электронных копий должна обеспечиваться средствами АС [5].

В процессе создания электронного документа средствами АС, необходимо формализовывать не только четкие количественные, но и расплывчатые качественные характеристики объектов и процессов реального мира. Рассмотрим практический пример. На некотором предприятии было решено провести сортировку сотрудников по стажу их работы. Было выделено 3 группы сотрудников: сотрудники с маленьким стажем, сотрудники со средним стажем и сотрудники с большим стажем работы, а также обратные этим высказываниям запросы. Требуется сформировать и выполнить SQL-запрос к базе данных, позволяющий выбрать сотрудников согласно указанным выше нечетким критериям.

Перед созданием базы данных введем некоторые определения: стаж сотрудников учитывается от 0-25 лет. Временной промежуток до 7 лет является показателем сотрудников с малым стажем. Максимально приближенными к группе сотрудников со средним стажем являются те, у которых стаж работы от 8 до 13 лет; большим стажем - более 15 лет.

Предлагаемый подход

Для формализации стажа работы используем понятие лингвистической переменной. Мы определяем функцию совместимости не на множестве математически точно определенных объектов, а на множестве обозначенных некими символами впечатлений на естественном языке [6]. Лингвистическая переменная определяется набором . где X стаж работы; T(X) - терм-множество X: T(Стаж работы) = "маленький" + "средний" + "большой" + "не малый" + "не средний" + "не большой"; где любое из этих значений является названием нечеткой переменной. Каждый терм накладывает некоторые нечеткие ограничения на значения базовой переменной "Стаж работы" в универсальном множестве . При этом, нечеткое ограничение на значения "Стаж работы" характеризуется функцией совместимости, ставящей базовой переменной число из интервала от 0 до 1, соответствующее совместимости этого значения с заданным нечетким ограничением. G - синтаксическое правило, определяющее способ порождения бесконтекстной грамматикой лингвистических значений, принадлежащих терм-множеству переменной "Стаж работы". M - семантическое правило, задающее способ вычисления смысла любой лингвистической переменной. Лингвистическое значение включает в себя первичные термы ("малый", "большой" и т.д.) и связки ("и", "или", "не", "очень", "более" и т.д.). Связки трактуются как видоизменяющие операторы. Так, смысл лингвистического значения "не малый" получим, вычитая из 1 значение функции совместимости терма "малый".

Любой нечеткой переменной соответствует некоторое ограничение С, представляющее собой подмножество универсального множества. Характеристикой такого нечеткого подмножества универсального множества X выступает функция принадлежности , ставящая в соответствие каждому элементу число из интервала от 0 до 1. - характеризует степень принадлежности элемента к нечеткому подмножеству C.

Существует множество типовых форм кривых для задания функции принадлежности. В этом примере применена типовая кусочно-линейная трапецеидальная функция принадлежности [7 - 9], использующая четверку чисел (a, b, c, d):

(1)

Универсальное множество X представляет собой интервал от 0 до 25. Переменная x принимает значения данного интервала и интерпретируется как стаж работы. Каждая функция принадлежности описывается четверкой чисел: Малый стаж - (0, 0, 4, 7); Средний стаж - (5, 8, 13, 15); Сотрудник с большим стажем - (11, 16, 25, 25).

Функция принадлежности к "Малый стаж":

(2)

Функция принадлежности к "Средний стаж":

(3)

Функция принадлежности к переменной "Большой стаж" примет вид:

(4)

Для удобства будем использовать срезы - фильтры по измерениям, в которых фигурируют нечеткие величины [10]. Для получения значений, принадлежащих -срезу для каждого из терма, зададим минимальный индекс соответствия =0,75. На основе этих данных построим график, изображенный на рисунке 1 и демонстрирующий изменение этих групп.

Рис. 1 - Совокупность функций принадлежности

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

(5)

Рис. 2 - График отрицания

Следующим этапом требуется перевести описанный аппарат нечеткой логики в строгие запросы реляционных БД.

Для удобства работы рассмотрим выполнение нечеткого запроса к базе данных на основе таблицы "Сотрудники". Она состоит из следующих полей: id (уникальный идентификатор), Фамилия, Имя, Отчество, Пол сотрудника, Телефон, Примечания, Дата приема на работу, Дата увольнения, Стаж работы в аналогичной должности, Стаж всего.

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

где Now() - функция, возвращающая текущую дату; DateDiff - возвращает разницу между двумя датами, а ее параметр "yyyy" указывает на то, что разница возвращается в годах; [Стаж работы в подобной должности] - выполняет учет стажа сотрудника до принятия его на текущую должность.

Для выбора сотрудников с маленьким стажем работы, выполним SQL-запрос к БД, приведенный на рис.4, составленный с учетом формулы (2).

Для всех запросов верно: индекс соответствия "=0,75" позволяет исключить результаты, лежащие ниже этого значения; "7-5" - результат ограничений, наложенных 2 формулой.

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

Аналогичным образом можно получить и остальные группы сотрудников по условию стажа работы. В общем виде алгоритм поиска сотрудников с определенным стажем работы представлен на рис. 6.

Первый шаг "Выбор вида функции принадлежности" требует: задать имя функции принадлежности, дать короткое описание (пояснения. Используемые переменные и пр.), указать тип (трапецеидальный, гауссов и т.д.), заполнить необходимые коэффициенты, для дальнейшей работы. Функция описывает стаж работы сотрудника в некоторой сфере профессиональной деятельности. В работе используется трапецеидальная функция принадлежности. Основное требование: значение функции принадлежности должно быть больше 0 хотя бы для одного лингвистического терма.

Рис. 6 - Получение результатов нечеткого запроса

На следующем шаге "Задание минимального индекса соответствия" следует выбрать минимальный индекс соответствия, обеспечивающие степень принадлежности не ниже этой границы (в данном случае значение =0,75).

Третий шаг "Преобразование нечеткого среза в SQL-запрос": на основе проведённых исследований предметной области, составляется запрос (правило), представляющий собой инструкцию SELECT языка SQL с обязательным указанием сотрудников, попадающих под данное правило. Критерии, согласно которым происходит отбор, задаются в установки предикатов WHERE, условие которых может быть верным или неверным для любой записи таблицы. Сложные запросы могут оформляться хранимыми процедурами и функциями. Поэтому ограничения накладываются только возможностями SQL-сервера, на котором функционирует база данных.

Шаг "Запрос к БД" позволяет получить результат работы нечеткого запроса. Следующий шаг "Сортировка результатов запроса" необязателен, служит для распределения конечной выборки по степени соответствия заданному запросу.

Заключение

Показано что актуальным направлением развития электронного документооборота является переход к информационным системам, поддерживающим диалоговое взаимодействие с пользователем на естественном языке. Описана проблема преобразования словесных критериев, описывающих свойства искомых данных, в SQL-запросы, выполнение которых позволит получить требуемые информационные массивы. Математически формализация словесных критериев фильтрации данных была формализована при помощи трапецеидальных функций принадлежности. Описана реализация процесса преобразования трапецеидальной функции принадлежности в SQL-запросы к реляционной базе данных. Реализованные преобразования математически соответствуют как теории нечетких множеств, так и концепции реляционных баз данных (т.е. стандарту SQL). Соответствие преобразований теории нечетких множеств в дальнейшем позволит использовать операторы работы с множествами (объединение, пересечение и т.д.), а соответствие требованиям SQL практически реализовывать предложенный подход средствами широкого класса систем управления базами данных.

Нечеткий поиск в базе данных приносит аналитику максимальную пользу в случаях, когда требуется не только извлечь информацию, оперируя нечеткими понятиями, но и проранжировать ее по степени релевантности запроса [11].

Благодарность

Работа выполнена при финансовой поддержке РФФИ - проекты № 13-01-00343 и 15-01-05129.

Литература

1. Алиев Р.А., Церковный А.Э., Мамедов Г.А. Управление производством при нечеткой исходной информации. М.: Энергоатомиздат, 1991. 240 с.

2. Пивкин В.Я., Бакулин В.П., Кореньков Д.И. Нечеткие множества в системах управления. Новосибирск: НГУ, 1998. 75 с.

3. Гинис Л.А. Развитие инструментария когнитивного моделирования для исследования сложных систем // Инженерный вестник Дона, 2013, №3 URL: ivdon.ru/ru/magazine/archive/n3y2013/1806

4. Венцов Н.Н. Разработка алгоритма управления процессом адаптации нечетких проектных метаданных // Инженерный вестник Дона, 2012, №1 URL: http://ivdon.ru/ru/magazine/archive/n1y2012/630

5. Алтунин А.Е., Семухин М.В. Модели и алгоритмы принятия решений в нечетких условиях. Монография. М.: Издательство Тюменского государственного университета, 2000. 352 с.

6. Заде Л. Понятие лингвистической переменной и его применение к принятию приближенных решений. М.: Мир, 1976. 166 с.

7. Бочарников В.П. Fuzzy-технология: математические основы, практика моделирования в экономике. СПб.: Наука РАН, 2001. 328 с.

8. Valiant Leslie. Probably Approximately Correct: Nature's Algorithms for Learning and Prospering in a Complex World. New York: Basic Books, 2013. 208 p.

9. Novбk V. "Are fuzzy sets a reasonable tool for modeling vague phenomena?" // Fuzzy Sets and Systems 156. 2005. pp. 341-348.

10. Earl Cox. Fuzzy Modeling and Genetic Algorithms for Data Mining and Exploration. Amsterdam: Elsevier/Morgan Kaufmann. 2005. 530 p.

11. Досмухамедов Б.Р. Моделирование и подходы к управлению бизнес-процессами в микрофинансовых организациях // Вестник АГТУ: Управление, вычислительная техника и информатика, 2013 №2. С.121-130.

References

1. Aliev R.A., Cerkovnyj A. Je., Mamedov G.A. Upravlenie proizvodstvom pri nechetkoj ishodnoj informacii [Production management in the fuzzy initial information]. M.: Jenergoatomizdat, 1991. 240 p.

2. Pivkin V. Ja., Bakulin V.P., Koren'kov D.I. Nechetkie mnozhestva v sistemah upravlenija [Fuzzy sets in management systems]. Novosibirsk: NGU, 1998. 75p.

3. Ginis L.A. Inћenernyj vestnik Dona (Rus). 2013. №3 URL: ivdon.ru/ru/magazine/archive/n3y2013/1806

4. Vencov N.N. Inћenernyj vestnik Dona (Rus), 2012, №1 URL: http://ivdon.ru/ru/magazine/archive/n1y2012/630

5. Altunin A.E., Semuhin M.V. Modeli i algoritmy prinjatija reshenij v nechetkih uslovijah [Models and algorithms for decision making in fuzzy conditions]. Monografija. M.: Izdatel'stvo Tjumenskogo gosudarstvennogo universiteta, 2000. 352 p.

6. Zade L. Ponjatie lingvisticheskoj peremennoj i ego primenenie k prinjatiju priblizhennyh reshenij [The concept of linguistic variable and its application to decision-making close]. M.: Mir, 1976. 166 p.

7. Bocharnikov V.P. Fuzzy-tehnologija: matematicheskie osnovy, praktika modelirovanija v jekonomike [Fuzzy-technology: the mathematical foundations of the practice of modeling in economics]. SPb.: Nauka RAN, 2001. 328 p.

8. Valiant Leslie. Probably Approximately Correct: Nature's Algorithms for Learning and Prospering in a Complex World. New York: Basic Books, 2013. 208 p.

9. Novбk V. "Are fuzzy sets a reasonable tool for modeling vague phenomena?" // Fuzzy Sets and Systems 156. 2005. pp. 341-348.

10. Earl Cox. Fuzzy Modeling and Genetic Algorithms for Data Mining and Exploration. Amsterdam: Elsevier/Morgan Kaufmann. 2005. 530 p.

11. Dosmuhamedov B.R. Vestnik AGTU: Upravlenie, vychislitel'naja tehnika i informatika, 2013 №2. pp.121-130.

Размещено на Allbest.ru

...

Подобные документы

  • Изучение методов разработки систем управления на основе аппарата нечеткой логики и нейронных сетей. Емкость с двумя клапанами с целью установки заданного уровня жидкости и построение нескольких типов регуляторов. Проведение сравнительного анализа.

    курсовая работа [322,5 K], добавлен 14.03.2009

  • Аппаратное, сетевое, программное обеспечение предприятия. Разработка системы электронного документооборота. Последовательность создания и технология построения информационной системы. Выбор системы управления базами данных, среды разработки приложения.

    дипломная работа [1,5 M], добавлен 15.10.2013

  • Особенности проектирования программы на языке С++ для обработки данных из таблиц базы данных. Основные функции программы, создание концептуальной модели базы данных и диаграммы классов, разработка интерфейса пользователя и запросов к базе данных.

    курсовая работа [2,1 M], добавлен 08.06.2012

  • Значение документооборота как средства для управления предприятием. Организации системы электронного документооборота и требований, предъявляемых к системам. Проблема выбора системы электронного документооборота на предприятиях малого и среднего бизнеса.

    контрольная работа [31,8 K], добавлен 14.09.2015

  • Описание процесса бронирования билетов. Концептуальное и физическое проектирование базы данных. Точность и корректность хранения и отображения данных в базе данных. Проектирование логики диалога с пользователем. Разработка и описание приложения.

    курсовая работа [1,7 M], добавлен 11.02.2016

  • Публикации на Интернет-сервере запросов к базе данных. Реализация интерфейсной части информационной подсистемы, экранных форм и SQL запросов. Обоснование требований к серверу и рабочей станции пользователя. Расчёт себестоимости подсистемы "Запросы в ЖКХ".

    дипломная работа [6,7 M], добавлен 29.06.2011

  • Разработка базы данных для предметной области "Подразделения предприятия – Рабочие помещения". Описание используемых данных, предметной области и результатной информации. Создание запросов, форм и отчетов в базе данных. Описание построения диаграмм.

    курсовая работа [5,6 M], добавлен 24.07.2014

  • Тенденция развития систем управления базами данных. Иерархические и сетевые модели СУБД. Основные требования к распределенной базе данных. Обработка распределенных запросов, межоперабельность. Технология тиражирования данных и многозвенная архитектура.

    реферат [118,3 K], добавлен 29.11.2010

  • Проведение исследования стандартов и основ проектирования базы данных. Особенность создания запросов на языке SQL. Функциональные требования, предъявляемые к программе Microsoft SQL Server. Анализ заполнения таблиц. Создание процедур и запросов.

    курсовая работа [2,7 M], добавлен 19.03.2021

  • Сущность базы данных. Процесс построения концептуальной модели. Построение реляционной модели, создание ключевого поля. Процесс нормализации. Проектирование базы данных в ACCESS. Порядок создание базы данных. Создание SQL запросов и работа в базе данных.

    курсовая работа [185,6 K], добавлен 08.11.2008

  • Проектирование базы данных для автоматизированной системы "Склад". Разработка концептуальной модели (ER-диаграмма). Преобразование в реляционную модель и ее нормализация. Разработка запросов к базе данных на языке SQL. Скрипт для создания базы данных.

    курсовая работа [161,8 K], добавлен 07.10.2013

  • Характеристика деятельности футбольного клуба "Челси", формулировка основных задач его информационно-управляющей системы и обоснование требований к его базе данных. Разработка базы данных в среде СУБД Access 2003. Создание запросов на языке QBE и SQL.

    курсовая работа [2,6 M], добавлен 21.02.2011

  • Типы связей между сущностями и их характеристика. Определение связных таблиц на основе правил ER-подхода и внедрение внешних ключей. Запись одного запроса к базе данных с полученной схемой на языке SQL. Реализация проектируемой БД в выбранной СУБД.

    контрольная работа [329,0 K], добавлен 08.03.2009

  • Определение функциональных зависимостей. Разработка структуры базы данных. Организация запросов к базе данных. Использование триггеров для поддержки данных в актуальном состоянии. Разработка хранимых процедур и функций. Ограничения ведения базы данных.

    курсовая работа [113,2 K], добавлен 17.06.2014

  • Методика и этапы изменения данных в базе. Список всех баз данных, их внутренняя структура и элементы, принципы формирования таблиц и запросов, управление. Чтение отдельных полей, их типология и разновидности. Порядок вывода структуры разнообразных баз.

    презентация [130,3 K], добавлен 21.06.2014

  • Методы построения хранилища данных на основе информационной системы реального коммерческого предприятия. Основные аналитические задачи, для решения которых планируется внедрение хранилищ данных. Загрузка процессоров на серверах. Схемы хранения данных.

    контрольная работа [401,0 K], добавлен 31.05.2013

  • Задачи системы электронного документооборота. Анализ существующих информационных систем. Методы и средства инженерии программного обеспечения. Концептуальная модель данных в BPWin. Построение инфологической модели системы документооборота "Doc_Univer".

    курсовая работа [56,1 K], добавлен 25.03.2014

  • Создание приложения к реляционной базе данных "Личная фонотека". Исследование предметной области, выбор языка программирования и компилятора. Проектирование функциональности, структура программы, использованные алгоритмы; взаимодействие с пользователем.

    курсовая работа [613,5 K], добавлен 29.12.2015

  • Алгоритмы и стандарты криптографических преобразований. Криптографические преобразования на основе специального программного обеспечения. Метод криптографических преобразований на основе жесткой логики. Аналоги модуля шифрования и дешифрования данных.

    курсовая работа [971,6 K], добавлен 30.01.2018

  • Проектирование и реализация базы данных для обеспечения автоматизированного учета результатов футбольного турнира. Осуществление логического, а также физического проектирования базы данных. Описание запросов на выборку и манипуляцию данными на языке SQL.

    курсовая работа [1,9 M], добавлен 17.06.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.