ТЗ:
1. Написать код, который создает направленный граф с 15 вершинами. Ребра графа задаются случайным образом, но у каждой вершины содержится от 1 до 4 ребер. У ребер задать критерии (сложность, стоимость, времязатраты), которые будут являться весовыми коэффициентами в выбранной размерности. Найти оптимальный путь от первой вершине к последней при помощи алгоритма дейкстры для каждого критерия (оптимальный по времени, оптимальный по сложности и оптимальный по цене). Вывести 3 графа и закрасить в маршрут, в консоль вывести путь повершинно и общую стоимость по показателю. Посчитать оптимальный путь по смешанному критерию (оптимальный сразу по 3 пунктам (фактически взять сумма 3 критериев на вершине, назвать это compaund/mixed и воспользоваться дейкстрой снова)) и вывести график. Добавить переменную для фиксирования диапазона любого критерия в выбранной размерности (например, time = [0;100], создать 3-4 случайных пути на графе, для каждого посчитать стоимость и умножить на 1.2. На основании расчетов сделать вывод какие из данных путей попадают в диапазон р какие из них наиболее оптимальны( чем меньше, тем лучше, очевидно)
2. Добавить к ребрам графа значения потока (пропускной способности/мощности) и посчитать максимальный выходящий поток и максимальный выходящий поток с минимальной стоимостью. Нарисовать соответствующие пути потоков
Реализовать все на языке python
использовать библиотеку networkx и любые другие опционально
Создать простой прототип при помощи библиотеки streamlit с графиками