How does the plant know what to do and when

How does the plant know what to do and when

These are slabs. They look at you approvingly

Hello from the metallurgical plant! We have it arranged like this: everyone works according to the plan, and each level has its own type of planning. At the factory level, this is calendar planning, and at the shop level, it is scheduling.

The calendar plan is something that the factory promised to send to someone, and in the logic of planning, it simply appears out of nowhere and starts all other processes with its appearance.

For example, let’s consider the case of a conventional factory for the production of cranes in Ivanovo, which needs rolled sheets of various assortments. Let’s assume that both of them need it on January 20. This is the shipment date, i.e. the arrival at the production exit of the train that will pick up several carloads of metal.

This is a hard deadline: by this moment the rental car must be ready and waiting for the trains. But at the same time, he should not wait too long, because it is expensive, and space in the warehouse is limited.

This is where scheduling is carried out, i.e., the operation of equipment and the movement of materials are scheduled by dates and operations: what should be done in the required time horizon, taking into account technological limitations and potential production opportunities.

In order for the vehicle to successfully leave for Ivanovo on January 20, it must be galvanized and polymer coated on the 19th. That is, until January 19, we must reserve auxiliary materials for these operations in our warehouse, and they must be ordered and brought in advance. In order to have something to galvanize, the rolled steel must be rolled and cut in advance, and in order to have something to roll out of, the slabs must be melted beforehand. For this and related operations, the capacity of several workshops is required: at least hot rolling, converter production, cold rolling and coating.

This is roughly how all the operations necessary for what will have to be shipped to the customer are included in the calendar, from the final cutting of rolled steel to the initial production of the slab. But that’s not all.

Top-down and bottom-up plan

In fact, it is a much more multidimensional task. Calendar planning provides both accounting for optimal loading and balancing of all key performance indicators included in this process, for example, accounting for priority orders and setting quotas by product type.

If we focus only on what we sold to the market, then the plan will be unbalanced and very fragmented. Accordingly, after high-priority orders, you can determine what exactly would be great to do for optimal production loading. This will affect what we want to produce and sell in the coming months and which orders the sales department can accept and which will be postponed or canceled altogether. It looks like a set of quotas by types of manufactured products, i.e. the highest rental for mobile cranes in Ivanovo, then you can fill the quota with new orders, but not more than N thousand tons.

For example, an order has arrived and you need to put it in the calendar. For rental, you will need a slab (large ingot) of such and such assortment and chemical warehouse. If it already exists, then it is reserved in the required amount, and planning proceeds from it. If the required slabs are not available, then the entire production chain is planned — from the supply of pig iron to the smelting of steel of the required quality.

Materials for production are divided into critical and non-critical. Non-critical is like soda in the kitchen, which theoretically can run out, but we proceed from what it is. This is, for example, some paint products. And critical ones are things that need to be constantly monitored and reserved for a specific order. For critical materials, there are schedules of their availability.

Accordingly, when placing an order, the calendar plan is checked to see if it will be possible to get all the necessary critical materials by the time the order goes through the production stages. The availability schedule is when the material will be available. For example, it is already on its way to delivery, or it is lying in the warehouse, or it will be delivered by us by such a number. That is, the availability of production facilities and materials is checked.

Let’s assume that everything is enough or that additional chains are built so that everything will be done by the right moment from the semi-finished products that are in the warehouses. The final recipe for the preparation of this particular rolled product at our production comes out: how and when to get all semi-finished products, where and what warehouse stocks are reserved for it, by what date everything will be.

As a result, we have a rough idea of ​​what exactly and in what quantities we want to do. On the basis of this, you can plan the rest of the resources: the purchase of consumables and means of production, the presence of personnel in production and their number, determine the loading of each site (as long as it is clustered into shops, not aggregates). But at the same time, each of these conditions is also a limitation: for example, if we need 10 times more engineers for three days, it probably won’t work in the current reality.

Something may not be purchased at the right time due to the peculiarities of deliveries, some orders may simply not be fulfilled along with others, because the required production nodes will be fully loaded.

The result is a flexible set of “what we want to ship” quotas that are filled by the sales department several months in advance. Since the market, facilitating, operates according to the principle of the exchange, the plan is initially similar to a schedule with a large number of free slots. Most of the orders come in a horizon of three to four weeks, so they are then checked for feasibility and fall into the free slots of the plan.

Then, in the horizon three or four days, scheduling is connected, which determines the schedule for tomorrow’s shift.

Why do you need all this when you can do it according to the FIFO principle?


, to know which operations and when to do in advance. The customer tells us that he needs to ship, and we name the exact date when we are guaranteed to ship. And we know this thanks to the slot in the calendar planning and the evaluation of the schedule of passage of all stages of production by this order. That is, each order becomes a chain of descending deadlines:

  • Smelt a slab of the required assortment later than this number.
  • Rent no later than this.
  • Have a consumable in stock no later than this number and so on.

Without such an understanding, the terms will collapse.

Secondto get predictability of shipping times. The predictability of shipping times means that the sales force can promise the customer an order by a certain date without restocking for planning errors and various production incidents.

For example, if a repair suddenly occurred and something from the series will not be completed, the calendar will recalculate, take into account the repair and reschedule the dates for the order. These dates go to the sales department. The sales service informs the consumer if necessary.

Since at the moment every order when it gets into the calendar is virtually checked at every node along the entire production route for feasibility, there is an opportunity to clearly promise deadlines. Exact timing is a great relief for logistics (we order trains from the Russian Railways), and it improves customer service (as a result, we can take more orders).

From here we send our steel to customers

How is it done in practice?

Before automating and writing the algorithms of the KPiG system (calendar planning and scheduling), all this was done on a large sheet of paper with the help of a TT pencil and a ruler. The KPiG system, which we undertook, wrote and implemented, has significantly changed the situation.

In the table below in the left column – how it was before KPiG. In the right column – what we aimed for and achieved by writing our software. But we do not stop, improving it all the time.

Difficulties we encountered when writing software

The core of the mathematical model has been known for a long time and is quite universal.

Any solver-optimizer is suitable, as a rule, the good old methods of branches and bounds are used where the classic iterative does not help.

The difficulty is to describe each partition from production and each node, that is, to create an engine that implements an actual virtual copy of production. It’s certainly not a full production simulator, but it’s pretty close.

Well, the most difficult thing was to describe each part of the process. The most important component is the normative and reference documentation, which tells what each node does, from what and under what conditions, and also gives recipes for the manufacture of various products. And we have several thousand variants of types of products, and at the same time it can be manufactured in several different ways.

Variations are possible, for example, at the level of “it is necessary to melt a slab”, or “it is necessary to take a ready-made slab from the warehouse”, or “it is necessary to take a ready-made slab of a higher grade and do additionally that”. And there are also possible options between alternative routes in the production process: different converter shops, post-bake processing or polymer coating track, etc.

We took all the documentation on paper, rethought the approach to its elements, reworked route technical maps taking into account planning tasks, and created a set of related tables in the system, which we update daily. By the time you read this proposal, about a few years have passed, because the production is very large and quite complex, and not everything has paper documentation in an ideal form for us.

Plus, it took a lot of effort to bring the entire information exchange to a comprehensible general form.

For example, when an employee of the sales department indicates the parameters of the order, it is necessary to formalize the technical task much more precisely than a person usually did (in fact, engineers formalized the task for him): this also had to be solved with interfaces and automation of work with the information system.

But we did it all.

What does the KPiG system consist of?

  • From top-level calendar planning.
  • Router (order fulfillment checks through a virtual run for each division and warehouse, taking into account other already placed orders).
  • Scheduler (setter of tasks in a short planning horizon).
  • Order combiner (optimizer and clusterizer).

Before this, we had to write a knowledge management system to store and edit all descriptions of technological processes for the router, to make several dozen complex integrations with MES and other systems.

What happened

The supply chain usually consists of about 20 redistributions, this is a forecast of 45-50 days from slab smelting to finished products. When you weave thousands of such chains, then a person, in principle, cannot plan at such a level.

It was possible to avoid rolls of paper, to optimize production well and to give the opportunity to name specific dates of production of orders. Previously, the planning window was about a month. Planning is now based on specific orders, and not on a certain average volume, which increases accuracy. The order portfolio, which is formed from top to bottom and from bottom to top, allows you to optimally load capacities (it is always clear what needs to be sold and at the same time what should be optimally produced).

This, in turn, affected purchasing, sales and logistics, which also resulted in production optimization.

Unlike other local systems, KPIG is very tightly integrated into all processes, so somewhere it is affected by some factors, somewhere it affects something in production, but in any case, it is the main orchestrating element of the system in terms of shop loading.

Of course, there are hundreds and thousands of optimization points inside there — from the selection of optimal steel cooling modes (which affects the marriage) to the same optimization within the framework of one workshop for managing steel carriers and nodes.

Various optimizers also work within this. For example, customer promise and optimal capacity utilization are different parameters. Sometimes it is more important to work on packing the warehouse and then ship from it, sometimes to ship exactly on time without intermediate storage. It is necessary to take into account production residues, operational repairs, regulations and many other parameters.

In general, there is a sea of ​​separate interesting tasks, each of which, optimized even by 2-3%, costs tens of millions of rubles per year. And they are all waiting for their decision to be replaced by a script. And we are going to that.

Related posts