28.06.2019

Программа Для Создания Графиков Дежурств

И учитывать внутренние документы, в рамках которых составляется график. Программа для создания графика работы на месяц ↑. Формирования документа этого вида имеет множество сложностей. Особенно для отдельных должностей (водители, иные), а также если необходимо вписать в него множество работников. В таком случае лучше всего использовать программу для составления сменных графиков работы сотрудников. Допускается дежурство медицинских работников на дому. Порядок оплаты праздничных дней при сменном графике работы узнайте из статьи: сменный график работы. Что говорится в 33 статья Трудового кодекса об увольнении, читайте здесь. AFM: Scheduler 1/11 — Программа составления нестандартных и оптимальных графиков работы персонала. (Для предприятий розничной торговли, промышленных, логистических и охранных предприятий, больниц, автосервисов, детских садов, ресторанов, кафе, банков, отелей, салонов красоты, небольших и средних Call-центров, безнозаправочных станций, многофункциональных центров, диспетчерских служб такси, таксомоторных парков и т.п.) Основные характеристики программы. Скачать программу для составления графика работы сотрудников. Программу 100 отжиманий. Скачать программу для составления графиков работы. На главную страницу сайта >.

Привет, друзья! Прошу сразу простить: статью старался писать для «самых маленьких» и очень понятным языком. Однажды, в далёком 2007 году, когда я лишь немного знал о кластеризации, нейронных сетях и «жадных» алгоритмах, передо мной стала задача о создании программы для автоматического составления расписаний. Предыстория такова:, и среди сотрудников нашего отдела было организовано дежурство. Ежедневно (и даже в выходные) кто-то назначался дежурным, и на этого несчастного возлагались ответственные и тяжёлые задачи по работе; дежурство было занятием не из простых. Мой командир заранее составлял и подписывал у командования график дежурства отдела на месяц. И эта задача, надо отметить, занимала у него вовсе не пять минут.

Так как командир был добрый человек и всегда старался идти навстречу своим людям, он мог составлять график и неделю, потому что нужно было учесть все пожелания сотрудников: кто-то уходил в отпуск, кто-то из него возвращался, у кого-то были командировки, а кому-то просто нужно было забирать пораньше детей из садика по понедельникам и четвергам. Бывало и так, что командир составлял «несправедливые» графики дежурств, в которых одним людям явно доставалось побольше работы, чем другим. В работе отдела также были и «трудные дни» недели (когда в пинципе и работы было чуть больше, и она была чуть напряжённее), и если дежурство выпадало одному и тому же человеку целый месяц подряд на такие дни, то график также считался несправедливым. Такие несправедливые графики коллектив отклонял, и командиру приходилось заново с нуля составлять новый график, иногда по невнимательности кого-то «ущемляя».

А что вы хотели: человеческий фактор! Так как я был программистом, я не мог позволить продолжаться этому «обезьяннему» труду дальше. Я поискал существующие варианты софта для автоматического построения графиков дежурств, но всем необходимым критериям работы и дежуства отдела они не удовлетворяли: не хватало функционала и точности настройки. Тогда у меня возникла идея самому создать программу, которая бы автоматически составляла подобный график, пусть это занимало бы и час работы компьютера (но всё же не неделю работы человека). Я обговорил идею с командиром и отделом, и она была принята на ура.

Были учтены все ньюансы и пожелания, которые мы обсудили. Так и родился проект «CoolPlanBro». CoolPlanBro изначально создавался как бесплатное программное обеспечение с закрытым исходным кодом: если бы его «вынесли» из отдела и распространили, то ничего страшного в этом бы не было. Забегая вперёд скажу, что проект всё-таки получил дальнейшее распространение, инициатором которого был я сам. Уж очень нужна была такая программа моим друзьям, друзьям друзей и так далее. Так и пошло, ведь аналогов не было. Кроме того, люди видели, что программа работает довольно сносно и выдаёт хороший, справедливый результат, а это было заложено в её архитектуру при создании как один из основополагающих базовых принципов.

Итак, как же я создавал эту программу и что легло в её основные принципы работы? Штраф за дежурство два дня подряд 70 Два дня подряд дежурить чертовски сложно и неприятно, но одолимо. Штраф за дежурство через 1 день 30 Штраф за дежурство через 2 дня 10 Штраф за дежурство через 3 дня 5 Штраф за дежурство через 4 дня 3 Идеально. Штраф за дежурство через 5 дней 1 Ещё идеальнее! Штраф за дежурство через 6 дней 0 Наиидеальнейше!! Штраф за дежурство в одноименный день 25 Дежурить две пятницы или два вторника подряд — плохо. Тетрадь по математике для дошкольников 6-7 лет. Штраф за дежурство в нежелательный день 30 Это когда кто-то ну никак не может подежурить в определённый день, а по графику — должен.

Для
  1. Андрей МИРОНОВ: Cool. Привет, друзья! Для автоматического составления посменного.
  2. Предлагаемая программа поможет составить график смен 2-2, график смен 3-3, график смен 5-2 или любой другой график работы с учетом Ваших потребностей. Планируйте количество персонала в каждой смене с соблюдением требований ТК! Согласно Трудовому кодексу РФ продолжительность рабочей недели не может превышать 40 часов. Чтобы обеспечить выполнение требований Трудового кодекса, необходимо составить правильный график работы сотрудников. Полная версия для автоматического расчета графиков работы до 40 человек. Бесплатная демо-версия графика смен сотрудников: Внешний вид (скрин-сейв) графика смен.

Программа Для Драйверов

Штраф за недежурство в желательный день 30 Это когда кто-то просится подежурить в определённый день (связано со спецификой работы), но по графику дежурит другой. Штраф за недобор/перебор дежурств 100 Все сотрудники должны отдежурить за месяц равное и справедливое количество раз (учитывается также отпуск и отгулы). Штраф за дежурство в день отпуска 500 Это просто чудовищно, но бывало и такое. Даша астафьева и юля кавтарадзе. Отлично, научили программу считать штраф для каждого графика. Теперь вопрос: как рассмотреть все графики?

Допустим, у нас 20 человек, а в месяце 30 дней, тогда общее число графиков, которые необходимо рассмотреть компьютеру равно (в первый день мы можем назначить одного из 20 человек — уже 20 вариантов, для каждого из них во второй день мы также можем назначить одного из 20 человек — уже 400 вариантов) 20 30 = 1 073 741 824 000 000 000 000 000 000 000 000 000 000, то есть чуть более одного дуодециллиона! Даже если бы компьютер строил и обрабатывал и считал штраф для одного графика дежурств в один такт одного ядра своего процессора, то четырёхъядерный процессор с тактовой частотой 4GHz на каждое ядро выполнял бы эту работу 6 710 886 400 000 000 000 000 000 0000 секунд, или 2.12810 21 лет, что составляет 150 миллиардов Возрастов Вселенной. Столько ждать мы не сможем: у кого-то через неделю уже командировки, а мы должны ориентироваться на дежурных. Вновь повторюсь: на момент создания CoolPlanBro я очень смутно представлял себе «жадные» алгоритмы, однако, ко мне в голову пришло весьма схожее с ними решение. Важное замечнание, которое я хотел бы упомянуть перед началом рассказа о придуманном алгоритме: парсер может подсчитать штраф и для не до конца заполненого графика. А алгоритм я запрограммировал так: вначале программа насильно перебирает все возможные графики для некоторого «вменяемого» количества первых дней месяца, так, чтобы рассчёт не превысил в сумме 65535 вариантов графиков (это количество графиков даже слабый компьютер переберёт весьма быстро). То есть для P сотрудников надо найти такое количество дней D, чтобы P D было меньше 65535.

Например, для P = 12 сотрудников количество дней D = 4. Это так называемая «база» для дальнейшего построения графика. Из 12 4 = 20736 просмотренных графиков (не до конца заполненных) программа находит лучший по минимальному штрафу, который, как я уже говорил в своей ремарке, она может подсчитать и для не до конца заполненного графика.

Если лучших графиков получилось много (например, 100 — и у всех одинаково маленькой штраф), то программа для всех этих 100 графиков далее пытается найти лучший, расширяя просмотр вперёд на 1 день. В конце концов, база (лучший, но не до конца заполненный график) найдена. Далее, отталкиваясь от базы, алгоритм перебирает все возможные графики на один день вперёд. Их число будет равно числу сотрудников. Если P = 12, то различных вариантов «база плюс один день» будет всего 12.

Программа Для Рисования

Из 12 вариантов выбирается лучший и запоминается как текущая база. И так далее до конца месяца, алгоритм срабатывает быстро. Если на любом этапе было найдено несколько оптимальных баз, то алгоритм рассматривает их все, последовательно, и для всего множества находит лучшую следующую базу. Так как «жадный» алгоритм не просматривает весь дуодециллион возможных графиков и может оказаться несправедливым, пропустив действительно оптимальнейший график, то для увеличения вероятности нахождения наилучшего графика я добавил в конец рассчёта этап оптимизации. На нём происходит следующее: для всех возможных пар дней (то есть 1-е число и 2-е число, 1-е число и 3-е число, и так далее, потом 2-е число и 3-е число, 2-е число и 4-е число, и так далее, в конце — 30-е число и 31-е число) сотрудники, дежурящие в эти пары дней «виртуально» меняются дежурствами, и, если такой график случайно оказывается лучше самого оптимального, то запоминается именно он.

Программа Для Создания Загрузочной Флешки

В конце концов получам оптимальный (по моему алгоритму) график дежурств с минимальным штрафом. Теперь можем экспортировать и напечатать его из Word'а. На этом моя работа над CoolPlanBro была завершена. Программа сразу стала пользоваться успехом в отделе, потом — в других, быстро перекочевала по флешкам из рук в руки, и, увидя это, я сам впоследствии выложил её в интернет.