О2_Routing_МенеджерЦелевойФункции.УстановитьКоэффициентРесурса
Задаёт коэффициент стоимости, пропорциональной суммарному расходу ресурса по маршруту транспортного средства. Применяется, когда необходимо штрафовать за большой пробег, время в пути, расход топлива и т.п. Основной способ вызова: Модель.ЦелеваяФункция().УстановитьКоэффициентРесурса(Ресурс, Коэффициент, ТранспортноеСредство).
Синтаксис
Модель.ЦелеваяФункция().УстановитьКоэффициентРесурса(
Ресурс,
Коэффициент,
ТранспортноеСредство
)
Параметры
- Ресурс — ФиксированнаяСтруктура, Строка, Число — ресурс модели:
- ФиксированнаяСтруктура — объект ресурса;
- Строка — имя ресурса, ищется в реестре модели;
- Число — индекс ресурса (с нуля).
- Коэффициент — Число — коэффициент стоимости.
- ТранспортноеСредство — ФиксированнаяСтруктура, Строка, Число, Неопределено — если задано, применяется только к указанному ТС;
Неопределено(по умолчанию) — ко всем ТС.
Возвращаемое значение
- ОбработкаОбъект.О2_Routing_МенеджерЦелевойФункции — текущий менеджер; позволяет строить цепочки вызовов.
Описание
Метод Модель.ЦелеваяФункция().УстановитьКоэффициентРесурса(...) добавляет в целевую функцию слагаемое вида Коэффициент × ЗначениеРесурсаВФинише(ТС) — итоговый накопленный расход ресурса по всему маршруту транспортного средства. Это позволяет минимизировать, например, общий пробег автопарка или суммарное время работы водителей.
В отличие от УстановитьКоэффициентТранзита, который учитывает прирост ресурса на каждой дуге отдельно, данный метод оперирует итоговой суммой по маршруту.
Пример
// Минимизируем суммарное время в пути по всем ТС
Модель.ЦелеваяФункция().УстановитьКоэффициентРесурса("Время", 1);
// Для конкретного ТС с другим коэффициентом
Модель.ЦелеваяФункция().УстановитьКоэффициентРесурса("Время", 2, "Приоритетный");