В общем, была задача на оптимизацию плана работ: есть набор заказов, и в каждом N тасков. Таски могут зависеть друг от друга или нет, имеют длительность и тип. Ещё есть M работников, каждый из которых может выполнять таски только определённых типов, причём, у каждого своя скорость.
Если все таски в заказе выполнены, фирма получает сколько-то денег. У заказа есть дедлайн, за просрочку штраф (за каждый день просрочки), который вычитается из цены заказа. И ещё фирма тратит деньги за каждый день своей работы независимо от того, как загружены её сотрудники (то есть просто платит зарплаты по сути). Ещё важен учёт праздников и выходных.
Нужно заработать на определённом наборе заказов и работников как можно больше денег. Полный текст задачи и код программы проверки есть в репозитории. Эта задача является изменённым заказом, который мы с напарником решали в реальной жизни: оптимизация работы печатных станков для типографии. Правда, тогда и мы справились так себе, и заказчик в итоге сначала захотел всё вручную сам делать, а потом и вовсе похоронил проект при смене директора.
!!! Не читайте дальше, если хотите сначала попробовать решить самостоятельно, потому что я сейчас опишу эффективные подходы и результаты.
________________________________________
Так вот. Мы с другим экспертом Андреем сразу сели и написали разные варианты, чтобы задать шкалу, по которой будем оценивать решения команд. За пару часов я собрал примитивный жадный алгоритм, который сортировал заказы по прибыльности и укладывал в сетку кое-как, это дало нам нижнюю оценку. Мой алгоритм заработал ~75 млн виртуальных рублей, мы решили для оценки поставить нижней границей 40 млн. То есть всё, что ещё ниже, оценивалось в ноль баллов за качество оптимизации.
Затем Андрей закрылся дома на три дня и вышел на свет со сложным жадным алгоритмом, который очень хитро сортировал заказы и очень хитро укладывал их в сетку, попутно выбирая разные способы этой укладки в зависимости от конкретного заказа. Это позволило заработать ~275 млн рублей. Мы сделали верхней границей для оценки 280 млн.
К сожалению, в итоге только две команды из десяти прошли нижнюю границу, заработав, соответственно, ~91 и ~105 млн. К верхней границе не приблизился никто. И у четырёх команд алгоритм вообще не смог уложить без нарушений задачи в сетку (то есть, например, произвольно менял длительности, накладывал задачи друг на друга, давал одному работнику две задачи в один момент и так далее). Важной ошибкой команд, на мой взгляд, являлся тот факт, что никто не воспользовался возможностью запустить алгоритм на несколько минут и дать ему поработать. По условиям задания, можно было тянуть до 5 минут на одну оптимизацию, но по факту решения команд отрабатывали за единицы и десятки секунд.
На самом конкурсе, пока команды работали, я решил попробовать сделать быстрое (по времени написания) но эффективное решение. Сначала попробовал жадную сортировку + доведение до лучшего варианта методом имитации отжига. В качестве нового состояния я просто менял местами заказы целиком. Этот вариант работал пару минут и дал мне около ~200 млн дохода. К слову, команда-лидер использовала такой же подход, просто не докрутила число итераций и температуру.
Ну и потом я взял готовую либу по реализации классической генетики с особями и скрещиванием. Особью был массив с приоритетами заказов (которые конечно же нужно было аккуратно уложить чистым алгоритмом). Тип скрещивания: scattered. Всего 15 поколений по 20 особей, и это за минуту-полторы давало ~230-240 млн. Считаю, что для конкурса это самый лучший выбор: пишется одним человеком за день и даёт почти максимум, при этом легко настраивается на нужную длительность работы, легко параллелится.
Ну а потом уже дома я посидел и накодил свой вариант сложного жадного с плавающим окном перебора отсортированных заказов и плавающей же укладкой по работникам. Такая штука за две минуты зарабатывает ~281 млн. Но за три дня в условиях стресса я бы такое не сделал, скорее всего.
#dev
👷♀️Eshik va oyna oʻrinlari burchaklarida yoriqlar hosil boʻlmasligi uchun burchaklarda gipskartonni biriktirmaslik zarur.
Eshik va deraza oʻrinlarining turli tomonlariga har bir qatlamda siljitilgan kamida 15 sm “bayroqcha” oʻrnating. 👌
Barcha burchaklar, jumladan shiftni eslab qolish va ularga aynan bir xil ishlov berish muhimdir, chunki bu bosim toʻplanadigan joylardir.
Toʻgʻri qurish taʼmirni yangidek saqlash va eshik yoki derazani har safar yopganda qayta tuzatmaslik imkonini beradi.😊
Sifatli materiallardan foydalaning!
KNAUFdan foydalaning!
- - - - -
👷♀️Для предотвращения трещин на углах дверных и оконных проемов необходимо избегать стыков гипсокартона на углах.
Обязательно устанавливайте «флажок», не менее 15 см, смещенный на каждом слое в разные стороны проема.👌
Важно помнить обо всех углах, включая потолок, и выполнять их аналогичным образом, так как это место концентрации напряжений.
Правильный монтаж позволит сохранить ремонт свежим и не переделывать его при каждом закрытии двери или окна.😊
Используйте качественные материалы!
Используйте КНАУФ!
#knaufuzbekistan
#gipskarton
👷♀️Gipskartondan pardevor yoki shift oʻrnatganda, yoriqlar paydo boʻlish xavfini qanday kamaytirish mumkin?
Bir-ikkita majburiy qoidalar quyidagicha:
▫️Gorizontal choklar kamida 400 mm siljitilishi kerak;
▫️Vertikal birikish joylari ustun qadamiga siljitiladi. Shiftdagi qoplamalar qoplamaning 1/2 kengligiga siljitiladi.
Qoidalarga har bir qatlamda va pardevorning ikki tomonida ham amal
qilinishi kerak.
Batafsil: https://knauf.uz/qr/rWmHNJlx
Sifatli materiallardan foydalaning!
KNAUFdan foydalaning!
- - - - -
👷♀️Как уменьшить риск возникновения трещин при монтаже перегородки или потолка из гипсокартона?
Парочка обязательных правил:
▫️Горизонтальные стыки должны быть смещены не менее, чем на 400 мм;
▫️Вертикальные стыки смещаются на шаг стоек. Листы на потолке смещаются на 1/2 ширины листа.
Правила должны соблюдаться как на каждом слое, так и с каждой стороны перегородки.
Используйте качественные материалы!
Используйте КНАУФ!
Подробнее: https://knauf.uz/qr/rWmHNJlx
👍 Social
#knaufuzbekistan
#gipskarton
👷♀️Eshik va oyna oʻrinlari burchaklarida yoriqlar hosil boʻlmasligi uchun burchaklarda gipskartonni biriktirmaslik zarur.
Eshik va deraza oʻrinlarining turli tomonlariga har bir qatlamda siljitilgan kamida 15 sm “bayroqcha” oʻrnating. 👌
Barcha burchaklar, jumladan shiftni eslab qolish va ularga aynan bir xil ishlov berish muhimdir, chunki bu bosim toʻplanadigan joylardir.
Toʻgʻri qurish taʼmirni yangidek saqlash va eshik yoki derazani har safar yopganda qayta tuzatmaslik imkonini beradi.😊
Sifatli materiallardan foydalaning!
KNAUFdan foydalaning!
- - - - -
👷♀️Для предотвращения трещин на углах дверных и оконных проемов необходимо избегать стыков гипсокартона на углах.
Обязательно устанавливайте «флажок», не менее 15 см, смещенный на каждом слое в разные стороны проема.👌
Важно помнить обо всех углах, включая потолок, и выполнять их аналогичным образом, так как это место концентрации напряжений.
Правильный монтаж позволит сохранить ремонт свежим и не переделывать его при каждом закрытии двери или окна.😊
Используйте качественные материалы!
Используйте КНАУФ!
#knaufuzbekistan
#gipskarton
🧐Namlikka chidamli gipskarton nima uchun standart gipskartonga qaraganda qimmatroq ekanligini bilmoqchimisiz?
👌Videomizda biz uning o'ziga xos xususiyatlarini batafsil ko'rsatib beramiz.
👍Bu turdagi gipskarton qurilish bozorlarida o'zining "muqovasiga" mos kelishini tekshirishning oson va tezkor usuli (namlikka chidamli gipskarton yashil kartonga o'ralgan bo'ladi).
❗️Shuni esda tutingki, nomunosib qurilish materiallarini sotib olish - xarajatlarning ko'payishiga va uyingiz shinamliligining yo'qolib borishiga olib kelishi mumkin.
- - - - -
🧐Хотите узнать, почему влагостойкий гипсокартон стоит дороже стандартного?
👌В нашем видео мы наглядно покажем его отличительные свойства.
👍Это легкий и быстрый способ проверить соответствует ли гипсокартон на стройбазаре своей «обложке» (влагостойкий гипсокартон обернут в зелёный картон).
❗️Помните, что неподходящие строительные материалы это не только увеличение расходов на ремонт, но и снижение комфорта вашего жилья.
#knaufuzbekistan#gipskarton
👷♀️Eshik va oyna oʻrinlari burchaklarida yoriqlar hosil boʻlmasligi uchun burchaklarda gipskartonni biriktirmaslik zarur.
Eshik va deraza oʻrinlarining turli tomonlariga har bir qatlamda siljitilgan kamida 15 sm “bayroqcha” oʻrnating. 👌
Barcha burchaklar, jumladan shiftni eslab qolish va ularga aynan bir xil ishlov berish muhimdir, chunki bu bosim toʻplanadigan joylardir.
Toʻgʻri qurish taʼmirni yangidek saqlash va eshik yoki derazani har safar yopganda qayta tuzatmaslik imkonini beradi.😊
Sifatli materiallardan foydalaning!
KNAUFdan foydalaning!
- - - - -
👷♀️Для предотвращения трещин на углах дверных и оконных проемов необходимо избегать стыков гипсокартона на углах.
Обязательно устанавливайте «флажок», не менее 15 см, смещенный на каждом слое в разные стороны проема.👌
Важно помнить обо всех углах, включая потолок, и выполнять их аналогичным образом, так как это место концентрации напряжений.
Правильный монтаж позволит сохранить ремонт свежим и не переделывать его при каждом закрытии двери или окна.😊
Используйте качественные материалы!
Используйте КНАУФ!
#knaufuzbekistan
#gipskarton
👷♀️Gipskartondan pardevor yoki shift oʻrnatganda, yoriqlar paydo boʻlish xavfini qanday kamaytirish mumkin?
Bir-ikkita majburiy qoidalar quyidagicha:
▫️Gorizontal choklar kamida 400 mm siljitilishi kerak;
▫️Vertikal birikish joylari ustun qadamiga siljitiladi. Shiftdagi qoplamalar qoplamaning 1/2 kengligiga siljitiladi.
Qoidalarga har bir qatlamda va pardevorning ikki tomonida ham amal
qilinishi kerak.
Sifatli materiallardan foydalaning!
KNAUFdan foydalaning!
Batafsil: https://knauf.uz/qr/rWmHNJlx
- - - - -
👷♀️Как уменьшить риск возникновения трещин при монтаже перегородки или потолка из гипсокартона?
Парочка обязательных правил:
▫️Горизонтальные стыки должны быть смещены не менее, чем на 400 мм;
▫️Вертикальные стыки смещаются на шаг стоек. Листы на потолке смещаются на 1/2 ширины листа.
Правила должны соблюдаться как на каждом слое, так и с каждой стороны перегородки.
Используйте качественные материалы!
Используйте КНАУФ!
Подробнее: https://knauf.uz/qr/rWmHNJlx
#knaufuzbekistan
#gipskarton
🧐Namlikka chidamli gipskarton nima uchun standart gipskartonga qaraganda qimmatroq ekanligini bilmoqchimisiz?
👌Videomizda biz uning o'ziga xos xususiyatlarini batafsil ko'rsatib beramiz.
👍Bu turdagi gipskarton qurilish bozorlarida o'zining "muqovasiga" mos kelishini tekshirishning oson va tezkor usuli (namlikka chidamli gipskarton yashil kartonga o'ralgan bo'ladi).
❗️Shuni esda tutingki, nomunosib qurilish materiallarini sotib olish - xarajatlarning ko'payishiga va uyingiz shinamliligining yo'qolib borishiga olib kelishi mumkin.
- - - - -
🧐Хотите узнать, почему влагостойкий гипсокартон стоит дороже стандартного?
👌В нашем видео мы наглядно покажем его отличительные свойства.
👍Это легкий и быстрый способ проверить соответствует ли гипсокартон на стройбазаре своей «обложке» (влагостойкий гипсокартон обернут в зелёный картон).
❗️Помните, что неподходящие строительные материалы это не только увеличение расходов на ремонт, но и снижение комфорта вашего жилья.
#knaufuzbekistan#gipskarton
👷♀️Xonada yong'in chiqishidan hech kim sug'urtalanmagan.
Holat va vaziyat har xil bo'lishi mumkin.
Ammo chinakam olovbardosh qurilish materiallaridan foydalanish alanga olayotgan binodan sog'-omon chiqish uchun sizga imkon yaratadi.
❗️Bunday holatda har bitta soniya hisobda boʻladi.
KNAUF yaratgan va ochiq alangaga nisbatan oshirilgan qarshilik darajasi ega mahsulotlardan biri – olovbardosh KNAUF-plita (GQP-DF) hisoblanadi.👍
U yong'inga qarshi KM2 xavfsizlik sinfiga ega bo'lib, uni pardevor komplekt tizimlari tarkibida (masalan S 112 va S 113) odam gavjum joylarda (savdo markazlari yoki ko'p qavatli obyektlar) yong'in paytida insonlarning hayotiga bo'ladigan xavf-xatarni kamaytirish uchun ishlatish mumkin.👌
GQP-DF markirovkasining rangi: qizil/qora
Sifatli materiallardan foydalaning.
KNAUFʼdan foydalaning.
- - - - -
👷♀️Никто не застрахован от возгорания в помещении.
Разные бывают случаи и обстоятельства.
Но шанс выбраться из пылающего здания – это в том числе и выбор настоящих огнестойких строительных материалов, которые дадут вам время на спасение.
❗️Время, необходимое тогда, когда счет идет на секунды.
Одним из продуктов КНАУФ, имеющим повышенный предел противостояния открытому пламени, является КНАУФ-плита огнестойкая (ГСП-DF).👍
Обладает классом пожарной безопасности КМ2. В составе комплектной системы перегородок (например, С 112 и С 113) плита подходит для использования в местах массового скопления людей (торговые центры или объекты с большой этажностью) для снижения риска угрозы жизни людей в случаях воспламенения.👌
Цвет маркировки ГСП-DF: красный/черный
Используйте качественные материалы.
Используйте КНАУФ.
#knaufuzbekistan#gipskarton
🧐Namlikka chidamli gipskarton nima uchun standart gipskartonga qaraganda qimmatroq ekanligini bilmoqchimisiz?
👌Videomizda biz uning o'ziga xos xususiyatlarini batafsil ko'rsatib beramiz.
👍Bu turdagi gipskarton qurilish bozorlarida o'zining "muqovasiga" mos kelishini tekshirishning oson va tezkor usuli (namlikka chidamli gipskarton yashil kartonga o'ralgan bo'ladi).
❗️Shuni esda tutingki, nomunosib qurilish materiallarini sotib olish - xarajatlarning ko'payishiga va uyingiz shinamliligining yo'qolib borishiga olib kelishi mumkin.
- - - - -
🧐Хотите узнать, почему влагостойкий гипсокартон стоит дороже стандартного?
👌В нашем видео мы наглядно покажем его отличительные свойства.
👍Это легкий и быстрый способ проверить соответствует ли гипсокартон на стройбазаре своей «обложке» (влагостойкий гипсокартон обернут в зелёный картон).
❗️Помните, что неподходящие строительные материалы это не только увеличение расходов на ремонт, но и снижение комфорта вашего жилья.
#knaufuzbekistan#gipskarton
Uyingiz yoki ofisda siz yaratadigan goʻzallikning astar tomoni – aloqa tizimlari. 🧐
Shunday emasmi?
Hisoblagichlar, joʻmraklar, kabellar va yuqoridagi qoʻshnilardan oʻtadigan yana qandaydir narsalar...
Sizga bu holat tanishmi?
Batafsil👉https://bit.ly/reviziya-lyuklar
- - - - -
Изнанка всей той красоты, которую вы создаете дома или в офисе, это коммуникационные системы.🧐
Согласны?
Эти счетчики, краники, кабели и непонятно что льется от соседей сверху…
Знакомо?
Подробнее👉https://bit.ly/revizionniye-lyuki
YouTube
Instagram
Facebook
#gipskarton#KNAUF#knaufuzbekistan
Zamon bilan hamnafasmisiz?
Unda binolar pardozidagi eng so'nggi urf bo'lgan yo'nalish – xaytek sizga albatta yoqadi.👌
Texnologiya bilan uygʻunlik, funksionallik, to'g'ri shakllar va yuzalar.
Bunda eng sifatli pardoz materiallari, ilg'or texnologiyalar va qimmat yakuniy ishlov qoplamalaridan foydalaniladi.
Batafsil👉https://telegra.ph/Zamon-bilan-hamnafasmisiz-07-24
- - - - -
Вы модник или модница?
Тогда Вам должно понравиться самое трендовое направление в отделке помещений - хайтек.👌
Технологичность, функциональность, прямые формы и поверхности.
Здесь используются самые качественные отделочные материалы, передовые технологии и дорогостоящие финишные покрытия.
Подробнее👉https://telegra.ph/Vy-modnik-ili-modnica-07-24
YouTube
Instagram
Facebook
#gipskarton#KNAUF#knaufuzbekistan