В общем, была задача на оптимизацию плана работ: есть набор заказов, и в каждом N тасков. Таски могут зависеть друг от друга или нет, имеют длительность и тип. Ещё есть M работников, каждый из которых может выполнять таски только определённых типов, причём, у каждого своя скорость.
Если все таски в заказе выполнены, фирма получает сколько-то денег. У заказа есть дедлайн, за просрочку штраф (за каждый день просрочки), который вычитается из цены заказа. И ещё фирма тратит деньги за каждый день своей работы независимо от того, как загружены её сотрудники (то есть просто платит зарплаты по сути). Ещё важен учёт праздников и выходных.
Нужно заработать на определённом наборе заказов и работников как можно больше денег. Полный текст задачи и код программы проверки есть в репозитории. Эта задача является изменённым заказом, который мы с напарником решали в реальной жизни: оптимизация работы печатных станков для типографии. Правда, тогда и мы справились так себе, и заказчик в итоге сначала захотел всё вручную сам делать, а потом и вовсе похоронил проект при смене директора.
!!! Не читайте дальше, если хотите сначала попробовать решить самостоятельно, потому что я сейчас опишу эффективные подходы и результаты.
________________________________________
Так вот. Мы с другим экспертом Андреем сразу сели и написали разные варианты, чтобы задать шкалу, по которой будем оценивать решения команд. За пару часов я собрал примитивный жадный алгоритм, который сортировал заказы по прибыльности и укладывал в сетку кое-как, это дало нам нижнюю оценку. Мой алгоритм заработал ~75 млн виртуальных рублей, мы решили для оценки поставить нижней границей 40 млн. То есть всё, что ещё ниже, оценивалось в ноль баллов за качество оптимизации.
Затем Андрей закрылся дома на три дня и вышел на свет со сложным жадным алгоритмом, который очень хитро сортировал заказы и очень хитро укладывал их в сетку, попутно выбирая разные способы этой укладки в зависимости от конкретного заказа. Это позволило заработать ~275 млн рублей. Мы сделали верхней границей для оценки 280 млн.
К сожалению, в итоге только две команды из десяти прошли нижнюю границу, заработав, соответственно, ~91 и ~105 млн. К верхней границе не приблизился никто. И у четырёх команд алгоритм вообще не смог уложить без нарушений задачи в сетку (то есть, например, произвольно менял длительности, накладывал задачи друг на друга, давал одному работнику две задачи в один момент и так далее). Важной ошибкой команд, на мой взгляд, являлся тот факт, что никто не воспользовался возможностью запустить алгоритм на несколько минут и дать ему поработать. По условиям задания, можно было тянуть до 5 минут на одну оптимизацию, но по факту решения команд отрабатывали за единицы и десятки секунд.
На самом конкурсе, пока команды работали, я решил попробовать сделать быстрое (по времени написания) но эффективное решение. Сначала попробовал жадную сортировку + доведение до лучшего варианта методом имитации отжига. В качестве нового состояния я просто менял местами заказы целиком. Этот вариант работал пару минут и дал мне около ~200 млн дохода. К слову, команда-лидер использовала такой же подход, просто не докрутила число итераций и температуру.
Ну и потом я взял готовую либу по реализации классической генетики с особями и скрещиванием. Особью был массив с приоритетами заказов (которые конечно же нужно было аккуратно уложить чистым алгоритмом). Тип скрещивания: scattered. Всего 15 поколений по 20 особей, и это за минуту-полторы давало ~230-240 млн. Считаю, что для конкурса это самый лучший выбор: пишется одним человеком за день и даёт почти максимум, при этом легко настраивается на нужную длительность работы, легко параллелится.
Ну а потом уже дома я посидел и накодил свой вариант сложного жадного с плавающим окном перебора отсортированных заказов и плавающей же укладкой по работникам. Такая штука за две минуты зарабатывает ~281 млн. Но за три дня в условиях стресса я бы такое не сделал, скорее всего.
#dev
🔗Ready🔗
🔲У Ready появилась возможность пополнять счёт через Фиат, упадут вам сразу USDC, причем по очень хорошему курсу, потери составят всего лишь 0,025% от курса по xe.com
🔲 Есть возможность открыть одну из валют (EUR, USD, GBP, AED, BRL, MXN), нам конечно интереснее всего евро
🔲Счёт будет открыт через Due, там кстати можно открыть счёт и напрямую и получить все эти валюты. Дадут неличный IE IBAN
🔲Для открытия нужно будет пройти ещё один KYC. Тут сами принимайте решение, открывать этот счёт или нет, по мне это весьма удобно и выгодно
🔲Ready это одна из самых интересных крипто карта с кешбеком 3% и частыми бустами кешбека аж по 10%, также в нашем чате есть представители от них. Открывайте по моей рефке и дадут карту со скидкой 30 баксов
#Ready
🔖Если вам нужна консультация
🔖Все наши посты тут
🔖Если хотите вступить в наш чат
🔖Тут все полезные рефки
🔖Если вы хотите написать пост на канале
🔗Ready(Argent)🔗
🔲Получен очередной кешбек от Ready (почти 150 баксов), выплачивают его стабильно раз в месяц. Базово кешбек 3% после первого месяца пользования где кешбек аж 10%, но периодически они устраивают тройные бусты кешбека, на котором я весь месячный кешбек разом и выжал
🔲У ребята ещё есть баги, которые они оперативно фиксят и всегда решают проблемы всех участников чата, но это уже отличный инструмент и карта на каждый день, для базовых трат
🔲Единственный кто лучше и стабильнее на данный момент это Gnosis, но там и кешбек скоро к концу подойдёт, так что присмотритесь, тем более есть рефка со скидкой 30 баксов на карту и есть она только у нас, перейдя по ссылке надо будет вбить свою почту и промокод FintechAndBanking
#Ready
🔖Если вам нужна консультация
🔖Все наши посты тут
🔖Если хотите вступить в наш чат
🔖Тут все полезные рефки
🔖Если вы хотите написать пост на канале
🔗Ready (Argent)🔗
🔲Ready отключили газ для работы в своей сети Starknet, т.е различные свапы, выводы с кошелька, подтверждение транзакций и т.д теперь бесплатны
🔲Единственный момент когда вам необходим этот газ, это когда вы первый раз открываете карту, там небольшую копеечку надо будет держать в токене STRK
🔲 Бесплатность не распространяется на пополнение кошелька в куче разных сетей через Bridge, это будет платно, там комиссию за это берет мост Layer Swap, но Ready покрывает их комиссию до 100 баксов в месяц и вряд-ли вам удастся выйти за этот предел
🔲 Напоминаю, что Ready это один из лучших некастодиальных кошельков с картой, с кешбеком в 3% и 10% в первый месяц, представители, которого есть у нас в чате. Если ещё не открыли то вот рефка, даёт 30% скидку на карту, рефка есть только у нас, больше нигде. Перейдя по рефке нужно будет вбить свою почту и промокод FintechAndBanking, и через несколько дней дадут доступ к открытию карты со скидкой
#Ready#Argent
🔖Если вам нужна консультация
🔖Все наши посты тут
🔖Если хотите вступить в наш чат
🔖Тут все полезные рефки
🔖Если вы хотите написать пост на канале
✨Cino✨
🔲В чате нашли простую, как палку замену Curve, особенно актуально если вам, как мне влупили КурваБан😂. Встречайте Cino
🔲На самом деле писать тут есть не много о чем, но данный финтех может быть крайне полезен если у вас банк/финтех в ЕЭЗ, который ещё не поддерживает Apple/Google Pay, например из недавнего это Ready(Argent)
🔲Cino это Эстонский финтех-стартап с офисами в Таллине и Лондоне, выпускают дебетовые виртуалки Master Card (буквально недавно делали Visa) с бином 532700 от британского EMI Checkout SAS. Финтех зарабатывает пока только на interchange + FX-markup. Идея финтеха - разделение трат
🔲Тут пока по функционалу ещё даже близко не Curve, но это бесплатно и вообще нет никакого KYC. Нужен только телефон ЕЭЗ или Великобритании, а также почта. Предполагаю, что это временно, когда наберут клиентскую базу то кусь влупят и цену назначат
🔲Смысл этого сервиса - разделение трат с кем-то. Т.е вы создаете группу с человеком в приложении Cino, у каждого оно должно быть установлено, оба подвязывают там свою карту и выбирают, с кого сколько процентов будет списываться, на одну группу создается виртуалка (при этом у каждого она будет своя) и оба могут добавить ее в свой Pay. Условно вы поехали с кем-то в отпуск, платит один, а платеж через Cino автоматом разбивается на двух и у каждого списывается по 50% с их подвязанной карты или по столько процентов сколько вы назначите И для нас это может быть удобно в случае если вам надо подвязать карту, которую нельзя добавить в Pay. Можно также создать с кем-то группу, например с женой/мужем выставить 100% списания с кого-то одного у кого будет карта без Apple/Google Pay, возьмем для примера карту Ready (Argent) и таким образом Ready можно везде будет использовать без пластика, и кешбек к слову при этом не теряется
🔲Или можно на одном устройстве сделать два аккаунта Cino с разными телефонами и почтами, просто по мере необходимости разлогиниваться из одного аккаунта в другой и смысл останется тем же. Добавлять можно и несколько человек, т.е группа может быть больше чем 2 человека и количество этих групп может быть тоже несколько
🔲Важно отметить, что лимит трат тут 3000 евро по виртуалке Cino, в приложении написано, что лимит можно увеличить, но как пока не ясно, видимо надо к этом лимиту приблизиться, чтобы можно было что-то сменить. Также отмечу, что оплаты пока тестировались только в евро, здесь OIF нет точно, но он может быть на других валютах, эта нам еще надо будет проверить
🔲К сожалению никакие карты СНГ сюда не добавить, карта Cino не будет поддерживать с2с переводы и никакие валюты списания, как в Curve тут назначить нельзя. Но это бесплатно, просто и удобно, запомните этот сервис, это реально удобный инструмент, если знать как и зачем им пользоваться
🔲Рефка - дают 5 евро за регистрацию
#Cino#Ready#Argent
Консультация | Вступить в чат | Наши посты | Все рефки
🔲Карта:
⬇️Выдаёт карты (Mastercard) Paynetics AD болгарское электронное денежное учреждение, лицензированное БНБ (Болгарский национальный банк) с апреля 2016. Есть и пластик и виртуалка. Карта MC Trading 212 дает идеальные курсы Master Card на траты. Также есть кешбек до 1,5% в евро, но он смешной так как его лимит всего 15 евро в месяц, знаем мы варианты поинтереснее (Читай Gnosis, Ready). Виртуалка бесплатная, а пластик условно бесплатный - что-то около 5 евро он вам стоить будет
⬇️Есть карты одноразки, как у Револют, с таким же BIN, как у основных карт
⬇️Карта вяжется к Apple/Google Pay
⬇️Карта поддерживает и пополнение через с2с (с карты на карту)
⬇️Снятие наличных бесплатно до 400 GBP/мес ~ 472 евро, далее 1 %, не густо, но для бесплатной карты вполне хорошо
⬇️Лимиты на траты за транзакцию/в день/в месяц 10к/10к/60к евро
🔲Пополнение и вывод:
⬇️Банковский перевод SEPA/SWIFT/UK Faster Payments (Sort Code для отправки GBP через FPS можно запросить у поддержки) - бесплатно со стороны Trading 212. Выводить можно на те счета, с которых заводил. И активация счета будет после того, как вы переведете со своего счета хотя бы 1 евро
⬇️SEPA Instant не поддерживается на DE IBAN, но например в Германии есть Instant через привязку к вашему банку, возможно эта опция есть где-то ещё
⬇️Пополнение картой или через Apple/Google Pay бесплатно до 2к евро, далее - 0,7 % от суммы, и лимит обновляться не будет 😢, но в общем оно и ни к чему, есть другие переводы
⬇️Вывод средств тут также полностью бесплатен, похоже даже Swift тут ничего не стоит
🔲Еще из полезностей:
⬇️Деньги и ценные бумаги хранятся у кастодианов (Interactive Brokers, BNY Mellon) и защищены, наличные в GBP покрываются FSCS до £85 000 (Trading 212 UK Ltd ), в EUR покрываются до 100к евро если аккаунт в немецкой юрисдикции (FXFlat Bank GmbH) и до 20к евро если аккаунт в юрисдикции Кипра (Trading 212 Markets Ltd )
⬇️Очень хорошая и быстрая поддержка что на почте, что в чате - мое почтение
⬇️У брокера нет комиссии за бездействие и нет платных тарифных планов
🔲В общем брокер объективно всем хорош, так что стоит завести тут счет, хоть и придется немного с регой помучаться. Вот вам рефка, насыпят акциями рандомно до 100 евро, вчера насыпали 41 евро в акциях Meta например, считаю очень годно, особенно учитывая, что для выполнения условий надо лишь пройти регу и пополнить счет хотя бы на 10 евро и успеть надо за 10 дней
#Revolut#Gnosis#Ready#Trading212#Wise
Консультация | Вступить в чат | Наши посты | Все рефки