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

Резултати

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

Търсене: #applications

当前筛选 #applications清除筛选
djangoproject

@djangoproject · Post #450 · 27.09.2017 г., 11:51

https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django #Django is an extremely popular and fully featured server-side #web#framework, written in #Python. The module shows you why Django is one of the most popular web server frameworks, how to set up a development environment, and how to get started with using it to create your own web #applications. Prerequisites Before starting this module you don't need to have any knowledge of Django. You will need to understand what server-side web programming and web frameworks are, ideally by reading the topics in our Server-side website programming first steps module. A general knowledge of programming concepts and Python is recommended, but not essential to understanding the core concepts.

djangoproject

@djangoproject · Post #389 · 21.07.2017 г., 15:12

https://thinkster.io/topics/django Looking to build #fullstack apps with #Django? Looking to build a production ready Django #JSON#API? Building a Production Ready Django JSON API 🔸Setting up #JWT Authentication 🔸Profiles 🔸Articles 🔸Comments 🔸Following 🔸Favoriting 🔸Tagging 🔸Pagination 🔸Filtering 🔸Conclusion Configuring Django Settings for Production Building #Web#Applications with Django and #AngularJS 🔸Learning Django and AngularJS 🔸Setting up your environment 🔸Extending Django's built-in User model 🔸Serializing the Account Model 🔸Registering new users 🔸Logging users in 🔸Logging users out 🔸Making a Post model 🔸Rendering Post objects 🔸Making new posts 🔸Displaying user profiles 🔸Updating user profiles 🔸Congratulations, you did it!

GitHub Trends

@githubtrending · Post #14928 · 08.07.2025 г., 12:30

#other#applications#coding#codingchallenges#css#hacktoberfest#html#ideas#javascript#practice You can improve your coding skills by using a collection of app ideas that are organized by difficulty levels: beginner, intermediate, and advanced. Each project comes with clear goals, user stories to guide development, optional bonus features to enhance learning, and helpful resources. This helps you practice daily, experiment with new technologies, and build a portfolio to impress employers or clients. The projects range from simple tools like calculators to complex apps like chat systems or game engines. This structured approach makes learning coding practical, fun, and effective, helping you grow as a developer step-by-step. https://github.com/florinpop17/app-ideas

Venture Village Wall 🦄

@venturevillagewall · Post #3399 · 18.12.2024 г., 12:10

eLstar Dynamics Raises $10.48M eLstar Dynamics has successfully closed a $10.48 million funding round on December 17, 2024. Their innovative smart glass technology promotes controlled and sustainable visual comfort, finding applications in a wide range of industries due to its versatility and design. #Funding#SmartGlass#Sustainability#Innovation#eLstarDynamics#Technology#VisualComfort#Design#Applications#Versatility

GitHub Trends

@githubtrending · Post #14777 · 03.06.2025 г., 00:00

#other#applications#coderquad#college#fulltime#hacktoberfest#jobs#newgrad#position#posting#university This resource is a regularly updated list of entry-level jobs for new graduates in software, tech, computer science, product management, and quantitative roles for 2024 and 2025, organized by Coder Quad and Simplify[1][2][4]. It features a wide range of open positions from top companies, sorted by category like software engineering, data science, AI, quantitative finance, and hardware engineering. The list is easy to browse, with direct links to apply for each job, and is updated daily so you always see the latest opportunities. You can also use tools like Simplify’s browser extension to autofill job applications and get email alerts for new roles, saving you time and effort. This helps you quickly find and apply for jobs that match your skills and interests, making your job search much easier and more efficient[1][2][4]. https://github.com/SimplifyJobs/New-Grad-Positions

Venture Village Wall 🦄

@venturevillagewall · Post #3604 · 20.12.2024 г., 17:23

Navigating AI Opportunities & Threats Explore how AI presents both challenges and opportunities for small businesses. While larger firms dominate the market, many entrepreneurs can thrive with modest revenue targets. AI could lead to the decline of SaaS businesses due to cost-effective alternatives. However, it allows individuals to quickly replicate and improve existing applications, catering to proven market needs. Though scaling to $500M ARR is tough in niches, a small investment can create meaningful products. Innovators can introduce multiple unique offerings, even in shadow of larger tech giants. #AI#SaaS#Business#Investment#Tech#Entrepreneurship#Revenue#ProductDevelopment#Innovation#Market#Growth#Web3#Startups#Opportunity#Threats#SmallBusiness#Investors#ExistingMarket#Applications#PMF#CostEfficiency

Venture Village Wall 🦄

@venturevillagewall · Post #3395 · 18.12.2024 г., 12:10

Orqa Secures $6.09M Funding Orqa d.o.o., founded in 2018, has raised $6.09 million as of December 13, 2024. The company aims to become the leading technology provider for First Person View (FPV) and advanced Remote Reality (RR) applications, focusing on next-generation vision systems. More info at Orqa. #Funding#FPV#Technology#RemoteReality#VisionSystems#Orqa#Innovation#Investments#Startups#Drones#Development#Applications#NextGen#TechnologyProvider#TechIndustry#Entrepreneurship#R&D