# The Design of an Agent-Based Production Scheduling Software Framework for Improving Planning-Scheduling Collaboration

Pedro Gomez-Gasquet, Francisco Cruz Lario Esteban, Ruben Dario Franco

Pereyra, Victor Anaya Fons

► To cite this version:

Pedro Gomez-Gasquet, Francisco Cruz Lario Esteban, Ruben Dario Franco Pereyra, Victor Anaya Fons. The Design of an Agent-Based Production Scheduling Software Framework for Improving Planning-Scheduling Collaboration. 9th IFIP WG 5.5 International Conference on Balanced Automation Systems for Future Manufacturing Networks (BASYS), Jul 2010, Valencia, Spain. pp.301-308, 10.1007/978-3-642-14341-0_35. hal-01060736

HAL Id: hal-01060736

https://inria.hal.science/hal-01060736

Submitted on 16 Nov 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# The Design of an Agent-Based Production Scheduling
Software Framework for Improving Planning-Scheduling
Collaboration

Pedro Gomez-Gasquet,¹ Francisco Cruz Lario Esteban,¹ Ruben Dario Franco
Pereyra,¹ Victor Anaya Fons¹

¹ Universidad Politécnica de Valencia, Centro de Investigación de Gestión e Ingeniería de la
Producción, Cno. de Vera s/n, 46022, Valencia, Spain
{pgomez, fclario, dfranco, vanaya}@cigip.upv.es

**Abstract.** In the operation management environment, the process of production scheduling is responsible for detailing operating activities by indicating a set of methods and tools that are conditioned, among other restrictions, by the tactical decisions that are made in the production planning environment. Although, theoretically, a bi-directional flow of information should exist among both environments of decisions that permit those who are involved to coordinate both levels in practice, such does not occur because of a structured decision-making tool gap. This document proposes an architecture that is based on agents software designed with INGENIAS methodology and proposed from an analysis of requirements that is based on CIMOSA. Once it is implemented, a prototype that employs JADE has been carried out to test and verify its suitable operation.

**Keywords:** Production Scheduling, Agent, Collaboration Planning-Scheduling.

## 1 Introduction

The design of the system that is proposed is initiated once the analysis of the requirements has been completed. In this case, the requirements have been obtained by applying CIMOSA [1][2][3]. It provides optimal, desired images.

The reader should consider the proposed system to be the structural element on which the algorithms, methods, and other resources that are oriented to the scheduling in changing environments will subsequently be placed or where it is necessary to apply rescheduling of the previously established schedules. The functional coordination between the environment of the planner and the scheduler, in this type of environment, is based on cooperation. Communication is the fundamental objective of this software element.

From a technical point of view, the system's design is based on the agent-based paradigm that offers some interesting advantages [4]. Therefore, its design itself includes the employee methodological proposal INGENIA [5], which facilitates the development of systems that are based on agents and multi-agents. Although the
design is closely linked to the Technology of Information and Communication (TIC),
a vision of the employed methodology is provided in order to connect it with the most
conceptual levels of the process of production scheduling.

The remainder work is divided according to the following form: the second
paragraph analyzes the conditions in which the process of collaboration between
planner and scheduler should occur. In the third paragraph, INGENIAS methodology
is deployed in order to obtain the framework of the proposed software. The fourth
paragraph is dedicated to commentary about the practical use of the proposed
software. The report concludes with a summation of the aforementioned information.

## 2 Process Analysis of Collaborative Planning-Scheduling Operations

To proceed in the phase of requirement analysis, CIMOSA methodology has been
selected. It provides the advantage of offering a vision of the problem to analyze that
is structured according to various views (i.e., functional, organizational, resource-
based, and informational) that enrich the final analysis. Figure 1 presents the
functional point of view that production scheduling is defined like a domain; that is,
directly related to the domains of the planning (i.e., tactical), the design of processes
and products (i.e., strategic) and the operations control (i.e., operating).

<figure><img src="image_2.png" /><figcaption>Fig. 1. Main Elements of Functional View of Production Scheduling Domain.</figcaption></figure>

The objective that is defined inside the production scheduling domain is to obtain
production schedules in which the average of productivity that is reached in the
different periods is the highest that is possible. This aspect is fundamental and, from
our point of view, implies that the quantitative methods are suitable to give solutions
to the corresponding combinatorial problems as well as fundamentally promoting the
contribution among the planner. The planner decides the lots that one must carry out
in each period. The scheduler manages the capable manufacturing system that offers
the service in question. In this sense, one must emphasize that the suitable adjustment
of the capacity to the needs of each moment will be the one that facilitates the
attainment of the greatest productivity average.
Inside the production scheduling domain, only the domain process has been defined (DP-production schedule management) as being responsible for managing the allocation, sequencing, and timing of the lots that the planner has requested be manufactured in a determined period. Such management implies that the initial schedule is obtained by means of a business process (BP-predictive PS) that employs some algorithm that is adjusted to the characteristics of the problem in function of the known data to priori (e.g., static or predictive schedule). At the beginning of the period, the initial schedule will become the schedule in process. A new business process will run (BP-REVIVE PS) to detect events and, in that case, to try those that can affect the schedule in process (EV-upset, EV-new period, EV-restart) and imply the execution of some method to readjust the schedule in process to the current reality.

The proposed system is focused on a make-to-stock management, although other type of management will be tackled easily. Algorithms and methods should be adapted to each problem. What is provided is an architecture that enables the coordination between the planner and the scheduler to adjust the lot number and its volume of each period by means of an iterative process to carry out the major number of possible units. For example, consider the following in the case of:

* Predictive scheduling (i.e., initial schedule). Normally an upset among the employed times for the calculation in the environment of planning exists and the available time in the environment of scheduling once generated the schedule (e.g., the variable times of process and setups, dependence of the sequences, etc.).

* Reactive scheduling (i.e., schedule in process) consists of detecting the possibility of incorporating some new lot if the schedule in process advances faster than predicted. In other cases, it consists of canceling some lot that is included on the schedule in process if some delay that impedes the ability to carry out the predicted schedule occurs inside the current period.

One must remember that is possible that the initial schedule include some idle time that provides a solution to some small incident that is not predicted without modifying the initial selection of lots. This situation is normal, in order to avoid a high number of cancellations or incorporations of lots in each period.

The views of information and resources indicate that they have established the type of data and capacities that are necessary to manage the productive schedule.

## 3 The Jade-Based Production Scheduling System

Complex manufacturing systems consist of a number of related subsystems that are organized in a hierarchical fashion. At any given level, subsystems work together to achieve the functionality of their parent system. Each component can be thought as achieving one or more objectives. Thus, entities should have their own thread of control (i.e., they should be active), and they should have control over their own actions (i.e., they should be autonomous). Given this fact, it is apparent that the natural way to modularize a complex system is in terms of multiple autonomous
components that act and interact in flexible ways to achieve their objectives.
Therefore, the agent-oriented approach is simply the best fit.

In next sections, we present the agent-oriented models and methodology that we
have used in the development process of the scheduling problem of production.

**3.1 Description of the Modeling Process**

INGENIAS methodology employs several meta-models and a meta-model language for constructing models. All meta-models are based on objects, attributes, and relationships. INGENIAS methodology also integrates its meta-models into the Rational Unified Process (RUP) for developing software systems and offers a graphical development tool called the INGENIAS Development Kit (IDK).

During analysis and the design phases, five different meta-models are used: (i) an
organization meta-model, which defines how agents are grouped and identifies the
system functionality and the existing constraints in the agents’ behavior; (ii) an agent
meta-model, which describes the particular agents to be used and their internal mental
states; (iii) an interaction meta-model, which details how agents are coordinated and
interact; (iv) an environment meta-model, which defines the types of resources and
applications that are used by the system; and (v) a tasks and objectives meta-model,
which relates the mental state of each agent with its tasks.

This paper focuses on the analysis phase of the production. In the following
subsections, we will show analysis diagrams of a distributed, flexible, and
autonomous production scheduling system. This system could be easily connected
with the other subsystems in order to implement the agile manufacturing enterprise.

**3.2 Use Case Diagrams**

A use case diagram provides a snapshot model of a set of system behaviors that meets a user goal. Thus, this description represents a functional requirement that shows what happens, but not how it is achieved by the system. As previously mentioned, our study is focused on the scheduling system, in which four main use cases can be identified (Figure 2). In the “calculate predictive scheduling” use case, a feasible initial schedule to be carried out in the following days is created. This schedule is developed according to the manufacture lots that are defined in the master plan which is included in the planner set of use cases (not shown) but that is available with the “get periodic plan” use case. In the “reactive production adjustment” use case, previous schedules in which problems developed during execution are modified. Therefore, those schedules are reconfigured in order to adjust to factory changes. The schedule execution monitoring data is included in the last use case.
<figure><img src="image_3.png" /><figcaption>**Fig. 2.** Use Cases for the Schedule of Production Tasks.</figcaption></figure>

### 3.3 Organization Model

The organization model is defined by the organizational goals and tasks, the workflows that determine associations among tasks and general information about their execution; groups, which may contain agents, roles, resources or applications; and social relationships.

Several roles are distinguished in the organization model for the scheduling process (Figure 3): (i) planner, which is responsible for selecting the lots in a period; (ii) coordinator, which maintains information about all plants’ configuration and knows all restrictions and features of each machine and plant element; (iii) scheduler, which has the ability to schedule tasks and resources and supervises actual execution of a schedule in a specific plant; and (iv) worker, which oversees the schedule execution at the plant.

<figure><img src="image_4.png" /><figcaption>**Fig. 3.** Scheduling Process Organization Model.</figcaption></figure>

### 3.4 Interaction Model

An interaction model consists of identifying, for each use case, interaction goals, its members (i.e., the initiator and collaborators), nature, and specification (by means of
collaboration diagrams). Table 1 shows the defined interactions, the involved agents, and the interaction unit (i.e., message) that is used.

<table><caption>**Table 1.** Interactions Between Agents and Interactions Units.</caption><thead><tr><th>Interaction</th><th>Agent Actors</th><th>Interaction Unit</th></tr></thead><tbody><tr><td>Get Periodic Planning</td><td>Planner-Scheduler</td><td>Ask for Factory Capacity<br>Notify Factory Capacity<br>Notify Factory Planning</td></tr><tr><td>Notify Infeasibilities</td><td>Scheduler-Planner</td><td>Notify Infeasibilities of Planning</td></tr><tr><td>Notify Planning</td><td>Planner-Scheduler</td><td>Reject Lot<br>Get allocating options<br>Notify Capacity available<br>Modify Planning<br>Ask for a lot<br>Allocating new lot</td></tr><tr><td>Notify Scheduling</td><td>Scheduler-Worker</td><td>Notify new schedule</td></tr><tr><td>Notify problems</td><td>Worker-Scheduler</td><td>Notify the problem</td></tr></tbody></table>

## 3.5 Agent Model

In an agent model, a specific agent has been assigned to each role that is identified in the organization model. The goals, tasks, and mental states have to be associated for each agent. Figure 4 shows the scheduler agent model. The scheduler agent plays the scheduler role and this example has two main goals (e.g., set a schedule and increase the production rate average) and a set of tasks (e.g., check and load data, parameter adjustment, calculate predictive/reactive scheduling, tuning the schedule, validate/reject the results, notify a new schedule). They are achieved by means of a set of mental states. In the same way, a planner and a worker agent model exists. The first one plays the role of planner and coordinator, and the second plays the role of worker.

<figure><img src="image_5.png" /></figure>
<caption>**Fig. 4.** Scheduler Agent Model.</caption>

Figure 4 shows how a scheduler agent could be in a different mental state ("AHasMS"). For example, "waiting" for a proposal message, "scheduling" a batch of jobs, "ask for modifying" a batch of jobs, etc. From a specific mental state, the agent scheduler must reach his goals by using the available functions and tools.

**3.6 Task/Goals Model**

This model attempts to answer the questions of why, who, and how throughout the analysis process. "Why" refers to the goals that are defined for the system; "who" refers to the agents which are responsible for the goal fulfillment; and "how" refers to the set of tasks which are defined to achieve the goals.

Two major goals have been established: "predictive scheduling" and "scheduling adjustment or rescheduling".

Predictive scheduling comes from the functional view of the production scheduling domain, which is carried out in CIMOSA analysis. Figure 5 shows how this workflow must satisfy three main goals (i.e., satisfy planning, efficient use of resources, and set production scheduling). The "conversation" items that represent interactions between two agents (e.g., scheduler-planner and scheduler-worker) could be highlighted in the figure. These conversations are the core of the negotiation process that occurs in almost all functional processes.

<figure><img src="image_6.png" /><figcaption>**Fig. 5.** Predictive Scheduling Tasks/Goals Model.</figcaption></figure>

Regarding our analysis, the decomposition of the schedule creation workflow is shown in figure 6 as an example of the tasks/goals model. The associated tasks are the different steps of this workflow which are accomplished according to concrete roles.
<figure><img src="image_7.png" /><figcaption>**Fig. 6.** Scheduling Adjustment Tasks/Goals Model.</figcaption></figure>

Scheduling adjustment comes from the functional view of the production scheduling domain, which is carried out in CIMOSA analysis that is named “reactive scheduling.” Figure 6 shows how this workflow adds one additional goal, “keep a stable scheduling,” and displays what is relevant and characteristic about this function. This task maintains “conversations” as core elements in the process.

## 3.7 Environment Model

The environment model of the production scheduling organization is shown in order to consider that an internal application is managed by the planner to store and update executed plans that are created by the organization.

# 4 Using Proposed Software in a Ceramic Tile Factory

The resulting proposed framework software has been transformed in a prototype in order to be used in a typical make-to-stock industry, such as a ceramic tile enterprise. The software programming and deployment has been carried out by using the JADE platform (http://jade.tilab.com/) and JAVA language. The methods and algorithms have been developed in order to solve a hybrid flow-shop problem with sequence-dependent setup times [6][7]. Comparing the current processes at the selected enterprise and the new options that are provided by the prototype, one could observe that, as the top productivity rate is attained (i.e., 10%-25%, depending on the scenario) in the second case, it can be attributed to the overall reduction of idle time. These times have reduced as much for the relocation/sequencing of the lots in process as they have for the incorporation of new lots.
# 5 Conclusions

This paper presents a methodological development, based on multi-agent technology, of an application with which to overcome the scheduling production problem in a make-to-stock factory. It has been designed according to the actual dynamic production processes needs that allow the selling process to be realized in an online platform. Our approach is based on a medium-time project. This proposal is based on the system capability that offers the most suitable product alternative, even though it could involve scheduling changes if the global quality is improved.

In order to satisfy that goal, it is necessary to integrate the various distributed production steps in a flexible, adaptable, versatile, robust, and natural way. Agent/multi-agent systems technology has been used in the resolution of this problem, since it provides the required characteristics for manufacturing systems. We have currently centred our analysis on the scheduling problem, due to its critical importance in the whole process. The resulting software has been tested in the ceramic tile industry.

# References

1. *ESPRIT Consortium AMICE*. CIMOSA - Open System Architecture for CIM, 1993. Print.

2. Kosanke, K. "Cimosa - Overview and Status." *Computers in Industry* 27.2 (1995): 101-109. Print.

3. Zelm, M., F. Vernadat, and K. Kosanke. "The CIMOSA business modelling process." *Computers in Industry* 21.2 (1995). Print.

4. Wooldrige, M., and N. R. Jennings. "Intelligent Agents: Theory and Practice." *Knowledge Engineering Review* 10.2 (1995): 115-152. Print.

5. Pavon, J., and J. Gomez-Sanz. "Agent Oriented Software Engineering with INGENIAS. Multi-Agent Systems and Applications II." *Proceedings, 2691* (2003): 394-403. Print.

6. Gomez-Gasquet, P., C. Andres, and J. P. García-Sabater. "Dynamic Hybrid Flow-Shop Scheduling with Due Dates and Sequence Dependent Setup Times." *Production Planning and Scheduling* 2004 (PMS '04), Nancy, France. *Proceedings* (2004): 254-259. Print.

7. Gupta, J. N. D. "Flowshop Schedules with Sequence Dependent Setup Times." *Journal of the Operations Research Society of Japan* 29.3 (1986): 206-219. Print.