> подход диаметрально противоположный, зацените, тогда вроде всем зашло
я прочитал, заценил, интересная статья, но:
1) подход через соревнования или ДЗ, действительно, позволяет гораздо больше понять про кандидата. Надо заставить человека реально поработать, и все становится ясно. Но с таким подходом можно нанимать либо студентов, либо очень мотивированных работать именно у вас людей, другие не станут тратить время. Да даже неприлично как-то работающего человека заставлять. Я тоже применяю иногда ДЗ, но только в самых крайних случаях (и когда уверен, что кандидат сам это позитивно воспримет, ведь ДЗ позволит и ему тоже понять, интересны ли ему наши задачи), так вообще это запрещенный инструмент.
2) сама за себя говорит цитата: «Это стоило больших усилия для меня лично и для нашей команды.»
Так что подход у вас, конечно, прикольный, но на вооружение его вряд ли стоит брать. Более того, вряд ли вы сами захотите подобным образом развлекаться в следующий раз. Процесс найма в компанию должен быть масштабируемым и повторяемым, описанный процесс этому не соответствует.
Еще меня местами зацепили подколки, троллинг, и в целом не видно по тексту, чтобы вы с уважением относились к кандидатам, но возможно, что это такая манера изложения, а в жизни было все плюшево.
Если вы про конкретно данную статью, то выглядит так, что
1) у автора хорошее резюме, им заинтересовались разные команды
2) он не особо хорошо решал задачи, одна команда теряла интерес и отваливалась, другая подключалась и начинала снова «с нуля», затем история повторялась
3) в системе найма никто не сказал «эй, не надо спрашивать пять раз одно и то же, доверяйте результатам других команд», в результате получилась какая-то ерунда.
Вы сами уже все нашли )
Я лишь могу подтвердить, что числа на левелсах — адекватные. Понятно, у кого-то меньше будет, у кого-то больше, но в целом все так.
> примерно +250
это без хвоста
с хвостом примерно +1000
> хвост — ну он на то и хвост, что он когда-то потом будет
это верно
но те, кто пришли чуть раньше и нарастили его к 2020 году, получили при тех же условиях (17С) гораздо больше, +1500 или даже +2000 в месяц. Да, это не навсегда, а только пока вестятся акции, которые выдавали, когда курс был 30 за акцию, а сейчас стал 60. Если курс дальше не вырастет, то такого больше не будет. А если вырастет — то будет.
Безусловно.
Если вдруг по какой-то причине ее нельзя будет ввозить, вы всегда сможете вколоть ее в Белоруссии. Там уже известный центр производства и экспорта морепродуктов, теперь еще и центр медицинского туризма будет.
Ожидание: есть принципы проектирования БД, позволяющие изначально правильно выстроить ее архитектуру, чтобы и гибко было, и работало быстро, сейчас мне про них доступно и коротенечко расскажут.
Реальность: есть несколько способов размещать сущности в таблицах БД. Если вы вдруг облажались, решив, что номер паспорта это свойство, а не отдельная сущность, и через некоторое время выяснилось, что связь человек-паспорт это один-ко-многим, то вы можете переделать схему БД, чтобы стало правильно. А потом еще раз переделать, когда вскроется следующая проблема. И еще раз.
на фото Кукуц
хоть и с «розоовыми волосами», но он не опровергает, а подтверждает тезис автора о том, что надо следить за своим внешним видом, т.к. он, судя по продуманности и частоте изменений, много времени этому уделяет
Спасибо, интересный текст. Насколько я понимаю, основная проблема — это отсутствие у яндексной маршрутизации полноценной поддержки грузового графа дорог. Это известная задача, пока что начали с Москвы и ее «грузового каркаса».
Правда, некоторые моменты в вашей статье остались неясными, например, про мобильное приложение и ключ :) Это же не масштабируемо. Они что-то даже цены не пишут (или я не нашел), ради интереса запросил ключ через сайт, пока не ответили.
как это вы VRP решаете с помощью одного лишь алгоритма Дейкстры, как указано в статье
Этого не указано в статье. Если вы считаете иначе, то приведите цитату, пожалуйста.
Мы с вами как будто на разных языках разговариваем. Вы то ли троллите, то ли правда не понимаете, что там написано. Поэтому я прекращу комментировать, можете считать, что я слился.
Это все отлично и правильно, более того, логисты руками «на коленках» именно так и делают: кластеризуют точки на глазок, а потом внутри кластеров, по сути, решают TSP-задачу с окнами. Или не решают, а отдают на откуп водителю. В начале статьи есть ссылка на мою статью, там даже картинка с кластерами приведена.
Но только все эти манипуляции
1) очевидно, не оптимальны — вы теряете несколько процентов от оптимума уже в момент кластеризации
2) на практике, довольно сложны и трудоемки. Вам надо потюнить параметры кластеризации, потюнить параметры решения TSP-задач, обернуть это все в конвейер, если вы решаете задачу больше одного раза.
Гораздо лучше иметь сразу нормальный VRP-солвер, не пытаться сделать его из TSP-солвера и такой-то матери.
Как я понимаю, в вашей работе нужно примерно оценить количество машин, тогда ваш подход понятен и правилен: из имеющихся инструментов с небольшими доработками получим результат, который на 10% хуже оптимума. Нам же надо попадать в оптимум, поэтому, возвращаясь к теме статьи, нам нужна честная большая матрица расстояний, посчитанная максимально быстро.
О, это интересно!
Я вряд ли смогу повторить на своей стороне, потому что надо дорожный граф засунуть в постгрес. Можете ли сказать,
1) верно ли я понимаю, что вы сначала отдельным запросом вычисляете матрицу с помощью pgr_dijkstraCostMatrix, и дальше этот подзапрос не пересчитывается заново? Сколько времени занимает вычисление матрицы для 5к точек в постгресе?
2) что делает pgr_dijkstraSymmetrizeCostMatrix? В доке по pgRouting я такой функции не вижу
3) в pgr_TSP можно задавать processing time и еще всякие параметры отжига. Верно ли, что если давать ему работать не несколько секунд, а больше (скажем, полчаса), то общий TSP-маршрут будет сильно (на 5-10%) оптимальнее?
Ну я вам сразу написал, вы неправильно понимаете, какую задачу мы решаем. Возможно, в тексте Тихона это не совсем удачно написано, но вроде очевидно, что 5000 заказов никак одной машиной в реальной жизни нельзя развезти, то есть, это не может быть TSP-задача на 5000 точек.
Как насчет того, что ваше утверждение про разрезание TSP неверно? Пример, который я привожу выше — это простейшая VRP задача, без Time Windows.
да, я согласен
Раунды по систем-дизайну делают для старших грейдов.
я прочитал, заценил, интересная статья, но:
1) подход через соревнования или ДЗ, действительно, позволяет гораздо больше понять про кандидата. Надо заставить человека реально поработать, и все становится ясно. Но с таким подходом можно нанимать либо студентов, либо очень мотивированных работать именно у вас людей, другие не станут тратить время. Да даже неприлично как-то работающего человека заставлять. Я тоже применяю иногда ДЗ, но только в самых крайних случаях (и когда уверен, что кандидат сам это позитивно воспримет, ведь ДЗ позволит и ему тоже понять, интересны ли ему наши задачи), так вообще это запрещенный инструмент.
2) сама за себя говорит цитата: «Это стоило больших усилия для меня лично и для нашей команды.»
Так что подход у вас, конечно, прикольный, но на вооружение его вряд ли стоит брать. Более того, вряд ли вы сами захотите подобным образом развлекаться в следующий раз. Процесс найма в компанию должен быть масштабируемым и повторяемым, описанный процесс этому не соответствует.
Еще меня местами зацепили подколки, троллинг, и в целом не видно по тексту, чтобы вы с уважением относились к кандидатам, но возможно, что это такая манера изложения, а в жизни было все плюшево.
1) у автора хорошее резюме, им заинтересовались разные команды
2) он не особо хорошо решал задачи, одна команда теряла интерес и отваливалась, другая подключалась и начинала снова «с нуля», затем история повторялась
3) в системе найма никто не сказал «эй, не надо спрашивать пять раз одно и то же, доверяйте результатам других команд», в результате получилась какая-то ерунда.
Я лишь могу подтвердить, что числа на левелсах — адекватные. Понятно, у кого-то меньше будет, у кого-то больше, но в целом все так.
Здесь, безусловно, есть вина собеседующих. Но вряд ли исключительно лишь их вина.
это без хвоста
с хвостом примерно +1000
> хвост — ну он на то и хвост, что он когда-то потом будет
это верно
но те, кто пришли чуть раньше и нарастили его к 2020 году, получили при тех же условиях (17С) гораздо больше, +1500 или даже +2000 в месяц. Да, это не навсегда, а только пока вестятся акции, которые выдавали, когда курс был 30 за акцию, а сейчас стал 60. Если курс дальше не вырастет, то такого больше не будет. А если вырастет — то будет.
74 плюса за этот комментарий, минимум 74 хабрапользователя согласны с этой точкой зрения
Уважаемые товарищи, существует ли в мире какой-либо продукт, который вы считаете «не говном»?
Если вдруг по какой-то причине ее нельзя будет ввозить, вы всегда сможете вколоть ее в Белоруссии. Там уже известный центр производства и экспорта морепродуктов, теперь еще и центр медицинского туризма будет.
Ожидание: есть принципы проектирования БД, позволяющие изначально правильно выстроить ее архитектуру, чтобы и гибко было, и работало быстро, сейчас мне про них доступно и коротенечко расскажут.
Реальность: есть несколько способов размещать сущности в таблицах БД. Если вы вдруг облажались, решив, что номер паспорта это свойство, а не отдельная сущность, и через некоторое время выяснилось, что связь человек-паспорт это один-ко-многим, то вы можете переделать схему БД, чтобы стало правильно. А потом еще раз переделать, когда вскроется следующая проблема. И еще раз.
Спасибо, кэп, но так я и сам умею.
хоть и с «розоовыми волосами», но он не опровергает, а подтверждает тезис автора о том, что надо следить за своим внешним видом, т.к. он, судя по продуманности и частоте изменений, много времени этому уделяет
Известно же, чем заканчивается: не спишь, расстраиваешься, еще и минусов в карму, небось, напихали.
Правда, некоторые моменты в вашей статье остались неясными, например, про мобильное приложение и ключ :) Это же не масштабируемо. Они что-то даже цены не пишут (или я не нашел), ради интереса запросил ключ через сайт, пока не ответили.
Этого не указано в статье. Если вы считаете иначе, то приведите цитату, пожалуйста.
Мы с вами как будто на разных языках разговариваем. Вы то ли троллите, то ли правда не понимаете, что там написано. Поэтому я прекращу комментировать, можете считать, что я слился.
Но только все эти манипуляции
1) очевидно, не оптимальны — вы теряете несколько процентов от оптимума уже в момент кластеризации
2) на практике, довольно сложны и трудоемки. Вам надо потюнить параметры кластеризации, потюнить параметры решения TSP-задач, обернуть это все в конвейер, если вы решаете задачу больше одного раза.
Гораздо лучше иметь сразу нормальный VRP-солвер, не пытаться сделать его из TSP-солвера и такой-то матери.
Как я понимаю, в вашей работе нужно примерно оценить количество машин, тогда ваш подход понятен и правилен: из имеющихся инструментов с небольшими доработками получим результат, который на 10% хуже оптимума. Нам же надо попадать в оптимум, поэтому, возвращаясь к теме статьи, нам нужна честная большая матрица расстояний, посчитанная максимально быстро.
Я вряд ли смогу повторить на своей стороне, потому что надо дорожный граф засунуть в постгрес. Можете ли сказать,
1) верно ли я понимаю, что вы сначала отдельным запросом вычисляете матрицу с помощью pgr_dijkstraCostMatrix, и дальше этот подзапрос не пересчитывается заново? Сколько времени занимает вычисление матрицы для 5к точек в постгресе?
2) что делает pgr_dijkstraSymmetrizeCostMatrix? В доке по pgRouting я такой функции не вижу
3) в pgr_TSP можно задавать processing time и еще всякие параметры отжига. Верно ли, что если давать ему работать не несколько секунд, а больше (скажем, полчаса), то общий TSP-маршрут будет сильно (на 5-10%) оптимальнее?
Как насчет того, что ваше утверждение про разрезание TSP неверно? Пример, который я привожу выше — это простейшая VRP задача, без Time Windows.
Девятнадцатая ссылка из статьи про Дейкстру в английской википедии:
Combining Hierarchical and Goal-Directed Speed-Up Techniques for Dijkstra's Algorithm
у всех давно и прекрасно работает
Ну нет же, это выглядит очевидно неверным. Я выше привел пример.