О2_MinCostFlow_МенеджерДуг.Добавить
Создаёт и регистрирует в модели новую дугу графа. Основной способ вызова — через менеджер дуг модели: Модель.Дуги().Добавить(Хвост, Голова, МаксимальныйПоток, Стоимость, Имя).
В отличие от модели максимального потока, здесь дополнительно указывается стоимость транспортировки единицы потока по дуге — это ключевой параметр задачи минимизации стоимости.
Синтаксис
Модель.Дуги().Добавить(Хвост, Голова, МаксимальныйПоток, Стоимость, Имя)
Параметры
- Хвост — Число — номер хвостового узла дуги. Неотрицательное целое число.
- Голова — Число — номер головного узла дуги. Неотрицательное целое число.
- МаксимальныйПоток — Число — пропускная способность дуги. Неотрицательное целое число.
- Стоимость — Число — стоимость транспортировки единицы потока по дуге. Неотрицательное целое число.
- Имя — Строка, Неопределено — уникальное имя дуги. Должно быть валидным идентификатором. Если не указано, присваивается автоматически по индексу дуги:
_<Индекс>(нумерация с 0).
Возвращаемое значение
- ФиксированнаяСтруктура — данные зарегистрированной дуги.
Пример
Модель = О2.Модели().МодельПотокаМинимальнойСтоимости().СоздатьМодель();
// Источник с объёмом производства 5
Модель.Узлы().УстановитьВклад(0, 5);
// Потребитель с объёмом спроса 5
Модель.Узлы().УстановитьВклад(3, -5);
Модель.Дуги().Добавить(0, 1, 10, 2, "a");
Модель.Дуги().Добавить(0, 2, 10, 3, "b");
Модель.Дуги().Добавить(1, 3, 10, 4, "c");
Модель.Дуги().Добавить(2, 3, 10, 1, "d");