Всем привет! Делаю систему по оценке персонала. Что-то вроде методики 360 градусов. Есть следующие сущности: подразделение, должность и персона.
Существуют определенные правила, кто и кого может оценивать. Например: Директор организации может оценивать своего заместителя, заместитель может -> директора, начальник отдела может оценивать своих подчиненных, начальник отдела может оценивать других начальников отдела, сотрудники могут оценивать своих коллег по отделу, сотрудники могут оценивать своих коллег со смежного отдела. Т.е. приведенные выше правила не привязаны к конкретному человеку, а только к его должности.
Нужно составить список, кто кого оценивает так, чтобы каждого сотрудника оценили ровно 5 человек.
Мне пришла в голову мысль, что эту задачу можно решить с помощью теории графов. Если все правила переложить на конкретных сотрудников, то можем получить пары, кто кого может оценивать.
Т.е. можно представить, что персона это вершина, а ориентированное ребро показывает, кто кого оценивает.
Как составить такой граф, чтобы из каждого вершины выходило равно 5 ребер?
Можете подсказать в каком направлении копать? Спасибо!