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

Резултати

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

Търсене: #psd

当前筛选 #psd清除筛选
Behzod Otajonov visual artist

@Behzod_Otajonov · Post #229 · 26.10.2021 г., 15:00

#psd Bugun mashhur CGI artist Dmitriy Glazirin'ning "Frozen world" nomli ishining PSD faylini kanalga joylayman. Bu fayl orqali siz professionallar qanday "слой"lardan foydalanishini bilib olasiz. @behzod_otajonov

Hashtags

Behzod Otajonov visual artist

@Behzod_Otajonov · Post #198 · 29.09.2021 г., 16:12

#psd Design battle uchun rasm tayyorlash oson bo‘lmayapti. Ideya topib, uni vizual tomondan chiroyli qilish ancha qiyin ish. Lekin, ranglar garmoniyasi, kompozitsiya qoidalari bo‘yicha ko‘rgan darslarimni rosa foydasi tegyapti. @behzod_otajonov

Hashtags

Loveridge: Name: 35款2026马年新春红包封面设计模板合集 (AI+PSD双格式) Size: 1.4GB 2026新年金马贺岁马年红包,融入祥云骏马、福字、中国结、金币等传统元素,适配品牌礼盒、商场赠品、广告礼包等使用场景。支持文字替换、Logo加印、色彩调整,包含AI、PSD双格式。 Link: 👉Press me and click START to get the hidden link #新春红包#红包封面#2026马年新春红包封面#模板#素材#PSD#Quark#求转存 ♾@gdsharing♾Telegram/电报/纸飞机的网页端:可能无法点击链接

Libertà è ragione

@libertaeragione · Post #4396 · 31.07.2025 г., 12:56

#Portogallo#Palestina Primo Ministro Luís #Montenegro (#PSD|EPP): “Il Governo ha deciso di consultare Sua Eccellenza il Presidente della Repubblica e i partiti politici rappresentati nell'Assemblea della Repubblica, al fine di valutare il riconoscimento dello Stato palestinese, in una procedura che potrà concludersi durante la Settimana di alto livello dell'80ª Assemblea Generale dell’#ONU, che si terrà a New York il prossimo settembre”. @OsservatorioEsteri

Tutto Elezioni

@tuttoelezioni · Post #867 · 04.05.2025 г., 08:22

#Romania🇷🇴 #Presidenziali Crin #Antonescu, 65 anni e già docente di storia, è originario di Tulcea (Dobrugia). È stato Presidente del Senato rumeno dal 2012 al 2014 (e Presidente ad interim della Romania nel 2012), nonché Presidente del Partito Nazionale Liberale (#PNL|PPE) dal 2009 al 2014. È stato più volte deputato e senatore. È attualmente indipendente, ma rappresenta il candidato della coalizione elettorale "Romania Avanti" (ro. România Înainte), che include il Partito Social Democratico (#PSD|S&D), il Partito Nazionale Liberale e l'Unione Democratica Magiara di Romania (#UDMR|PPE), ovvero i partiti che sostengono l'attuale governo guidato da Marcel #Ciolacu (PSD). @TuttoElezioni

Tutto Elezioni

@tuttoelezioni · Post #870 · 04.05.2025 г., 08:51

#Romania🇷🇴 #Presidenziali Victor #Ponta, 52 anni, è originario di Bucarest (Muntenia). Avvocato di professione, è stato deputati dal 2004 al 2020, Presidente del Partito Social Democratico (#PSD|S&D) dal 2010 al 2015, è Primo Ministro dal 2012 al 2015. Attualmente è di nuovo deputato, come indipendente nel gruppo parlamentare del PSD. Ponta si candidò anche alle elezioni presidenziali del 2014, dove giunse al ballottaggio con Klaus #Iohannis, sostenuto dal Partito Nazionale Liberale (#PNL|PPE); in quella tornata Ponta venne sconfitto da Iohannis. La sua candidatura è sostenuta da diversi partiti minori, tra i quali PRO Romania (#PRO|S&D), di cui è stato Presidente dal 2018 al 2024. @TuttoElezioni

Tutto Elezioni

@tuttoelezioni · Post #919 · 05.05.2025 г., 08:53

#Romania🇷🇴 #Presidenziali Risultati preliminari. Sezioni scrutinate: 20.085/20.085 (100%) 🟧 George #Simion (#AUR|ECR): 40,96% 🟩 Nicușor #Dan (Ind.): 20,99% 🟦 Crin #Antonescu (#PSD|S&D, #PNL|PPE, #UDMR|PPE): 20,07% 🟥 Victor #Ponta (Ind.): 13,04% 🟦 Elena #Lasconi (#USR|RE): 2,68% Altri: 2,26% @TuttoElezioni

Tutto Elezioni

@tuttoelezioni · Post #918 · 04.05.2025 г., 22:30

#Romania🇷🇴 #Presidenziali Risultati parziali. Sezioni scrutinate: 19.915/20.085 (99,15%) 🟧 George #Simion (#AUR|ECR): 40,53% 🟩 Nicușor #Dan (Ind.): 20,90% 🟦 Crin #Antonescu (#PSD|S&D, #PNL|PPE, #UDMR|PPE): 20,34% 🟥 Victor #Ponta (Ind.): 13,28% 🟦 Elena #Lasconi (#USR|RE): 2,67% @TuttoElezioni

Tutto Elezioni

@tuttoelezioni · Post #915 · 04.05.2025 г., 21:55

#Romania🇷🇴 #Presidenziali Risultati parziali. Sezioni scrutinate: 19.783/20.085 (98,50%) 🟧 George #Simion (#AUR|ECR): 40,32% 🟩 Nicușor #Dan (Ind.): 20,77% 🟦 Crin #Antonescu (#PSD|S&D, #PNL|PPE, #UDMR|PPE): 20,50% 🟥 Victor #Ponta (Ind.): 13,45% 🟦 Elena #Lasconi (#USR|RE): 2,67% @TuttoElezioni

123•••67
ПредишнаСтр. 1 от 7Следваща