В общем, была задача на оптимизацию плана работ: есть набор заказов, и в каждом N тасков. Таски могут зависеть друг от друга или нет, имеют длительность и тип. Ещё есть M работников, каждый из которых может выполнять таски только определённых типов, причём, у каждого своя скорость.
Если все таски в заказе выполнены, фирма получает сколько-то денег. У заказа есть дедлайн, за просрочку штраф (за каждый день просрочки), который вычитается из цены заказа. И ещё фирма тратит деньги за каждый день своей работы независимо от того, как загружены её сотрудники (то есть просто платит зарплаты по сути). Ещё важен учёт праздников и выходных.
Нужно заработать на определённом наборе заказов и работников как можно больше денег. Полный текст задачи и код программы проверки есть в репозитории. Эта задача является изменённым заказом, который мы с напарником решали в реальной жизни: оптимизация работы печатных станков для типографии. Правда, тогда и мы справились так себе, и заказчик в итоге сначала захотел всё вручную сам делать, а потом и вовсе похоронил проект при смене директора.
!!! Не читайте дальше, если хотите сначала попробовать решить самостоятельно, потому что я сейчас опишу эффективные подходы и результаты.
________________________________________
Так вот. Мы с другим экспертом Андреем сразу сели и написали разные варианты, чтобы задать шкалу, по которой будем оценивать решения команд. За пару часов я собрал примитивный жадный алгоритм, который сортировал заказы по прибыльности и укладывал в сетку кое-как, это дало нам нижнюю оценку. Мой алгоритм заработал ~75 млн виртуальных рублей, мы решили для оценки поставить нижней границей 40 млн. То есть всё, что ещё ниже, оценивалось в ноль баллов за качество оптимизации.
Затем Андрей закрылся дома на три дня и вышел на свет со сложным жадным алгоритмом, который очень хитро сортировал заказы и очень хитро укладывал их в сетку, попутно выбирая разные способы этой укладки в зависимости от конкретного заказа. Это позволило заработать ~275 млн рублей. Мы сделали верхней границей для оценки 280 млн.
К сожалению, в итоге только две команды из десяти прошли нижнюю границу, заработав, соответственно, ~91 и ~105 млн. К верхней границе не приблизился никто. И у четырёх команд алгоритм вообще не смог уложить без нарушений задачи в сетку (то есть, например, произвольно менял длительности, накладывал задачи друг на друга, давал одному работнику две задачи в один момент и так далее). Важной ошибкой команд, на мой взгляд, являлся тот факт, что никто не воспользовался возможностью запустить алгоритм на несколько минут и дать ему поработать. По условиям задания, можно было тянуть до 5 минут на одну оптимизацию, но по факту решения команд отрабатывали за единицы и десятки секунд.
На самом конкурсе, пока команды работали, я решил попробовать сделать быстрое (по времени написания) но эффективное решение. Сначала попробовал жадную сортировку + доведение до лучшего варианта методом имитации отжига. В качестве нового состояния я просто менял местами заказы целиком. Этот вариант работал пару минут и дал мне около ~200 млн дохода. К слову, команда-лидер использовала такой же подход, просто не докрутила число итераций и температуру.
Ну и потом я взял готовую либу по реализации классической генетики с особями и скрещиванием. Особью был массив с приоритетами заказов (которые конечно же нужно было аккуратно уложить чистым алгоритмом). Тип скрещивания: scattered. Всего 15 поколений по 20 особей, и это за минуту-полторы давало ~230-240 млн. Считаю, что для конкурса это самый лучший выбор: пишется одним человеком за день и даёт почти максимум, при этом легко настраивается на нужную длительность работы, легко параллелится.
Ну а потом уже дома я посидел и накодил свой вариант сложного жадного с плавающим окном перебора отсортированных заказов и плавающей же укладкой по работникам. Такая штука за две минуты зарабатывает ~281 млн. Но за три дня в условиях стресса я бы такое не сделал, скорее всего.
#dev
5 полезных сайтов для дизайнеров
👃
WEBDESIGN-INSPIRATION
Сайт регулярно обновляется и собирает кучу классных дизайн-примеров и идей на любой вкус.
SITEINSPIRE
Сайт с удачными примерами дизайна. Удобно искать нужное через фильтры — именно то, что нужно сейчас.
WOMP
Онлайн-сервис для создания простых 3D-моделей из текста и изображений
PIXEL ME
Мой любимчик из подборки 💔 превращает фото в пиксель-арт (как из ретро-игр)
FFFUEL
Генерирует градиенты, SVG-паттерны, шум и абстрактные фоны для дизайна.
#toolbox@mariinavodesign
Сохраняете пост, если было полезно
Выходные — это время, чтобы отдохнуть от работы, задач и просто ничего не делать 💆🏻♀️
Но у меня бывают такие периоды, когда хочется почитать. Чаще всего, конечно, это детективы, но и для работы я тоже люблю что-то почерпнуть.
Мой личный топ-3 книг, прочитанных за последнее время:
1. «Нанопривычки» Би Джей Фогг — как добиться серьёзных перемен, начиная с мелочей и двигаясь маленькими шажками. Пинок под зад, когда хочется что-то поменять в жизни, но не знаешь как и с чего начинать)
2. «Эстетический интеллект» Полин Браун — о том, как эстетическая составляющая играет важную роль в бизнесе. Автор показывает, как внимание к эстетике помогает достигать успеха.
3. «Герой и бунтарь» Маргарет Марк и Кэрол Пирсон — об уникальном стиле общения с аудиторией через архетипы❤️🔥 и о том, как их использовать в маркетинговых стратегиях, дизайне продуктов, коммуникациях и других аспектах бизнеса. Также будет супер-полезно тем, кто продвигает свои личный бренд в соцсетях.
→ Эти и другие книги по психологии, маркетингу и дизайну есть на платформе Ready? Set. Create! — можно скачать файл и читать сразу с телефона или компьютера
#toolbox@mariinavodesign
Сделать пиксельный шедевр в два клика
🪳
Нашла простой и удобный сайт, где из любой картинки (без фона) можно сделать пиксельную версию и скачать в png / svg
🧡 Не забудьте сохранить
#toolbox@mariinavodesign
Это стоит сохранить — собрала небольшую, но очень полезную подборку расширений для Google Chrome
Пригодится дизайнерам и не только 🥲❤️🔥
Fonts Ninja
Если вы зашли на сайт и вам оочень понравился шрифт, а искать его будет трудно и нудно — это расширение сильно упростит задачу. Включаете его, нажимаете на нужный текст, и сразу видите название шрифта, его размер и стиль
Mobile Simulator
Показывает, как сайт выглядит на разных устройствах. Отличный способ быстро проверить адаптивность дизайна — прямо в браузере, без переключений на телефон
SVG Export
Определяет все SVG-изображения на странице и собирает их в одном окне — можно сразу скачать нужные файлы. Очень удобно
ColorZilla
Пипетка для браузера — можно взять любой цвет прямо с экрана и использовать, например, в Figma. А ещё: генератор градиентов, история последних цветов, просмотр цветовой палитры страницы
Сохранить в Pinterest
Позволяет быстро сохранить любые изображения или вдохновение из интернета на нужную доску в Pinterest. Пины автоматически создаются со ссылкой на оригинальный источник
#toolbox@mariinavodesign
Выходные — хороший повод уделить время чтению. Поэтому делюсь моим личным топом из трёх books 😍которые способны изменить ваш взгляд на привычные вещи, если вы занимаетесь дизайном и творчеством:
«Путь художника» Дж. Кэмерон — если чувствуете в себе творческий потенциал, но работа мешает раскрыться, эта книга с практическими упражнениями поможет вам начать творить.
«Искусство креативного мышления» Р. Джадкинс — для тех, кто хочет добавить креативности в свою работу, независимо от профессии. Если не знаете, как это сделать, в книге найдете ответ.
«Рисовый штурм» М. Микалко — для тех, кто хочет создавать уникальные проекты и тренировать креативное мышление. Поможет задавать правильные вопросы и находить нестандартные решения.
#toolbox@mariinavodesign
Эти и еще 50+ книг доступны на платформе Ready? Set. Create!➡️ подробнее в этом посте
Для тех, кто работает с Тильдой! 👀
При создании сайта для платформы Ready? Set. Create! я активно использовала анимации. Считаю, что анимация добавляет динамики и делает сайт более запоминающимся.
Поэтому собрала для вас 14 самых любимых сайтов с модификациями для Тильды:
Matilda Design
Mo-Ti
Nolim
Tildoshnaya
Youx.Agency
DSGNbyMAX
Vladislavland
Ticodes
Necodim
Lifehackov
VoronDev
Anku
RomanKosov
Annexx
Сохраняйте, пробуйте, добавляйте уникальности свои проектам
🪄
А если знаете другие ресурсы с модификациями — делитесь в комментариях!
#toolbox@mariinavodesign
Кое-что, что точно упростит работу с контентом 🩷
Это вторая часть поста с полезными ботами. Первую часть можно найти здесь
@ControllerBot — бот, который обязателен для админов Telegram-каналов. С ним можно форматировать текст, добавлять реакции, файлы, медиа, кнопки, комментарии, планировать посты и ставить таймеры для их удаления. В общем, супер полезная штука!
@GmailBot — официальный почтовый бот Google. Читайте и отправляйте письма, не выходя из Telegram. Очень удобно!
@scannertext_bot — этот бот сканирует картинки с текстом (скриншоты или фото) и превращает их в редактируемый текст.
@LandingPageInstagramBot — бот для того, чтобы нарезать фотографии на части для раскладки в Instagram. 33, 34, 3*6 — создайте стильные композиции из одной картинки.
@StickerStickyBot — этот бот подбирает стикеры, которые идеально подходят к вашему сообщению. В общем, помогает выразить все, что хотите, с помощью стикеров.
@text4instabot — мой фаворит для соцсетей. Создает идеальные интервалы между абзацами — всегда читаемо и красиво.
#toolbox@mariinavodesign
❤️🔥 Подборка ботов в Telegram, которые упростят жизнь и создание контента
@FleepBot — для отложенного постинга
@TelescopyBot — превращает видео в Telegram-кружочки
@SaveAsBot — помогает скачивать контент из Instagram и TikTok
@Orforobot — проверяет текст на ошибки
@Newfileconverterbot—помогает конвертировать различные файлы, включая фото, видео и аудио в разные форматы. Может преобразовать Telegram-видеосообщение в любой формат
@QR_code_bot — создает QR-коды по ссылке
@SelfSMMBot— создаст контент-план под ваш запрос / напишет пост / сгенерирует идеи для рилс, и многое другое
@Stickers— поможет создать собственный пак эмодзи / нужно подготовить pngизображение в размере 100*100 пикселей и загрузить в бот, следуя инструкции
@Aimyvoice_bot— озвучит любой текст / бесплатно до 1 минуты
#toolbox@mariinavodesign
Как создатьсвой шрифт [бесплатно ]
Понадобится сайт calligraphr
* обратите внимание, что бесплатная версия сайта позволяет загрузить не более
75 символов
В карточках описала несколько способов создания шрифта:
1. С помощью любого приложения, в котором можно рисовать
2. В Figma, взяв за основу любой шрифт и изменив его до неузнаваемости
3. Распечатать бланк и заполнить его от руки.
Можно нарисовать любые геометрические формы! 💔
А в комментариях — рукописный шрифт, который получился у меня
🐱
#toolbox@mariinavodesign
#fonts@mariinavodesign
Как быть, если ради пары экспериментов заморачиваться с подпиской Midjourney не хочется? 😅
Делюсь ботом @midjorobot
Есть несколько бесплатных генераций (будьте готовы подождать минут 5, пока бот сгенерирует варианты), потом можно купить подписку на месяц или оплачивать генерации поштучно
На скринах показываю, как взяла свой промпт из предыдущего поста и какие результаты получила. Вроде бы недурно 👀
#toolbox@mariinavodesign
#ai@mariinavodesign
TON Society: Explore Toolbox and Social Trading Pools
#Toolbox#Telegram#TOOX
TON Society introduces Toolbox, a community-driven trading platform allowing users to create or join themed trading pools. Features include automated management, profit sharing, AI support, and Telegram integration, with opportunities to earn TOOX points.
Source: link
@tonlines
Mini Handheld Powerful Metal Processing Pulling Concrete Nail Gun Steel Rivet Tool Concrete Wall Anchor Line Slotting Device
#household tools #tooltips#toolbox reelsfypシ
Link bay 👇
https://s.click.aliexpress.com/e/_EwXhXeo
Our channel for more offers
https://t.me/Digital_PRODUCTS11/