Здравствуйте!
Тут мне дали такую задачу.
У нас есть база клиентов с адресами. Есть выездные менеджеры, за которыми закреплено n-ое количество компаний. Со временем база с клиентами пополняется.
Какие задачи система должны решать:
1) На день определить оптимальный список компаний, по которым менеджер должен проехать. (Метро + пешком)
Как я это понимаю. Надо взять список всех компаний, закрепленные за этим менеджером, точку старта(из дома поедет или из офиса), посчитать расстояние между организациями(через яндекс карты API вроде можно) и выбрать цепочку n организаций с минимальным расстоянием. Пока трудно продумать реализацию, буду признателен если укажете, в какую сторону копать и что почитать ибо с алгоритмами я не сильно силен.
2) При добавлении нового клиента, определить подходящего менеджера.
Тут я так понимаю, надо взять адрес клиента и найти ближайший существующий адрес клиента, посмотреть кто его обслуживает и назначить новой компании этого менеджера.
3) Если у менеджера появилось время, то показать ему ближайшие адреса клиентов, к кому еще можно заехать.
Наверное для меня это сложная задача, но она мне очень интересно и есть огромное желание ее реализовать!