Додаткові функції

Візуалізація графу

Додатково у коді пакету передбачено функцію save_procedure_graph(), яка призначена для візуального збереження графу послідовностей операцій (залежності від попередніх). Приймає атрибути:

  • t: список тривалості операцій (для відображення вартості нод)

  • file_name: назва або шлях для збереження

  • procedure_graph: граф залежності у вигляді словника python.

Наприклад:

t = [5, 6, 2, 5, 4, 3],

procedure_graph = {1: [],
                   2: [],
                   3: [1],
                   4: [2, 3],
                   5: [1, 2],
                   6: [4]},

save_procedure_graph(procedure_graph=procedure_graph,
                     t=t,
                     file_name='task1_graph.html')

За результом роботи зберігається файл з інтерактивним рухливим графом:

Граф послідовності виконання

Перетворення формул Latex

Додатково у коді програмного пакета передбачено клас LatexConverter(), який приймає список формул (вирази, рівності, нерівності) та адаптує написання для перенесення у документи формату Latex.

constraints = ['5 * x[1][1] + 6 * x[2][1] + 2 * x[3][1] <= 10',
               '5 * x[1][2] + 6 * x[2][2] + 2 * x[3][2] + 5 * x[4][2] + 4 * x[5][2] <= 10']
LatexConverter(constraints=constraints).print_latex()
# 5 \cdot x_{1,1} + 6 \cdot x_{2,1} + 2 \cdot x_{3,1} \leq 10
# 5 \cdot x_{1,2} + 6 \cdot x_{2,2} + 2 \cdot x_{3,2} + 5 \cdot x_{4,2} + 4 \cdot x_{5,2} \leq 10