official

Заводы стоят, одни мордоляпы в стране!


Previous Entry Share Next Entry
brand new kaktus

Ужасы планирования

Сидел, планировал работу трех отделов. И тут черт меня дернул рассчитать идеальный, самый оптимальный план. Как выяснилось, на тот момент я даже не подозревал об эпических масштабах катастрофы, которая меня ждет. Представьте, что у вас есть небольшая конторка. На 7 человек. И каждого из них всего по 7 заданий. Какие-то можно делать сразу, а какие-то только после выполнения других задач коллегами. Так же задания разнятся по важности и по ожиданиям заказчиков. Как вообще составить оптимальный план?

Кажется все просто. Переберем все возможные варианты выполнения, и выберем из них оптимальный. 7 по 7, это всего лишь 49, компьютер за доли секунды справится.



Однако жопа, как выясняется, будет куда эпичнее.

Что такое вообще 7 заданий? Сколькими способами их можно выполнить?

Если задание одно, то ясное дело одним. Если два, то двумя — сначала первое, затем второе, или наоборот. Если три,то таких комбинаций уже шесть: 1;2;3, 1;3;2, 2;1;3, 2;3;1, 3;1;2 и 3;2;1. Для семи заданий вариантов будет 7! (семь факториал, по научному), то есть 1x2x3x4x5x6x7 = 5040.

Уже не 49, но пока все равно фигня. Идем дальше. Так как задания разных сотрудников могут зависеть друг от друга, нужно для каждой комбинации одного сотрудника подобрать оптимальную комбинацию выполнения второго. И выбрать лучшую.

Если сотрудника два, то полный перебор составит 50402 комбинаций, то есть 25 401 600.
Чувствуете динамику накала страстей? 7, 49, 5040, а теперь уже 25, сука, миллионов! Но это еще далеко не конец. У нас же семь сотрудников, а не два. А это значит, что мы имеем, мама дорогая, целых 50407 вариантов исполнения!

Вот это число: 82606411253903523840000000.

82,606x1024.

Восемьдесят два умножить на триллион в квадрате!

Тут, возможно, человек далекий от текущей ситуации в комьютеростроении подумает что говно-вопрос, современная техника и не такое как два пальца об асфальт пощелкает, ну подождем часок если что.

Боюсь, дорогие друзья, у меня для вас плохие новости.

Допустим, на рассчет одной комбинации из 49 заданий для всех сотрудников, компьютер потратит около 1000 тактов. Примерно, по 20 тактов на задание. Тогда современный, навороченный i7, со всеми его ядрами и гигагерцами сможет посчитать 10 миллионов наших комбинаций в секунду.

То есть оптимальный план будет найден через 82,606x1017 секунд, или через 2294 триллиона часов или через 95 триллионов дней, что всего лишь через 261 миллиард лет. Что примерно в 20 раз больше возраста существования нашей вселенной.

7 человек. 7 заданий. 261 миллиард лет.

Теперь представьте себе расчет оптимального плана в масштабах хотя бы небольшого заводика.

Тлен и безысходность.

Ну и на последок, покажу как сильно нарастает время расчета плана в зависимости от сотрудников и заданий.

3 сотрудника  по 3 задания — 0,000003888 секунды.
4 сотрудника  по 4 задания — 0,010616832 секунды.
5 сотрудников по 5 заданий — 21 минута.
6 сотрудников по 6 заданий — 318 лет.
7 сотрудников по 7 заданий — 261 миллиард лет.
8 сотрудников по 8 заданий — 28331540536 триллионов лет.

Вот как-то так, котята.



PS. Хотя, в масштабах математической вселенной, это такая фигня, что даже под микроскопом не разглядишь.
sp_jp_1024_l.jpg

Вот где обитают ПО НАСТОЯЩЕМУ МЕГАЭПИЧЕСКИЕ ВЕЛИЧИНЫ!

Buy for 100 tokens
Buy promo for minimal price.

velkoldin January 19th, 2015
ахахах
класс!

vmenshov January 19th, 2015
Походу, ты единственный, кто прочитал этот пост :)

real_marsel January 19th, 2015
О высоком думаешь.

gegenseite January 19th, 2015
я как то пытался объяснить человекам, что компьютер не может перебрать все уникальные шахматные партии (~10120) за сколь-нибудь приемлимое время, и никогда не сможет. Но так и не смог, не слушают.

lrlay777 January 19th, 2015
Вот потому он у вас не может их перебрать, что вы даже элементарные вещи людям объяснить не способны)

(Deleted comment)
valeriy_nsk January 19th, 2015
Теперь понятно, когда в нашей стране все будет спланировано и сделано. Пара секстиллионов лет и всё наконец-то будет ОК!

lrlay777 January 19th, 2015
ВОООТ! Объясняю, объясняю белоленточникам, что Путин тут не при чем, что на хамон им не хватает, а они не верят)

dlsemenov January 19th, 2015

Как все усложнено =) любая программа для планирования расписания проекта легко справляется. Многие задания не имеют разницы, в какой последовательности их выполнять, а значит теоретическое количество комбинаций резко уменьшается.
Но если следовать математике, то все просто эпично =)


vmenshov January 19th, 2015
Для несвязанных задач вообще все проще некуда. Отсортировал задачи каждого сотрудника по приоритету, и вот он, оптимальный порядок :)

mrlithe January 19th, 2015
БРЕД!
Что это за контора, где 7 сотрудников должны переделать каждый по семь заданий всеми возможными способами? Зачем? Что за мазохисты?

vmenshov January 19th, 2015
Не нужно делать всеми способами. Нужно посчитать оптимальную последовательность выполнения, и просто довести ее до сведения сотрудника.

dik_v January 19th, 2015
Увольняем двух лишних сотрудников.
Решаем задачу.
Profit!

brenik January 19th, 2015
8 сотрудников и уже никакой работы нет

jmyshanya January 19th, 2015
поэтому госплан и загнулся. и страна с ним.

lrlay777 January 19th, 2015
Ждем Евраплопарламент. И ЕС с ним.

lrlay777 January 19th, 2015
А ты прикинь , каково Путину?!

topol January 23rd, 2015
другие страны как то без замшелых телезвезд на десятки лет обходятся, и планируют меньшие задачи параллельно конкурирующие предприниматели, а не на узкое административное горлышко распиаренной телеперсоны вверху все вплоть до деревенского сартира отдают на откуп за 11 рубленных)))

max_andriyahov January 19th, 2015
Э. Голдратт "Метод критической цепи" тема раскрыта полностью

vmenshov January 19th, 2015
Лежит, смотрит на меня немым укором. Ждет прочтения :)

(Deleted comment)
lrlay777 January 19th, 2015
Кстати, Василий, а покажи мне фотки идиотов, которые математику руководящую должность доверили. Я хочу поржать)

vmenshov January 19th, 2015
Я уже поржал со статистики этого поста :)

shaltay_boltay January 19th, 2015
Меньшов, да ты математику не учил в школе, 7 человек будут выполнять 7 заданий параллельно, каждый по 1-му заданию

vmenshov January 19th, 2015
Я ж не про время выполнения, а про время планирования и количество вариантов.


timon_timonich January 19th, 2015
Зачем мозг народу взрываешь? )

vmenshov January 19th, 2015
Пишу планировщик :)

Хотел в лоб, а хрен там.

fukuro_raw January 19th, 2015
Очень интересно, не знал об этом.

dewald January 19th, 2015
Слушай, я, наверное, туплю, но смотри. Ты пишешь: "какие-то можно делать сразу, а какие-то только после выполнения других задач коллегами". По логике это должно сильно сократить число возможных комбинаций, разве не?


vmenshov January 19th, 2015
На самом деле так оно и есть. И количество вариантов, которые имеет смысл рассматривать будет сильно меньше. Но это же надо ломать мозг и придумывать хитрый алгоритм. Который будет отсекать и оптимизировать.

Лобовое решение - оно же простое как швабра, и гарантированное по результату. Но я сам не ожидал, какой там пипец со временем расчета. Я думал там жопа для сотен и тысяч задач начинается, а оно вон оно как.

know how

Inactive Border January 19th, 2015
У нас полностью сбалансированный по объемам и мощностям строительный календарный план (диаграмма Ганта) на какие-то там тысячи работ в проекте с кучей ресурсов, исполнителей и техники, считается в полностью автоматическом режиме - секунды, не смотря на то, что и Вы и Microsoft считает эту задачу не формализуемой...

Причем именно рассчитывается, а не просто рисуется черти что!

Edited at 2015-01-19 10:00 pm (UTC)

vmenshov January 19th, 2015
Не подскажете, в какой программе считаете?

shaltay_boltay January 19th, 2015
Вопрос на засыпку!
как ты думаешь, сколько народу из первой тыщи в рейтинге используют новый дизайн?
зы: я знаю точный ответ)

Edited at 2015-01-19 10:52 pm (UTC)

sevabashirov February 6th, 2015
500?

far01 January 20th, 2015
Может поэтому и существует организация и планирование труда, а инициатива имеет иницатора)
Как мне сказали в одном комментарии - в мире нет людей, способных управлять сложными системами. Хоть и сомневаюсь в этом.

poor_sysadm January 22nd, 2015
Тот, кто это сказал, перепутал систему с бессвязным набором компонентов.
Отличительное свойство системы прежде всего в том, что она самостоятельно обеспечивает управление своими компонентами, давая возможность управлять ею в целом.
Примерно как автомобиль самостоятельно управляет подачей топлива, углом опережения зажигания, в продвинутых ещё и подруливает и подтормаживает, сама протирает стекло, чтобы дать возможность водителю не задумываясь об этих вещах двигаться в нужном ему направлению с разрешённой скоростью.

poor_sysadm January 22nd, 2015
если не учитывать то, что задания разные, способности и квалификация сотрудников разные - то да, перебирать можно до опупения.
А на самом деле жизнеспособных вариантов 2-3, причём один отсеивается, потому что один человек в отпуске, а второй - потому что другой опаздывает.

Примерно как в шахматах, перебирать все варианты ходить ко конца сначала одной крайней пешкой, потом другой.

gull_25 January 23rd, 2015
Вот почему появляются такие задавальщики задач? Потому что в стране одни менеджеры , не имеющие знаний о предмете управления. А предмет задает технологию (дорожную карту, последовательность), назовите как хотите. Например, производя телефон сначала нужно сделать детали, каждая деталь тоже имеет свою последовательность. Со строительством - то же самое. В проектировании тоже последовательность задана. Техзадание - техпредложение, техпроект... И вот эта последовательность позволяет осуществлять НАПРАВЛЕННЫЙ перебор. Но это уже обучающиеся системы проектирования.

posvenchuk January 23rd, 2015
А вдруг получится. И построим социализм.

Re: В тему.

joe_noname January 24th, 2015
Васяню уже имели во все дырки с этим его примером. Не стоит повторять глупость.

sergey_ivanov1 January 23rd, 2015
Абсолютно не корректно всё просчитано. Вы не учли того, что компьютер не имеет интеллекта.
Человеку на решение подобной задачи понадобится гораздо меньше времени. А человеку, находящемуся в "теме", ещё меньше. Его мозг не будет просчитывать все варианты, но пойдёт по кратчайшему пути, исходя из имеющегся опыта , ранее решённых подобных задач и т.д. В конце-концов, львиная доля "правильных" решений, принимаемых человеком, основывается на так называемой интуиции, которой у компьютера нет.

joe_noname January 24th, 2015
> основывается на так называемой интуиции

Ну, так и решите поставленную задачу с помощью этой интуиции.

juicy_fruit January 23rd, 2015
Василий, ты же вроде бы не пьешь! Но что то точно куришь :)

vmenshov January 23rd, 2015
Больше двух недель уже как не курю :)

lexkimdoors January 23rd, 2015
Вы мне должны, за ремонт мозга! )))

Edited at 2015-01-23 10:19 pm (UTC)

?

Log in

No account? Create an account