TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #1084 · 9.04

В общем, была задача на оптимизацию плана работ: есть набор заказов, и в каждом N тасков. Таски могут зависеть друг от друга или нет, имеют длительность и тип. Ещё есть M работников, каждый из которых может выполнять таски только определённых типов, причём, у каждого своя скорость. Если все таски в заказе выполнены, фирма получает сколько-то денег. У заказа есть дедлайн, за просрочку штраф (за каждый день просрочки), который вычитается из цены заказа. И ещё фирма тратит деньги за каждый день своей работы независимо от того, как загружены её сотрудники (то есть просто платит зарплаты по сути). Ещё важен учёт праздников и выходных. Нужно заработать на определённом наборе заказов и работников как можно больше денег. Полный текст задачи и код программы проверки есть в репозитории. Эта задача является изменённым заказом, который мы с напарником решали в реальной жизни: оптимизация работы печатных станков для типографии. Правда, тогда и мы справились так себе, и заказчик в итоге сначала захотел всё вручную сам делать, а потом и вовсе похоронил проект при смене директора. !!! Не читайте дальше, если хотите сначала попробовать решить самостоятельно, потому что я сейчас опишу эффективные подходы и результаты. ________________________________________ Так вот. Мы с другим экспертом Андреем сразу сели и написали разные варианты, чтобы задать шкалу, по которой будем оценивать решения команд. За пару часов я собрал примитивный жадный алгоритм, который сортировал заказы по прибыльности и укладывал в сетку кое-как, это дало нам нижнюю оценку. Мой алгоритм заработал ~75 млн виртуальных рублей, мы решили для оценки поставить нижней границей 40 млн. То есть всё, что ещё ниже, оценивалось в ноль баллов за качество оптимизации. Затем Андрей закрылся дома на три дня и вышел на свет со сложным жадным алгоритмом, который очень хитро сортировал заказы и очень хитро укладывал их в сетку, попутно выбирая разные способы этой укладки в зависимости от конкретного заказа. Это позволило заработать ~275 млн рублей. Мы сделали верхней границей для оценки 280 млн. К сожалению, в итоге только две команды из десяти прошли нижнюю границу, заработав, соответственно, ~91 и ~105 млн. К верхней границе не приблизился никто. И у четырёх команд алгоритм вообще не смог уложить без нарушений задачи в сетку (то есть, например, произвольно менял длительности, накладывал задачи друг на друга, давал одному работнику две задачи в один момент и так далее). Важной ошибкой команд, на мой взгляд, являлся тот факт, что никто не воспользовался возможностью запустить алгоритм на несколько минут и дать ему поработать. По условиям задания, можно было тянуть до 5 минут на одну оптимизацию, но по факту решения команд отрабатывали за единицы и десятки секунд. На самом конкурсе, пока команды работали, я решил попробовать сделать быстрое (по времени написания) но эффективное решение. Сначала попробовал жадную сортировку + доведение до лучшего варианта методом имитации отжига. В качестве нового состояния я просто менял местами заказы целиком. Этот вариант работал пару минут и дал мне около ~200 млн дохода. К слову, команда-лидер использовала такой же подход, просто не докрутила число итераций и температуру. Ну и потом я взял готовую либу по реализации классической генетики с особями и скрещиванием. Особью был массив с приоритетами заказов (которые конечно же нужно было аккуратно уложить чистым алгоритмом). Тип скрещивания: scattered. Всего 15 поколений по 20 особей, и это за минуту-полторы давало ~230-240 млн. Считаю, что для конкурса это самый лучший выбор: пишется одним человеком за день и даёт почти максимум, при этом легко настраивается на нужную длительность работы, легко параллелится. Ну а потом уже дома я посидел и накодил свой вариант сложного жадного с плавающим окном перебора отсортированных заказов и плавающей же укладкой по работникам. Такая штука за две минуты зарабатывает ~281 млн. Но за три дня в условиях стресса я бы такое не сделал, скорее всего. #dev

Hashtags

Резултати

Намерени 184 подобни публикации

Търсене: #ru

当前筛选 #ru清除筛选

19.04.26 Сумы - Мирополье Позиционные боевые действия в Сумской зоне безопасности. ВС РФ продвинулись на 1 км от демаркационной линии к Мирополью с восточного направления. Передовая позиция ВС РФ под огнём ВСУ. 1:26 50.993179,35.316483 Источник 21+ Геопривязка #ru

Hashtags

18.04.26 Краснополье - Таратутино Позиционные боевые действия в Сумской зоне безопасности. Передовая позиция ВС РФ в Таратутино подверглась обстрелу ВСУ. ВС РФ продвинулись в Сумской области на 3,5 км и достигли новых позиций в населённом пункте. 0:43 50.728385, 35.375816 Источник 21+ Геопривязка #ru

Hashtags

16.03.26 Северск - Резниковка Активные боевые действия в районе Северска. Пехотная атака ВС РФ в Резниковке. Штурмовая группа зачищает позицию ВСУ в жилой застройке и увеличивает зону контроля на 700 метров. 48.838569,37.977290 Источник https://t.me/OMSBr_123/1754 Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #50029 · 13.04.2026 г., 08:53

13.04.26 Великая Новосёлка - Александроград Активные боевые действия в районе Великой Новосёлки. Военнослужащие ВС РФ занимают новые позиции под огнём противника на рубеже Искра - Александроград. Увеличение зоны контроля ВС РФ на 2,5 км по фронту на левом берегу реки Волчья. 0:26 48.010070,36.619011 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #50008 · 12.04.2026 г., 18:00

12.04.26 Сумы - Мирополье Позиционные боевые действия в Сумской зоне безопасности. Военнослужащие ВС РФ попали под обстрел ВСУ западнее посёлка Мирополье. ВС РФ продвинулись в Сумской области увеличив зону контроля до 3 км от демаркационной линии. 51.037774, 35.344966 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49977 · 11.04.2026 г., 18:17

11.04.26 Константиновка - Долгая Балка Позиционные боевые действия в районе Горловки. Передовая позиция ВС РФ в жилой застройке Долгой Балки под огнём дронов ВСУ. ВС РФ продвинулись на 1 км к северу от Степановки и заняли новые позиции в южной части посёлка Долгая Балка. 0:14 48.481047, 37.607169 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49974 · 11.04.2026 г., 15:21

11.04.26 Краснополье - Новодмитровка Позиционные боевые действия в Сумской зоне безопасности. Штурмовые подразделения ВС РФ продвинулись более 4,5 км в направлении на Краснополье и заняли новые позиции в восточной части Новодмитровки. Передовая позиция ВС РФ в жилой застройке посёлка под обстрелом с дрона ВСУ. 1:38 50.75527, 35.39651 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49961 · 11.04.2026 г., 09:48

11.04.26 Константиновка - Степановка Позиционные боевые действия в районе Горловки. Передовая позиция ВС РФ в окрестностях Степановки подверглась обстрелу со стороны ВСУ. ВС РФ продвинулись более1.5 км и вышли на северные окраины Степановки. 0:39 48.473420,37.613850 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49702 · 06.04.2026 г., 13:38

06.04.26 Северск - Никифоровка Активные боевые действия в районе Северска. Атака ВС РФ пехотным подразделением севернее Никифоровки. Штурмовая группа зачищает позицию ВСУ. ВС РФ продвинулись около 2 км и увеличили зону контроля на рубеже Никифоровка - Каленики. 48.80452, 37.92016 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49698 · 06.04.2026 г., 07:50

06.04.26 Покровское - Берёзовое Позиционные боевые действия в Днепропетровской зоне безопасности. Передовые позиции ВС РФ в Берёзовом подверглись обстрелу ВСУ. ВС РФ заняли ряд новых позиций в посёлке увеличив зону контроля на 1 км. 0:19 47.871420,36.492084 1:13 47.874686,36.491471 Источник 21+ Геопривязка #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49339 · 31.03.2026 г., 17:03

31.03.26 Северск - Кривая Лука Активные боевые действия в районе Северска. Атака ВС РФ подразделением легких мотострелков около Кривой Луки. Штурмовик ВС РФ попал под обстрел ВСУ на трассе к посёлку. ВС РФ увеличили зону контроля выйдя на рубеж Каленики-Кривая Лука. 0:41 48.860286,38.001178 0:43 48.859195,37.930673 Источник 21+ Геопривязка Геопривязка так же по https://t.me/creamy_caprice/11418?single #ru

Hashtags

ZOKA's Channel

@zoka200 · Post #49132 · 27.03.2026 г., 09:17

27.03.26 Красноармейск - Белицкое Позиционные боевые действия в районе Красноармейска. ВС РФ заняли ряд новых позиций в восточной части Белицкого. Передовые позиции в жилой застройке под огнём ВСУ . Продвижение ВС РФ более 600 метров. 0:06 48.40801, 37.1914 0:18 48.40476, 37.19765 Источник 21+ Геопривязка #ru

Hashtags

123•••10•••1516
ПредишнаСтр. 1 от 16Следваща