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

Резултати

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

Търсене: #revit

当前筛选 #revit清除筛选

🔔Большеинструментов — больше возможностей! Мы активно расширяем набор инструментов, чтобы работа в Revit была быстрее и удобнее. И сейчас в нашем арсенале уже более 15 полезных инструментов, 12 из которых доступны абсолютно бесплатно🔥 С их помощью вы можете: 🔘копировать листы внутри проекта с различными настройками, переименовывать их, перенумеровывать 🔘пакетно печатать листы разных форматов в PDF из текущего и связанных файлов 🔘изменять опорный уровень у элементов без их смещения 🔘задавать нумерацию элементов в спецификациях 🔘экспортировать спецификации в Excel 🔘заполнять количество изменений в штампах листа и изменения в ведомостях рабочих комплектов 🔘экспортировать листы в DWG 🔘управлять видимостью связей на видах и шаблонах 🔘заменять тип осей с 2D на 3D и наоборот 🔘пакетно добавлять/удалять параметры в проекте, копировать их между семействами/проектами 🔘находить и очищать проект от ненужных dwg и dxf импортов 🔘гибко выбирать элементы по значениям параметров 🔘создавать рабочие наборы 🔘обрезать вид по прямоугольной области ✅ Также, вы можете заполнять параметры элементов на основе значений других параметров и расчетных формул то есть гибко задавать в какие элементы, в какой параметр и что именно должно быть записано Инструменты на практике ⏺ Установите PikToolsBox (кнопка "Скачать" на странице продукта) и далее загрузите сборку Общее-Revit Пробный период для платных решений на 3 месяца ⏺Оставьте заявку #Revit#BIM#ПИК#BIMTeam

Попробуй бесплатно плагины PikTools! 🥳PikTools - инструменты для автоматизации проектирования в Revit, AutoCAD&Civil3D В составе бесплатного пакета для Revit: 🔸Опорный уровень - изменение опорного уровня элементов без их фактического смещения 🔸Диспетчер параметров - комплексная работа с параметрами, пакетное добавление в проект и в семейство 🔸Экспорт в Excel - пакетный экспорт спецификаций из Revit в XLSX и TSV 🔸Фильтр - гибкая фильтрация элементов по выбранным параметрам и их значениям 🔸Перенумеровать листы - изменение номера листов в проекте 🔸Оси 2D/3D - пакетная замена режима осей на виде с 2D на 3D и обратно 🔸Ревизии - автозаполнение количества изменений в штампах листа и изменений в ведомостях рабочих комплектов чертежей 🔸CAD менеджер - поиск и удаление импортированных DWG-файлов в проектах Revit Подробнее на нашем сайте Инструкции Скачать бесплатно #Revit#BIM#ПИК#BIMTeam

МЫ - Команда BIMTeam из ПИК, и мы создаем продукты, которые делают процессы BIM-моделирования проще и быстрее 🔍Наши ключевые продукты Family Manager - помогает удобно управлять семействами в Revit без лишней рутины ✈️Подписаться на канал PikTools - автоматизация в Revit 🤩АР ✈️Подписаться на канал 🤩КР ✈️Подписаться на канал 🤩ИОС ✈️Подписаться на канал 🤩Общее ✈️Подписаться на канал RobotR2- Автоматизация градостроительного и архитектурного проектирования ✈️Подписаться на канал BIM Inspector - проверяет модели на соответствие стандартам и сокращает количество ошибок ✈️Подписаться на канал 🔔Где ещё мы есть? 🤩Новости и обсуждения → Tg | VK | LinkedIn 🤩Официальный сайт → bimteam.ru 👍 Подписывайтесь на наши каналы и следите за новостями! #BIM#Строительство#Revit#Цифровизация#Инновации

МЫ - Команда BIMTeam из ПИК, и мы создаем продукты, которые делают процессы BIM-моделирования проще и быстрее 🔍Наши ключевые продукты Family Manager - помогает удобно управлять семействами в Revit без лишней рутины ✈️Подписаться на канал PikTools - автоматизация в Revit 🤩АР ✈️Подписаться на канал 🤩КР ✈️Подписаться на канал 🤩ИОС ✈️Подписаться на канал 🤩Общее ✈️Подписаться на канал RobotR2- Автоматизация градостроительного и архитектурного проектирования ✈️Подписаться на канал BIM Inspector - проверяет модели на соответствие стандартам и сокращает количество ошибок ✈️Подписаться на канал 🔔Где ещё мы есть? 🤩Новости и обсуждения → Tg | VK | LinkedIn 🤩Официальный сайт → bimteam.ru 👍 Подписывайтесь на наши каналы и следите за новостями! #BIM#Строительство#Revit#Цифровизация#Инновации

МЫ - Команда BIMTeam из ПИК, и мы создаем продукты, которые делают процессы BIM-моделирования проще и быстрее 🔍Наши ключевые продукты Family Manager - помогает удобно управлять семействами в Revit без лишней рутины ✈️Подписаться на канал PikTools - автоматизация в Revit 🤩АР ✈️Подписаться на канал 🤩КР ✈️Подписаться на канал 🤩ИОС ✈️Подписаться на канал 🤩Общее ✈️Подписаться на канал RobotR2- Автоматизация градостроительного и архитектурного проектирования ✈️Подписаться на канал BIM Inspector - проверяет модели на соответствие стандартам и сокращает количество ошибок ✈️Подписаться на канал 🔔Где ещё мы есть? 🤩Новости и обсуждения → Tg | VK | LinkedIn 🤩Официальный сайт → bimteam.ru 👍 Подписывайтесь на наши каналы и следите за новостями! #BIM#Строительство#Revit#Цифровизация#Инновации

🐚🐚Новый плагин в составе бесплатного пакета PikTools Экспорт в DWG - пакетный экспорт листов в DWG из нескольких файлов сразу, включая связанные файлы Как установить ▪️Скачайте приложение PikToolsBOX ▪️Установите 🥰 PikTools. Общее ▪️Инструкции доступны по нажатию F1 при наведении курсора на плагин в Revit ✅Помощь и консультации по функционалу ▪️Чат поддержки ▪️Инструкция #Revit#BIM#ПИК#BIMTeam#Плагины

🔔Собираем обратную связь Месяц назад мы опубликовали плагин "Армировать по площади". 💜Поделитесь обратной связью в коротком опросе, для нас это будет очень полезно. #Revit#BIM#ПИК#BIMTeam#Плагины

🆓Попробуйте бесплатно плагин PikTools Колористика - новый плагин для назначения цвета фасадной плитке, работает с панелями витража. Как установить ▪️Скачайте приложение 😆PikToolsBOX ▪️Установите 😍 PikTools. АР ▪️Инструкции доступны по нажатию F1 при наведении курсора на плагин в Revit ✅Помощь и консультации по функционалу ▪️Чат поддержки ▪️Инструкция #Revit#BIM#ПИК#BIMTeam#Плагины

Попробуйте плагины PikTools для Revit от команды BIMTeam из ПИК! ↗️Бесплатныеплагины: 🤩Армироватьпо площади Устанавливает армирование в плитах и стенах с использованием системного семейства "Армирование по площади" 🤩Опорный уровень Изменение опорного уровня элементов без их фактического смещения 🤩Диспетчер параметров Комплексная работа с параметрами, пакетное добавление в проект и в семейство 🤩Экспорт в Excel Пакетный экспорт спецификаций из Revit в XLSX и TSV 🤩Фильтр Гибкая фильтрация элементов по выбранным параметрам и их значениям 🤩Перенумеровать листы Изменение номера листов в проекте 🤩Оси 2D/3D Пакетная замена режима осей на виде с 2D на 3D и обратно 🤩Ревизии Автозаполнение количества изменений в штампах листа и изменений в ведомостях рабочих комплектов чертежей 🤩CAD менеджер Поиск и удаление импортированных DWG-файлов в проектах Revit 🤩Нумерация Нумерация элементов в спецификациях 🤩Обрезатьвид Подрезка 2D видов по выделенной области ↗️Пробный период 3 месяца: 🤩Перемычки Автоматизация процесса расстановки перемычек в проекте, упрощение процесса их маркировки и создания эскизов 🤩Отделка Рассчитывает площади отделки, назначает типы и марки отделки и создает ведомость отделки 🤩Склеить параметры Быстро и безошибочно заполненяет параметры на основе значений других параметров и расчетных формул 🔍Как установить? Скачайте приложение 😆PikToolsBOXи установите продукты: 😍 PikTools. АР 😀 PikTools. КР 🥰 PikTools. Общие 📝Инструкции Инструкции доступны по нажатию F1 при наведении курсора на плагин в Revit 🔊Задать вопрос можно здесь 📌Наш бот-ассистентздесь #Revit#BIM#ПИК#BIMTeam#Плагины

Все официальные каналы BIMTeam в одном месте⤵️ ▪️BIMTeam News - https://t.me/bimteamnews ➡️ Здесь всё самое важное: обновления всех продуктов, анонсы и главные новости компании ▪️Family Manager - https://t.me/fm_bimteam ➡️ Всё для эффективной работы с семействами в Revit и AutoCAD ▪️BIM Inspector - https://t.me/bi_bimteam ➡️ Новости о сервисе по контролю качества BIM-моделей ▪️R2 - https://t.me/robotR2dev ➡️ Новости о платформе для автоматизации архитектурного и градостроительного проектирования ▪️PikTools АР - https://t.me/PikToolsAR ➡️ Всё для автоматизации bim-моделирования в Revit для архитекторов ▪️PikTools КР - https://t.me/PikToolsKR ➡️ Всё для автоматизации bim-моделирования в Revit для конструкторов ▪️PikTools ИОС - https://t.me/PikToolsIOS ➡️ Все для автоматизации bim-моделирования в Revit для инженеров ИОС ▪️PikTools Общее - https://t.me/PikToolsGeneral ➡️ Все для автоматизации bim-моделирования в Revit междисциплинарного характера ▪️Сообщество VK - https://vk.com/bimteamapps ➡️ Здесь анонсы, обсуждения и жизнь компании чуть ближе к вам Выбирайте свой вариант и будьте на связи! #BIMTeam#ПИК#Revit#Civil3D

🆕Новые плагины в составе бесплатного пакета PikTools ▪️Видимость связей - скрытие/отображение связанных файлов Revit на нескольких видах или шаблонах видов ▪️Создать рабочие наборы - создание рабочих наборов в проекте Как установить ▪️Скачайте приложение PikToolsBOX ▪️Установите 🥰 PikTools. Общее ▪️Инструкции доступны по нажатию F1 при наведении курсора на плагин в Revit ✅Помощь и консультации по функционалу ▪️Чат поддержки ▪️Инструкция Видимость связей ▪️Инструкция Создать рабочие наборы #Revit#BIM#ПИК#BIMTeam#НоваяФича

🆓Бесплатный пакет плагинов для Revit от BIMTeam Предлагаем набор инструментов для автоматизации работы в Autodesk Revit. Все плагины бесплатны, не требуют лицензионных ключей и готовы к использованию сразу после установки. В пакете: ▪️Управление параметрами и данными ▪️Автоматизация нумерации листов и элементов ▪️Экспорт спецификаций в Excel ▪️Инструменты для работы с видами, осями и связями ▪️Специализированные решения для армирования, фасадов и инженерных сетей 🔗Ссылка для скачивания #BIM#Revit#BIMTeam#автоматизация#проектирование

ПредишнаСтр. 1 от 4Следваща