GithubHelp home page GithubHelp logo

job_shop_competition_case's Introduction

Job_Shop_Competition_Case

Общая постановка

Есть предприятие, на котором производится продукция различного ассортимента. На производство поступают заказы от клиентов на изготовление определенного типа и объема продукции. Предполагается, что портфель заказов и их стоимость известны перед началом планирования. Каждый заказ имеет свою технологическую карту производства, т.е. последовательность операций от сырья до получения готовой продукции. Операции по обработке материала выполняются на оборудовании, которое предназначено для выполнения определенного типа операций (может быть указано несколько типов операций для одного оборудования). Промежуточный продукт производственной цепи называется полуфабрикатом. Прежде чем приступить к следующей операции на оборудовании необходимо произвести операцию переналадки оборудования (переключения оборудования на другую операцию, подготовка к обработке нового полуфабриката, очистка оборудования и т.д.). Кроме того, необходимо учитывать время перемещения полуфабрикатов продукции между цехами.

Цель решения задачи

Построить расписание производства заказов таким образом, чтобы максимизировать выручку производства на фиксированном промежутке времени (30 дней).

Ограничения

  1. Если режим работы оборудования соответствует mode_0, то одновременно на этом оборудовании может выполнятся только одна операция;
  2. Перед каждой операцией по обработке полуфабрикатов необходимо произвести переналадку;
  3. Операции переналадки и обработки полуфабриката не могут происходить одновременно;
  4. Заказ может состоять из нескольких конечных продуктов. Частичное выполнение заказа к отчетной дате добавляет 0 ед. к выручке;
  5. Каждый конечный продукт в заказе имеет последовательность технологических операций, которую нельзя нарушать;
  6. Перемещение, переналадка и обработка полуфабриката не могут выполняться одновременно для одного полуфабриката.

Допущения

  1. При планировании не учитываются потери сырья в процессе производства. Таким образом, масса готовой продукции равна массе исходного сырья.
  2. Оборудование работает без перерывов. Таким образом, технологические перерывы и регламентные процедуры не учитываются при планировании.
  3. Не все заказы должны быть запланированы.

Работа с проектом

  1. Скачать файлы из репозитория
  2. Установить следующие пакеты: pandas 1.3.4, ortools 9.1.9490
  3. Запустить расчет из командной строки: python FLOW.py

job_shop_competition_case's People

Contributors

antonnester avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.