Применение графовых моделей в проектном управлении
- Авторы: Асанов А.З.1, Мышкина И.Ю.2, Грудцына Л.Ю.2
-
Учреждения:
- Институт искусственного интеллекта МИРЭА – Российского технологического университета
- Набережночелнинский институт (филиал) Казанского (Приволжского) федерального университета
- Выпуск: Том 13, № 2 (2023)
- Страницы: 232-242
- Раздел: ИНЖИНИРИНГ ОНТОЛОГИЙ
- URL: https://journals.ssau.ru/ontology/article/view/26997
- DOI: https://doi.org/10.18287/2223-9537-2023-13-2-232-242
- ID: 26997
Цитировать
Полный текст
Аннотация
Исследуется возможность применения графовых моделей в проектном управлении для решения задачи формирования проектной группы и распределения работ проекта между потенциальными исполнителями. Выделены возможные направления применения онтологического моделирования в проектном управлении. Средствами редактора онтологий Protégé реализована онтология проекта. Исследуется возможность построения векторных представлений элементов простых графов и графов знаний в задаче формирования проектной группы. Задачи исследования: построение графовых моделей проектов – простого графа и графа знаний; применение векторных представлений вершин и отношений графовых моделей для решения задачи распределения работ проекта. Рассматривается возможность применения мер семантической близости в онтологии. Новизна предложенного подхода заключается в использовании при формировании проектной группы данных об участниках реализованных проектов, что повышает вероятность успешной реализации проекта. Представление элементов графа в виде числовых векторов позволяет применить к исследованию предметной области методы машинного обучения. Приводится пример решения задачи формирования рабочей группы проекта, в котором осуществлён выбор исполнителей проектной работы. Все расчёты осуществлены средствами языка Python.
Ключевые слова
Полный текст
Введение
Задачи управления кадрами организации по степени важности стоят в одном ряду с задачами производства и сбыта продукции. Всё больше компаний становятся проектно-ориентированными, выполняя работы в рамках проектов [1]. Успешность нового проекта в любой сфере деятельности напрямую зависит от компетентности выбранных исполнителей, от того, правильно ли распределены между членами команды отдельные задачи проекта [2]. В данной работе рассматривается задача распределения работ проекта между потенциальными исполнителями и исследуется возможность применения для её решения графовых моделей (ГМ). Использование ГМ позволяет построить структурную схему исследуемой предметной области (ПрО), наглядно и понятно представить то, как связаны и взаимодействуют её объекты. Использование современного математического аппарата при анализе ГМ позволяет устанавливать ранее не известные связи, зависимости и закономерности, отслеживать изменения различных характеристик. Особая ценность ГМ заключается в том, что они предоставляют формальный аппарат для плохоформализуемых задач, требующих учёта как количественных, так и качественных параметров, в т.ч. в условиях неопределённости. В последнее время для решения прикладных задач используют такие ГМ, как байесовские сети, марковские цепи, когнитивные модели (карты), искусственные нейронные сети, графы знаний (ГЗ), онтологии и др. Вероятностные ГМ используются в компьютерном зрении, биоинформатике, принятии решений, робототехнике и др. [3]. Построение ГМ, как правило, осуществляется путём привлечения экспертов. В этом случае ГМ есть субъективное представление эксперта о ПрО в виде схемы взаимодействия её объектов. Кроме привлечения экспертов, ГМ могут выводиться из данных на основе методов машинного обучения (МО) [3].
В данной работе исследуется возможность применения ГМ и ГЗ к решению одной из задач проектного управления.
Онтологическая модель проекта
Далее приведены определения ГМ, используемые в работе.
Обобщённый граф или просто граф G состоит из непустого конечного множества V(G) элементов, называемых вершинами, и конечного семейства E(G) пар (не обязательно различных) элементов из V(G), именуемых рёбрами; использование слова «семейство» допускает существование кратных рёбер. Если пары вершин семейства E(G) не упорядочены, то граф называется неориентированным, если упорядочены – ориентированным графом (орграфом). B простом графе имеется не более одного ребра, соединяющего пару вершин, а также отсутствуют петли (рёбра, соединяющие вершину с самой собой) [4].
ГЗ – это орграф, который может содержать кратные рёбра и петли, каждое из рёбер относится к одному из возможных типов; каждому заданному типу ребра соответствует некоторое отношение между объектами ПрО, а вершинам – объекты ПрО.
Онтология – это формальная, явная спецификация общей концептуализации, состоящая из иерархии понятий ПрО, связей между ними и ограничений, которые действуют в рамках этой модели. Термин «онтология» связывают с термином «ГЗ», поскольку при наполнении онтологии экземплярами происходит её превращение в ГЗ [5].
Онтология есть кортеж , где L – лексикон, т.е. множество терминов понятий (), отношений (), атрибутов (), значений атрибутов (); – множество понятий; – множество отношений между понятиями; – множество атрибутов понятий; – функция связи лексикона с понятиями; – функция связи лексикона с отношениями; – функция связи лексикона с атрибутами; – таксономическая иерархия классов; – иерархия отношений, – множество экземпляров (понятий единичного объёма) [6].
Применение онтологического подхода позволяет [7, 8]: совместное использование пользователями знаний в рассматриваемой ПрО; установление общей терминологии, определение её смысла и причинно-следственных связей, получение семантического базиса в определении содержания информации, циркулирующей в системе; повторное использование знаний в ПрО; получение логической теории, на основе которой осуществляется вывод новых знаний, явно не заложенных в онтологии и расширяющих её функциональные возможности и класс решаемых задач.
ГМ используются в проектном управлении (например, [9]), в т.ч. в управлении человеческими ресурсами, управлении рисками проекта и т.д. Основная ценность применения онтологических моделей в проектном управлении заключается в том, что подобные модели могут стать основной частью базы знаний интеллектуальной системы поддержки принятия управленческих решений, а также основой системы управления знаниями проектной организации. На основе результатов анализа работ, посвящённых онтологическому моделированию проектной работы [10-12], была разработана онтология проекта. Разработанный ГЗ реализован средствами редактора онтологий Protégé[1], фрагмент иерархии классов онтологии проекта представлен на рисунке 1.
Рисунок 1 – Фрагмент иерархии классов онтологии проекта
Особенностями данного графа является включение в качестве класса ключевых слов для более подробного описания различных понятий ПрО (компетенций, результатов проекта, знаний, умений и владений работников и др.); указания конкретных составляющих понятий (конкретные методы, программы, методики и т.п.), что необходимо для уточнения критериев поиска исполнителя, более подробного описания средствами онтологий требований к работам проекта, автоматического определения связей между компетенциями, автоматического расширения набора ключевых слов компетенций.
Для определения групп оцениваемых компетенций использованы группы компетенций и компетенции инженеров, приведённые в работе [13].
При накоплении достаточного объёма данных о реализуемых проектах, частных работах, результатах научно-исследовательских проектов полученные результаты могут быть использованы при прогнозировании значимости компетенций при подготовке специалистов в соответствующей области, при корректировке соответствующих образовательных программ [14]. Особенно это актуально для ВУЗов, функционирующих в моногородах и обеспечивающих кадрами градообразующие предприятия.
В таблице 1 приведены примеры отношений между некоторыми классами онтологии проекта.
Таблица 1 – Примеры отношений между классами онтологии проекта
Класс-субъект | Отношение | Класс-объект |
Работа Проекта | Требует Компетенцию | Компетенция |
Проект | Включает Работу | Работа Проекта |
Работник | Владеет Компетенцией | Компетенция |
Работа Проекта | Включает Разработку | Математическая Модель, |
Цель Проекта, Математическая Модель | Описывает Объект | Объект |
Проект | Имеет Цель | Цель Проекта, |
Работник | Выполняет Работу | Работа Проекта |
Проект | Имеет Объект | Объект |
Компетенция | Является Родителем Для | Компетенция |
2. МО и анализ графов
Алгоритмы МО способны обучаться на наборах данных, описывающих исследуемые объекты или процессы и отражающие их свойства и закономерности [15, 16]. Для применения методов МО необходимо иметь векторные представления данных с действительными значениями, т.е. к ГМ можно применить существующие алгоритмы получения векторных представлений их вершин и отношений. Перечень некоторых задач, базирующихся на ГМ рассматриваемой ПрО, которые можно решить с применением методов МО [17], и некоторые возможные применения этих задач для проектного управления представлены ниже.
- Предсказание связей:
- распределение работ (определение возможных исполнителей для работ нового проекта);
- определение новых связей между компетенциями и ключевыми словами;
- уточнение требований к профессиональной компетентности исполнителя нового проекта (определение новых связей между компетенциями и новой работой проекта).
- Классификация вершин, сопоставление понятий:
- определение групп близких потенциальных исполнителей;
- формирование проектных групп, имеющих успешный опыт совместной работы;
- определение сходства (связей) между проектами и/или результатами проектов (разрабатываемыми моделями, алгоритмами, программами и др.);
- оценка соответствия компетенций потенциальных исполнителей проекта требованиям частных заданий.
Для построения векторных представлений вершин и отношений простого графа можно использовать такие алгоритмы, как DeepWalk [18], Node2Vec [19], нейросетевые алгоритмы и др. Существуют алгоритмы, которые позволяют каждой вершине и каждому отношению ГЗ ставить в соответствие уникальный вектор (TransE, DistMult, RESCAL и др.) [20]. Алгоритмы отличаются в т.ч. используемой функцией оценки отношения r экземпляров x и y, которая позволяет оценить его правдоподобность; функцией потерь, значение которой минимизируется в процессе обучения модели. Некоторые алгоритмы имеют геометрическую интерпретацию (например, TransE), некоторые алгоритмы не позволяют работать с определёнными свойствами отношений (симметричность, антисимметричность и т.п.).
3. Анализ нового проекта с помощью ГМ и МО
3.1. Онтология и задача распределения работ
В качестве примера рассматривается задача определения возможных исполнителей работ по проекту, исходные данные, требования к исполнителям представлены в виде упрощённого орграфа с типизированными рёбрами (рисунок 2). Данный граф является подграфом онтографа проекта (рисунок 1) и в качестве вершин включает экземпляры объектов ПрО (классов онтологии), а именно таких классов, как Проект, Объект, МатематическаяМодель, Работник, РаботаПроекта, Компетенция.
Рисунок 2 – Фрагмент упрощённого орграфа для задачи распределения работы проекта
Граф включает завершённые проекты Проект1 и Проект2. Проект3 – это новый проект. Одной из целей Проекта2 и Проекта3 является построение некой модели одного и того же объекта Объект1.
На графе представлены требования к компетенциям исполнителя для каждой работы, преемственные связи между компетенциями. Имеется три потенциальных исполнителя для выполнения новой работы Работа3. Все возможные исполнители на высоком уровне владеют всеми компетенциями. Работник3 не принимал участия ни в одном проекте.
3.2 Меры семантической близости в онтологии и задача распределения работ
Для оценки сходства пар объектов в онтологической модели разработаны и используются различные меры семантической близости (), которые позволяют использовать различные смысловые характеристики сравниваемых объектов (понятий, терминов), их свойства (атрибуты и отношения с другими объектами), анализ структуры и взаимное положение в онтологической иерархии [6].
Оценка соответствия работника требованиям к исполнителю работы проекта может быть определена через соотношение количества одинаковых свойств сравниваемых объектов ( , A и B – множества свойств этих объектов) к общему числу свойств этих объектов (). В качестве сравниваемых объектов в рассматриваемой задаче могут быть выбраны уже выполненные работы (с известными исполнителями) и новая работа, цели этих работ (в примере это некие модели); ключевые слова (с учётом их преемственности), описывающие работы, модели, компетенции работников. Для поиска одинаковых и/или различных свойств можно построить SPARQL-запросы2 и/или правила логического вывода SWRL 3. Для автоматизации расчётов может быть использована библиотека Python Owlready2 4 [21].
3.3. ГМ и задача распределения работ
Для применения алгоритмов получения векторных представлений для простых графов с однородными вершинами и однотипными отношениями необходимо сначала построить такой граф на основе онтологии. Общая схема построения графа и выбора проектной группы представлена на рисунке 3. Первым этапом является формирование неориентированного графа, вершинам которого соответствуют исполнители, а наличие связи между исполнителями означает их участие в одном и/или схожем уже реализованном проекте. Далее необходимо применить один из алгоритмов построения векторных представлений вершин простого графа. Полученные векторные представления потенциальных исполнителей затем могут быть использованы для формирования групп (кластеров) исполнителей c помощью известных алгоритмов кластеризации [16]. Далее осуществляется выбор кластера, исполнители в котором обладают всеми требуемыми компетенциями на достаточном уровне, для этого используются оценки компетенций исполнителей, а также их значимость (на рисунке 3: wij – оценка j-й компетенции i-го исполнителя, zj – значимость j-й компетенции для проекта; ).
Рисунок 3 – Общая схема формирования графа исполнителей и выбора проектной группы
Описание содержания любого проекта на начальных этапах его жизненного цикла, как правило, всегда подразумевает описание множества работ, которые необходимо выполнить, взаимосвязей между работами и характеристик работ, в т.ч., набора компетенций исполнителей, необходимых для успешной реализации работ проекта. Набор компетенций работ проекта может быть определён на основе существующей модели компетенций сотрудников проектной организации, которая наряду с системами оценки и развития профессиональной компетентности персонала являются важной составляющей кадровой политики любой организации. Модель компетенций может быть построена по результатам экспертных опросов, анализа профессиональных стандартов, стандартов в области менеджмента проектной деятельности и т.п.
Ограничением рассмотренного подхода к формированию проектной группы является то, что новый исполнитель, возможно, самый компетентный, но не принявший участие ни в одном проекте, не будет иметь связей ни с кем.
Другой возможный подход состоит в том, что строится граф с вершинами, соответствующими потенциальным исполнителям и определяются связи между ними на основе анализа компетенций исполнителей и/или ключевых слов, которые описывают профессиональные знания, умения и навыки претендентов. В этом случае в кластеры попадут исполнители со схожим уровнем профессиональной компетентности. Для получения векторных представлений вершин графа могут использоваться существующие функции языка Python 5.
3.4. ГЗ и задача распределения работ
Пусть для заданного множества объектов ПрО E и множества отношений между этими объектами R построен ГЗ , который содержит тройки ; представляют соответственно субъект («голова») и объект («хвост») отношения , которое описывает некоторое взаимодействие между объектами ПрО [20]. Задача предсказания связи определяется как предсказание субъекта или объекта для троек (?, r, t) или (h, r, ?) соответственно. Так, в примере на рисунке 2 определяется наиболее вероятный субъект в тройке (?, «ВыполняетРаботу», «Работа3»).
Каждый алгоритм построения векторных представлений элементов графа использует некоторую функцию оценки отношения , позволяющую оценить правдоподобность тройки . Эта оценка должна в идеале принимать максимальные значения для и минимальные для . Например, алгоритмы RESCAL и DistMult, основанные на факторизации разреженного тензора смежности ГЗ [17], моделируют объекты в виде векторов , а отношения – в виде матриц , в DistMult эти матрицы являются диагональными. Функция оценки отношения задаётся формулой [20]:
Обучение модели, как правило, осуществляется путём минимизации некоторой функции потерь, так, в алгоритме DistMult функция потерь может иметь вид [22]:
,
где – множество «негативных» троек:
.
В качестве оптимизатора модели может быть использован мини-пакетный стохастический градиентный спуск [22].
Для работы с ГЗ использовались готовые функции библиотеки Python PyKEEN 6. После обучения модели (например, DistMult, TransE, ConvE, RotatE) получены оценки различных отношений экземпляров x и y, чем выше оценка, тем больше вероятность того, что рассматриваемое отношение окажется верным. При этом минимальное значение оценки, чтобы отношение было определено как точно верное, отсутствует.
Были смоделированы различные требования к работам нового проекта и с помощью векторных представлений вершин графа получены оценки вероятности связи между вершиной, соответствующей новой работе, и вершинами, соответствующими потенциальным исполнителям. Для ситуации, представленной на рисунке 2, по результатам работы большинства алгоритмов лучшим исполнителем является работник Работник2. Это объясняется тем, что хотя все потенциальные исполнители владеют требуемыми компетенциями, но Работник2 имеет опыт выполнения подобных работ, а именно опыт разработки некой модели объекта Объект1.
Заключение
В работе приведены возможные подходы к применению ГМ при решении задачи распределения работ проекта между потенциальными исполнителями. Рассмотрены онтологии, ГЗ и простые графы. Выделены возможные направления применения векторного представления ГЗ и простых графов в проектном управлении. Средствами редактора онтологий Protégé реализована онтология проекта. Представление элементов графа в виде числовых векторов позволяет применить к исследованию ПрО методы МО. На примере решения задачи формирования рабочей группы проекта осуществлён выбор исполнителя проектной работы. Все расчёты осуществлены средствами соответствующих функций библиотек Owlready2 и PyKEEN языка Python. Полученные результаты не противоречат ожидаемым экспертным оценкам.
1 Protégé – A free, open-source ontology editor and framework for building intelligent systems. https://protege.stanford.edu/.
2 SPARQL 1.1 Query Language. https://www.w3.org/TR/sparql11-query/.
3 SWRL rules - Owlready2 documentation. https://owlready2.readthedocs.io/en/latest/rule.html.
4 Owlready2 documentation. https://owlready2.readthedocs.io/en/latest/.
5 Python3 implementation of the node2vec algorithm. https://github.com/eliorc/node2vec.
6 PyKEEN 1.10.0 documentation. https://pykeen.readthedocs.io/en/stable/index.html.
Об авторах
Асхат Замилович Асанов
Институт искусственного интеллекта МИРЭА – Российского технологического университета
Автор, ответственный за переписку.
Email: asanov@mirea.ru
ORCID iD: 0000-0001-6724-0816
Scopus Author ID: 7003438319
д.т.н., профессор, профессор кафедры автоматических систем Института искусственного интеллекта МИРЭА–Российского технологического университета
Россия, МоскваИрина Юрьевна Мышкина
Набережночелнинский институт (филиал) Казанского (Приволжского) федерального университета
Email: mirinau@mail.ru
ORCID iD: 0000-0003-4309-3350
Scopus Author ID: 57189268396
ResearcherId: M-4899-2015
к.т.н., доцент кафедры системного анализа и информатики Набережночелнинского института (филиала) Казанского (Приволжского) федерального университета
Россия, Набережные ЧелныЛариса Юрьевна Грудцына
Набережночелнинский институт (филиал) Казанского (Приволжского) федерального университета
Email: larisa_u_g@mail.ru
ORCID iD: 0000-0003-1307-6605
Scopus Author ID: 57189270650
ResearcherId: M-6037-2015
старший преподаватель кафедры системного анализа и информатики Набережночелнинского института (филиала) Казанского (Приволжского) федерального университета
Россия, Набережные ЧелныСписок литературы
- Царьков И.Н. Математические модели управления проектами. Москва: ИНФРА-М, 2019. 514 с.
- Асанов А.З., Мышкина И.Ю. Процедура формирования команды исполнителей проекта на основе когнитивных карт и генетических алгоритмов // Проблемы управления и моделирования в сложных системах: труды XXI Международной конференции. Cамара : Офорт, 2019. С. 354–358.
- Сукар Л.Э. Вероятностные графовые модели. Принципы и приложения. Москва: ДМК Пресс, 2021. 338 с.
- Уилсон Робин. Введение в теорию графов, 5-е изд. Санкт-Петербург: ООО "Диалектика", 2019. 240 с.
- Кудрявцев Д.В., Беглер А.М., Гаврилова Т.А., Лещева И.А., Кубельский М.В., Тушканова О.Н. Метод коллективной визуальной разработки онтологического графа знаний // Искусственный интеллект и принятие решений. 2019. №1. С. 27-38.
- Крюков К.В., Панкова Л.А., Пронина В.А., Суховеров В.С., Шипилина Л.Б. Меры семантической близости в онтологии // Проблемы управления. 2010. №5. С.2-14.
- Цуканова Н.И. Онтологическая модель представления и организации знаний. Москва: Горячая линия – Телеком, 2015. 272 с.
- Гаврилова T.A., Хорошевский В.Ф. Базы знаний интеллектуальных систем. Санкт-Петербург: Питер, 2020. 384 с.
- Черняховская Л.Р., Малахова А.И. Разработка моделей и методов интеллектуальной поддержки принятия решений на основе онтологии организационного управления программными проектами // Онтология проектирования. 2013. №4. С. 42-52.
- Левенчук A. Системноинженерное мышление. TechInvestLab, 2 апреля 2015. 305 с. sys-tems_engineering_thinking_2015.pdf (techinvestlab.ru).
- Zaouga Wiem, Arfa Rabai Latifa Ben, Alalyani Wafa Rashid. Towards an Ontology Based-Approach for Human Resource Management // The 10th International Conference on Ambient Systems, Networks and Technologies (ANT). April 29 – May 2, 2019. Leuven, Belgium. P.417-424.
- Podgorelec V., Grasic B. Implementing Innovative IT Solutions with Semantic Web Technologies // Products and Services; from R&D to Final Solutions. Nov., 2010. doi: 10.5772/10399.
- Макарова И.В., Хабибуллин Р.Г., Ушенин А.М., Михеева С.А., Карабцев В.С. Компьютер в инженерном образовании: новые возможности в подготовке инженеров для креативной экономики // Инженерное образование. 2016. №20. С.72-79.
- Асанов А.З., Мышкина И.Ю., Грудцына Л.Ю. Прогнозирование востребованности компетенций при корректировке программ обучения с помощью когнитивных моделей // Онтология проектирования. 2019. Т.9. №2 (32). С.203–213. doi: 10.18287/2223-9537-2019-9-2-203-213.
- Болотова Л.С. Системы искусственного интеллекта: модели и технологии, основанные на знаниях. Москва: Финансы и статистика, 2012. 664 с.
- Флах П. Машинное обучение. Москва: ДМК, 2015. 400 с.
- KG Course 2021. Курс по графам знаний (Knowledge Graphs) и как их готовить в 2021 году. На русском языке. https://migalkin.github.io/kgcourse2021/.
- Perozzi B., Al-Rfou R., Skiena S. DeepWalk: Online learning of social representations // KDD '14: Proceedings of the 20th ACM SIGKDD international conference on Knowledge discovery and data mining. August 2014. Pages 701–710. doi: 10.1145/2623330.2623732.
- Grover Aditya, Leskovec Jure. node2vec: Scalable Feature Learning for Networks // KDD '16: Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. August 2016. P.855–864. https://doi.org/10.1145/2939672.2939754.
- Ali M., Berrendorf M., Hoyt C. T., Vermue L., Galkin M., Sharifzadeh S., Fischer A., Tresp V., Lehmann J. Bring-ing Light Into the Dark:A Large-scale Evaluation of Knowledge GraphEmbedding Models Under a Unified Framework. 2020. doi: 10.48550/arXiv.2006.13365.
- Jean-Baptiste Lamy. Ontologies with Python Programming OWL 2.0 Ontologies with Python and Owlready2. Apress, 2021. 270 p.
- Yang Bishan, Yih Wentau, He Xiaodong, Gao Jianfeng, Deng Li. Embedding Entities and Relations for Learning and Inference in Knowledge Bases // ICLR’15: Proceedings of the 3rd International Conference on Learning Rep-resentations. USA. May 7-9, 2015. https://arxiv.org/abs/1412.6575.