1VK написал(а):
Пишите очень интересно, но пока верится с трудом
1. Вы можете поискать вакансии по тем ключевым словам, что я дал, и почитать описания. Там везде нужен симбиоз математики и программирования. И то и другое - это инструменты, я не спорю, просто нужны те, кто умеет ими пользоваться. Может я ошибаюсь, но большинство программистов вряд ли смогут ответить с ходу что такое ARMA, а большинство математиков вряд ли сходу ответят как сбалансировать какое-нибудь красно-черное дерево.
2. У вас есть контейнеровоз который вмещает ~20K контейнеров. Понятно, что вы не можете брать произвольный контейнер или брать их в произвольном порядке. Время полной загрузки или разгрузки контейнеровоза несколько месяцев. На практике такое не происходит почти никогда, т.к. корабль постоянно перемещается между портами, где с него снимают часть груза и загружают часть нового груза. Заходя в порт "капитан" должен заблаговременно (пара недель) сообщить сколько времени он там планирует пробыть. Превышение времени нелинейно штрафуется. Оплачивается в любом случае заявленное время. Кроме того заранее нужно заказать услуги порта. Есть еще грузы с объявленной ценностью, которые будет очень накладно потерять в случае шторма. Да, не все грузы успешно доплывают до порта назначения. В любом порту, помимо заранее запланированных грузов, "капитан" может взять дополнительные, если он понимает, что он нигде на известном маршруте не получит "штрафы" превышающие прибыль от перевозкию.... и т.д. и т.п....
Что бы было понятно, это рынок очень жесткой ценовой конкуренции. Единственная переменная в себестоимости которую можно оптимизировать - это количество времени проводимого в порту. Вот весь рынок это и оптимизирует. Конкуренция жесткая. Соответственно модель должна:
- динамически пересчитывать время проводимое в каждом известном порту на основе знания о том где какой контейнер находится;
- считать количество внеплановых грузов, которое можно принять в текущем порту исходе из вероятностей получения аналогичных грузов в следующих портах;
- бороться с пересортом, когда порт ошибается и ставит некоторые контейнеы не в то место. Соответственно приходится строить трехмерную карту вероятностей, которую тоже надо динамически пересчитывать в порту выгрузки.
Используемые подходы под NDA. Могу только задачу описывать в общем виде.