Chapter 12

Multi-Agent Systems for Real-Time Adaptive Resource Management

Petr Skobelev    Smart Solutions, Ltd., Samara State Aerospace University, Samara, Russia

Abstract

According to Stephen Hawking, the twenty-first century will be the century of complexity, compared to the previous century of physics and biology. The growing complexity of the modern real-time economy is already well recognized and is associated with increased uncertainty and the dynamics of demand and supply, the individual approach to clients and resources, etc. The new economy strongly demands adaptive solutions for real-time decision-making support on resource allocation, scheduling, optimization, coordination, and controlling, which need to support a high level of adaptability and responsiveness in real time. However, there is a gap with existing solutions based on combinatorial top-down methods and tools of scheduling.

Multi-agent technology is considered to be one of the most innovative and powerful tools for solving this problem. In this paper, we will present our approach for developing adaptive multi-agent solutions for solving scheduling problems in real time and give examples of our commercial applications in industry, which have run in everyday operations for several years and offer both measured and proven benefits. For all these applications, multi-agent technology has been critically important in providing the required functionality of solutions.

Keywords

Multi-agent technology

Adaptive scheduling

Demand-resource network

Multi-agent platform

12.1 Introduction

The twenty-first century will be seen as the century of complexity, compared to the previous century, which was dominated by physics and biology. The growing complexity of today’s real-time economy is already widely recognized and associated with the increased uncertainty and dynamics of demand and supply.

The new economy strongly demands adaptive solutions for the real-time decision-making support necessary for resource allocation, scheduling, optimization, coordination, and controlling, which need to support a high level of adaptability and responsiveness in real time.

However, there is a gap in the existing solutions based on combinatorial methods and tools of scheduling (Leung, 2004), where all orders and resources need to be known in advance.

Multi-agent technology is considered one of the most innovative and powerful tools for real-time scheduling, and can solve problems “on the fly.”

In this chapter, the approach for developing multi-agent solutions for solving real-time scheduling problems will be presented, as well as examples of commercial applications that have been running in day-to-day operations for several years and have produced measurable and proven benefits.

Multi-agent technology was critically important for all these applications in providing the required functionality of solutions.

12.2 The Problem and Solution for Adaptive Scheduling

12.2.1 The Modern Vision of Resource Scheduling Problem

The modern vision of the resource scheduling problem assumes that there is an organization with a number of static or Global Positioning System (GPS)-based mobile resources that receives orders in real time, as well as a flow of other unpredictable events: order cancelations, resources unavailable, failures, delays, etc.

The plan for resource usage has to be dynamically formed and continuously and adaptively revised, taking into consideration individual sets of criteria, characteristics, preferences, and constraints concerning orders and resources. The full cycle of resource management must include fast reaction to new events, the allocation of orders to resources, the scheduling of orders/resources, the optimization of orders (if time is available), communication with users, monitoring of plan execution, and rescheduling in case of a growing gap between the plan and reality.

The revision of the schedule must be made by the allocation of operations to open time slots or by solving conflicts between operations that can be shifted to previously allocated resources or reallocated/swapped to the new resources.

Communication with users means supporting a dialog with the users via mobile phones or other tools initiated by either side at any time.

12.2.2 Brief Overview of Existing Methods and Tools

The solving of classical problems on resource scheduling (also known as Non-deterministic Polynomial-time (NP)-hard complex problems) was originally formulated as a batch process where all orders and resources were given in advance and were not changed during runtime.

Traditionally, the enterprise resource planning (ERP) systems and schedulers offered by SAP, Oracle, Manugistic, i2, ILOG, and others implement batch versions of linear or dynamic programming, constraint programming, and other methods based on a combination of search options (Shirzadeh Chaleshtari and Shadrokh, 2012). In the case of one well-known scheduling system, it may take up to 8-12 h to allocate 300 trucks to 4500 orders. However, it may turn out that only 40% of this schedule is feasible in the real-world application.

To reduce the complexity of combinatorial searches, new methods consider heuristics and meta-heuristics (Vos, 2001), allowing the provision of acceptable decisions in a reasonable time and reducing search options. Some examples are “greedy” local search methods, simulated annealing, adaptive memory programming, tabu searches, and ant optimization.

However, these methods still use batch processing and struggle to take into consideration real-life criteria, preferences, and constraints.

The search for options remains very time consuming and results are often just not feasible or not comparable given the nature of human decisions.

12.2.3 The Multi-Agent Technology for Adaptive Scheduling

The fundamentals of multi-agent technology began to form in the last decades of the twentieth century at the edge of artificial intelligence, object-oriented and parallel programming, and telecommunications (Wooldridge, 2002).

In contrast with classical large, centralized, monolithic, and sequential programs, multi-agent systems (MAS) are built as distributed communities of small autonomous software objects working asynchronously but in a coordinated way to get the results.

The key features of MAS can be specified in the following way:

 Agents work autonomously, which means the agent cannot be called as a method, only asked to carry out tasks.

 Agents can react to events but can also trigger their activities internally and try to proactively achieve their objectives.

 Agents can communicate and coordinate decisions with other agents and can change their decisions adaptively.

At present, multi-agent technology is considered a new paradigm for solving complex problems that are difficult or even impossible to solve by classical mathematical methods or algorithms (Shoham and Leyton-Brown, 2009)—for example, in scheduling and optimization, pattern recognition, text understanding, and other domains.

Multi-agent technology was initially applied to solve classical optimization problems through the use of distributed problem-solving approaches—for example, the distributed constraint optimization problem (Rolf and Kuchcinski, 2011). Alternatively, a number of bio-inspired methods were developed—for example, swarm optimization, hybrid methods based on an artificial immune system, and particle swarm optimization for solving production planning problems and others (Gongfa, 2011; Xueni and Lau, 2010).

As a next step, a market-based approach to scheduling was developed where order agents and the resource agents participate in continuously running auctions based on contact-net protocols (Pinedo, 2008; Allan, 2010; Noller et al., 2013).

There are a growing number of first prototypes and industrial solutions based on multi-agent solutions (Pechoucek and Marík, 2008; Leitao and Vrba, 2011; Florea et al., 2013).

12.2.4 The Concept of Demand-Supply Networks

The developed approach is based on a “holon” concept of the PROSA system (Brussel et al., 1998) where specific classes of agents of “orders,” “products,” and “resources” were introduced, as well as a “staff” agent that monitors results and advises other agents when required.

To make this approach more flexible and efficient, the concept of demand-supply networks (DSN) was introduced, where agents of demands and supply compete and cooperate on the virtual market (VM). In this concept, any agent (holon) of physical or abstract entity can generate “small” demand-and-supply agents that follow the specific requirements—for example, a truck can demand a driver or fuel, a route, and maintenance. From the other side, the truck can be busy for the first half of a day only and is interested in finding and supplying a truck for orders for the second part of a day. As a result, the schedule can be formed as a kind of requirement-driven network of operations that can be easily adapted by events in real time (Skobelev and Vittikh, 2003, 2009).

Another example: An order for product assembling can generate demands for specific equipment and a worker as factory resources, but the same equipment can generate a new demand on regular maintenance or special repairmen. The role of demand agent here is to get the best possible time slot of equipment and worker in the factory schedule or a truck in cargo transportation, etc. The role of a supply agent is the opposite—to provide full utilization of the resources. Having received proposals from various supply agents, the demand agent can decide which proposal is most appropriate, and vice versa, because DSN agents have conflicting interests and operate in the VM according to their economic reasons. The decision-making rules for agents in the VM are determined by the microeconomic model of a DSN, which defines the virtual cost of services, the penalties and bonuses, rules for sharing the profits, what taxes should be paid under various conditions, etc. It gives agents an opportunity to accumulate virtual money and use it for getting the best possible options. In fact, the virtual money plays the role of energy, and agents use it to create new schedules or adapt fragments of the existing ones. This model can become more and more complex due to: (1) introducing new agents into a DSN that represent the interests of various physical or abstract entities; and (2) the increasing number and variety of classes of interaction protocols between agents.

Specific DSN-based methods and tools were developed to design adaptive MAS for real-time scheduling (Rzevski and Skobelev, 2014).

12.2.5 The Formal Problem Statement

The formalized problem statement is based on searching for a consensus between agents in a DSN VM and can be formulated as follows.

Let’s assume that all agents of demands and supply have their own goals, criteria, preferences, and constraints (for example, due date, cost, risk, priority, required equipment type, or worker qualification). The importance of each criterion can be represented by weight coefficients in a linear combination of criteria for the given situation in scheduling, but can change during the schedule forming or execution.

Let’s introduce the satisfaction function for each agent (Figure 12.1a), which will show deviations of the current value of this function from the given ideal value by any of the criteria for the current step of finding a scheduling solution for this agent. The activity of agents also depends on bonus/penalty functions and the current budget allocated on specific accounts for virtual money (Figure 12.1b).

f12-01-9780128003411
Figure 12.1 Example of a satisfaction function (a) and a bonus/penalty function (b).

Let each demand j have several individual criteria xi and suggested ideal values xijid. Each agent of demand j normalized bonus/penalty function is calculated by component i (virtual value), given for example as a linear function fijtaskxixijidsi1_e. In most of these cases, this function has a bell form with a maximum at the point of the suggested ideal value. As a summary value of the result for each demand, the sum of virtual values for each criterion i with the given weight coefficients αijtask is estimated.

By proper selection of the signs and form of the function, the goal of each agent can be reformulated as maximizing the virtual value yjtask of demand j (upper index task means that the values belong to the demand agents):

yjtask=iaijtask.fijtask(xixijid)

si2_e

where ∀j weight coefficients are normalized: iaijtask=1si3_e.

Similarly, the problem of finding the states xij* of agents of demands j, which maximize the total value of all orders, can be formulated:

ytask=jbjtaskyjtask=jbjtaskiaijtaskfijtaskxixijid

si4_e  (1)

ytask*=maxxiytask

si5_e

where βjtask is the demand weight that allows us to set and dynamically change the priorities showing the importance of the criteria.

Similarly, the value function can be given for the supply using criteria zk, with the bonus/penalty function fklreszkzklidsi6_e, the weight αklres of criterion k for resource l, and resource value βlres for the system (which is similar for the weight for the demand agents function):

yres=lblresylres=lblreskaklresfklreszkxklid

si7_e  (2)

yres*=maxzkyres

si8_e

zkDK,xiDIi,k,I=DimDI,K=DimDK

si9_e  (3)

Variables x and z belong to some areas of the space of criteria for demands and supply, I and K are dimensions of the corresponding criteria spaces, and upper index res means that the values belong to resource agents.

Thus, in Demand-Supply Network (DSN) the optimization problem is formulated as solving Equations (1)(3).

In other words, in the suggested bottom-up methodology, one global optimizer is replaced by many small local optimizers that are able to negotiate and find trade-offs when they search their local optimums.

12.2.6 The Method of Adaptive Scheduling

The developed method is based on a DSN concept where agents of demands and supply operate in the VM and continuously try to improve their individual functions of satisfaction that reflect their given multi-criteria objectives.

The core part of the developed method can be identified as the following:

1. The number of classes of demand and supply agents represents the specifics of the problem domain with the required level of granularity.

2. Satisfaction functions and the function of bonuses/penalties are represented by a linear combination of the multi-criteria objectives, preferences, and constraints of each agent.

3. Protocols are defined that specify how to identify conflicts and find trade-offs with the open slots, shifts, and swaps of operations.

4. A schedule formed in the process of DSN agent self-organization is based on decision making and the interaction of agents.

5. Special event procession protocols are triggered when new events occur (for example, the arrival of a new demand):

a. An agent is allocated to a demand as it arrives in the system. The demand agent sends a message to all agents assigned to available resources stating that it requires a resource with particular features and it can pay for this resource with a certain amount of virtual money.

b. All agents representing resources with all or some specified features and with the cost smaller or equal to the specified amount of money, offer them to the demand agent.

c. The demand agent selects the most appropriate free resource from those on offer. If no suitable resource is free, the demand agent attempts to obtain a resource, which has already been linked to another demand, by offering to that demand some compensation.

d. The demand agent that has been offered some compensation considers the offer. It accepts the offer only if the compensation enables it to obtain a different satisfactory resource and at the same time increase the overall value of the system.

e. If the demand agent accepts the offer, it reorganizes the previously established relationship between that demand and the resource and searches for a new relationship, with the resource increasing the overall value of the system.

f. The same process is running with resource agents that are able to generate supply agents with specific context-based requirements.

6. The preceding process is repeated until all resources are linked to orders and there is no way for agents to improve their current state or until the time available is exhausted.

To achieve the best possible results, agents use the virtual money that regulates their behavior. The amount of virtual money can be increased by getting bonuses or it can be decreased by penalties, depending on their individual cost functions. The key rule of the designed VM is that any agent that is searching for a new and better position in the schedule must compensate losses to other agents that change their allocations to resources, and the propagation of such a wave of changes is limited by virtual money (Skobelev and Vittikh, 2009).

The use of the VM presumes that demands buy the services of the resources that, in their turn, have static or dynamic cost. The dynamic cost of the resource depends on how resources can be shared. For example, a truck has a certain cost, but it is distributed between its cargoes with some planned profitability given in advance. As stated before, the agents can offer each other compensations for shifts and reallocations, the sum of which is defined during negotiations between demand and supply agents. If the cost of functioning is not covered by the income, the resource can decide to switch off.

The main features of the suggested VM microeconomics are:

 Agents have ideal and current values of objective functions, which are used to compute the agents’ “satisfaction” with the current plan.

 Order agents enter the system having virtual money to achieve their objectives, including service level, costs, and delivery time.

 Resource agents look for their maximum utilization, but also have their own ideal preferences, constraints, and costs for sharing.

 Product agents are interested in minimizing the time spent in storage.

 There are dynamic values of weight coefficients of the scalarized objective function that are linked to a virtual money bonus or a penalty for orders, products, and resources, and each criteria has its own coefficient of conversion to virtual money.

 The current virtual budget is used by agents to improve their local allocation of demands and supply in the schedule.

 Agents iteratively improve their criteria to reach locally optimal values, compensating for the losses of other agents from their virtual budget, in such a way that virtual profit is growing.

Such an approach offers opportunities to introduce virtual taxes related to the agents’ job planning and execution, the cost of messaging between agents, and so on. These taxing mechanisms can be used to control the process of the self-organization of the schedule and provide a good quality schedule within a limited time.

If necessary, the user can interactively intervene with the plan at any time and manually rework the schedule by dragging and dropping the operations.

As a result, the plan will be automatically revised and rescheduled.

12.2.7 The Basic Multi-Agent Solution for Adaptive Scheduling

The basic solution includes a number of agents, which are applicable for various domains of real-time resource scheduling:

 The agent dispatcher, which supports the agent life cycle, the creation and termination of agents, and communication protocols.

 The agent for supporting messaging services.

 The main classes of PROSA agents and supporting agents of DSN.

 The event queue agent that is responsible for events processing.

 The scene agent for data loading and serving the resulting schedule.

The list of the designed basic classes of agents is shown in Table 12.1.

Table 12.1

The Main Classes of Agents

Agent ClassSpecification of an Agent’s Behavior, Its Main Goals, and TasksAttributes
OrderThe goal of the order agent is to complete the order in time, with maximum quality, minimal cost, best delivery time, and minimum risk. Tasks include the loading of business processes (BPs), creation of the BP agent, analysis of their results, changing the settings and strategies of the BP agents, and triggering the proactivity of BP agentsService level, real and virtual money for order execution, given specifications for resources, deadline for order execution, risks
Business process (technological process)The goal of the BP agent is to coordinate business or technical jobs (tasks or operations) and make sure they are properly scheduled. Tasks include the decomposition of processes into jobs (operations), creation of the job agent, analysis of their results, changing the settings and strategies of the job agents, and triggering the proactivity of job agentsPreferred time slots, real and virtual money for order execution, given specifications for resources, job interdependencies and deadlines
Job/taskThe goal of the job agent is to find the best possible resource for executing the job. Tasks include finding the best resources with matching characteristics and getting an agreement on allocating the job to the free time slot or starting negotiations for solving conflicts with the previously allocated jobs by shifting and moving the jobs between resources, and proactive improvement of the job state according to the situationGiven characteristics of resources, real and virtual money for job execution, time and cost preferences, interconnections between jobs, deadlines
Person for job executionThe goal of the person agent is to maximize the resource workload and utilization via the best orders and to get a bigger salary. The tasks include participating in matching and negotiations of jobs allocation, calculating the dynamic price for jobs, sharing costs between jobs, state analysis and the proactive search for better jobs, overriding availability constraints when required, and calculating salaries and bonusesAvailability (for example, an 8-h working day), key competencies and skills, current load and potential capacity, and cost and risks
Machine or tool for job executionThe goal of a machine is to maximize its resource workload and utilization by using the best orders. One person can operate with a few machines or one machine can require a few persons. The machine may require regular maintenance or repairmenAvailability, maintenance regularity, load productivity, cost and risks, energy consumption
Product (physical or abstract)The goal of the product agent is to get the best characteristics to match order specifications and requirements and to be delivered in time and with minimum costs and risksDomain-specific product requirements which are specified in order
Organization (team, department)The goal is to balance the workload of the resources. The tasks include switching the resources on and off, resource workload monitoring, preselecting resources for allocation, discovering the “bottlenecks” in an organization and generating recommendations, calculating Key Performance Indicators (KPIs) for the organization, and managing resource strategiesThe list of resources, the availability of resources, and other preferences and constraints for an organization
EventThe goal is to manage the events queue. The tasks are the input of the event into the system, activation of the required agents, collecting information on event processing, generating estimations of the results of event processingEvent type, time of occurrence and time of input of the event, time of event processing, value of the event
Resulting scheduleThe goal is to fix the resulting schedule for the users. The tasks include monitoring scheduling processes and fixing the result in case when it has reached the required level of quality, oscillations of solution reached the “plateau” with a given delta-epsilon, and the available time was exceeded or the user intervenedLevel of the solution quality, delta-epsilon for oscillation, the available time interval

t0010

The presented list of agents (Table 12.1) can be adjusted during the development process for a specific domain of scheduling. As an example, the list of agents and protocols regarding their negotiations for a factory scheduler is given in Figure 12.2.

f12-02-9780128003411
Figure 12.2 The main classes and lines of agent communications.

The “scene” is an object model of the forming schedule in which jobs/tasks are linked with time slots of resources. The scene is considered to be a “mirror” of the reality. In the new versions of adaptive schedulers, the scene is formed as an ontology-based semantic network of key domain objects and relations—for example, in factories linking orders and technological operations, equipment and workers, and skills and competencies. These links are continuously investigated by agents and help them narrow the search and find reasonable options by analyzing the “topology” of the schedule.

The solution can be easily integrated with the existing ERP systems—for example, order management, accounting, etc.

12.2.8 The Multi-Agent Platform for Adaptive Scheduling

The multi-agent platform is designed to automate the developed methodology and increase the quality and efficiency of the development process for creating real-time resource management systems for different problem domains.

The developed multi-agent platform combines the functionality of a basic adaptive scheduler that can be easily modified for new domains with a simulation environment that is useful for experiments with the different DSN models, methods, and algorithms.

Functionality of the multi-agent platform provides the possibility for end-users to specify an initial network of resources, form a sequence of events manually or automatically or load it from external files, make individual settings for all demands and resources, run simulations with different parameters, and visualize the process and results of the experiments.

An example of the user interface of the platform that represents the results of experiments with a given flow of orders is shown in Figure 12.3.

f12-03-9780128003411
Figure 12.3 Screen of a multi-agent platform for real-time resource management.

The screen presents a network of resources, Gantt charts with the resource schedule, the workload of orders and resources, the satisfaction of orders and resources, virtual money transfers, a log of decisions, and other items.

During the simulation mode, a number of useful charts and diagrams can be visualized or exported in Excel files for future investigations:

 A graph of network loading shows the utilization of all resources.

 A Gantt chart shows the allocation of demands to resources over time.

 The communication activity diagram shows how many messages are generated in the platform at any moment of time.

 The satisfaction of demand and resources chart demonstrates how the satisfaction level changes during the process of simulations.

 The orders execution chart shows the status of the orders’ execution.

 The resource utilization chart shows how busy resources are at different moments of time.

 The message log demonstrates the exchange of messages between selected agents.

 The decision making log presents the results of decision making for a selected agent.

 The financial transactions log shows the transfers of virtual money between the demand and supply agents.

The platform architecture includes the following components: initial scene editor, event generator, event queue for the main classes of events, a multi-agent world built as a VM, basic classes of agents and the supporting demand and supply agents, visual components for editing agents’ settings and the visualization of results, the export and import of data, the logging and tracking of messages, and agent financial transactions and other specific components.

These components can be adjusted for new problem domains and applications.

12.3 Examples of Applications for Industry

12.3.1 The MAS for Flights and Cargo Scheduling for the International Space Station

12.3.1.1 Application overview

The International Space Station (ISS) is one of the most complex engineering projects in the history of mankind.

Servicing the ISS requires scheduling flights with a focus on scheduling the space crew’s activities and delivering such cargoes to the space station as fuel, water, and food for the astronauts, laboratory equipment, materials, and tools and other types of objects. Cargo returns back to Earth must also be scheduled.

The main problem here is the limited capacity of spaceships, which requires adaptive event-based rescheduling of cargo deliveries—for example, when unpredictable demand for an additional cargo arises, fuel or water volumes or the amounts of other resources may need to be recalculated and reduced.

A MAS for the ISS flights and cargo scheduling provides an interactive support for developing a plan of flights and cargo deliveries, taking into consideration a number of preferences and constraints: for example, different spaceship types and the types of ISS modules; the number of astronauts; the fuel consumption forecast; solar activity and ballistic requirements; the minimal period of time between operations of docking and undocking; the permanent presence of at least one piloted ship docked to the station; and many other specifics (Skobelev, 2011).

The key features of a multi-agent world of solutions are presented in Figure 12.4.

f12-04-9780128003411
Figure 12.4 Key features of a multi-agent world of solutions.

The examples of the system user interfaces, with a detailed explanation of the screens, are presented in Figures 12.512.7.

f12-05-9780128003411
Figure 12.5 An interactive flight program editor.
f12-06-9780128003411
Figure 12.6 A cargo flow delivery plan.
f12-07-9780128003411
Figure 12.7 The fuel delivery/spending balance.

Flight program design, and the scheduling of cargo flow and the resources of the ISS starts with the creation of a strategic model of cargo flow. There is a need to create a strategic model of cargo flow, which helps to calculate the number of required transportation flights per year on the basis of the number of expected expeditions. The number and times of dockings and un-dockings of spaceships to the ISS modules is determined at this stage (Figure 12.5). On this basis, the program of updated cargo flow (fuel, water, other human-life items, scientific equipment, etc.) is created. Further, it is constantly being corrected adaptively (Figures 12.6 and 12.7).

The described solution was implemented on the .NET platform using MS SQL Server 2005 as a database server and integrated with the ISS on-board inventory management system, which provides everyday updates on cargo utilization.

12.3.1.2 Benefits and assessment

The solution was designed and implemented in 2010-2012 for one of the world’s biggest rocket and space corporations, Energia.

The system’s main functionality allows fast interactive development and compares options for the flight program and plan of cargo deliveries, including adaptive event-driven rescheduling of cargo in case of unpredictable events. At the moment, the system is used by the team of 8 core specialists and 120 users who operate the system on a daily basis and generate schedules for about 3500 types of cargoes.

The system has significantly reduced the complexity of resource computations and speeded up scheduling for new flight/cargo program development up to 4-5 times, and has improved the transparency and coordination of all operations.

The system provides an opportunity to simulate the worst-case scenarios for risk management, which is critically important for the success of the space mission.

12.3.2 MAS for Scheduling Factory Workshops

12.3.2.1 Application overview

The MAS “Smart Factory” is designed to increase the factory’s productivity and efficiency by adaptive resource allocation, scheduling, optimization, and controlling the machine assembling workshops in real time.

Adaptability means that each event in the workshop can influence the workers’ schedule, shift, or reallocate the previously scheduled orders and resources, and resolve conflicts. Examples of the events that can lead to rescheduling are the arrival of a new order, equipment failure, changes in priorities, new urgent tasks, delays in the delivery of materials, the operations of workers, etc.

The system can be used for factories, which can be characterized by ongoing innovations, the complexity and dynamics of operations, and a high uncertainty in supply and demand that requires a high level of real-time adaptability in reaction to unpredictable events.

The system architecture is represented by three main tiers, including the application server component, client components, and the database. Events are usually processed sequentially, but some have a higher priority.

The adaptive scheduling solution is a part of the application server component that contains agents of orders, workers, machines, operations, and materials, all of which takes into consideration the relationships between the various operations.

Agents are constantly trying to respond to new events, but also to proactively improve the operation plan by using free machines or free time slots in the workers’ schedule through the chain of moves and rearrangements of the previously scheduled operations or by transferring them to other resources. As a result, the work plan of the workshop is also built here, not by a classical combinatorial search, but as a balance between the interests of all mentioned agents.

Examples of the user interfaces of the developed system are shown in Figures 12.812.13. Figure 12.8 shows all orders for workshops with their current order status, including: not started, planned, started, executed, in preparation, stopped, delayed, postponed, etc. Figure 12.9 shows the key stages of preparing and loading data for the scheduler, including technology processes, the time estimates for each operation, the competencies of workers, etc.

f12-08-9780128003411
Figure 12.8 A screen showing the status of orders.
f12-09-9780128003411
Figure 12.9 Screens showing technology loading.
f12-10-9780128003411
Figure 12.10 The queue of events.
f12-11-9780128003411
Figure 12.11 The schedule of workers.
f12-12-9780128003411
Figure 12.12 A screen showing an agent of operation signaling about a mismatch with a worker’s skills.
f12-13-9780128003411
Figure 12.13 A screen showing the final report of a workshop load for a given time period.

The events queue allows managers to enter information on new events and start rescheduling, as shown in Figure 12.10—for instance, entering a new order for manufacturing, where hierarchy components are visualized on the left part of the screen. In Figure 12.11, the combined Gantt and Pert diagrams show interdependencies between the manufacturing operations. The user can select any operation on the screen and “drag and drop” it to another worker, as well as merge or split operations and adjust the event plan by triggering an automatic chain of changes in the schedule.

In case a worker does not have enough skills for the operation, the system will highlight this operation in red and issue a warning message to the user (Figure 12.12). The list of tasks for workers (Figure 12.13) can be printed in a traditional form or presented at a kiosk with a touchscreen.

The described solution was implemented on the J2EE platform using Oracle as a data base solution.

12.3.2.2 Benefits and assessment

The considered solutions increase the efficiency of a factory through flexible real-time planning of equipment, manpower, and materials in real time. It can be applied to any factories that require an individual approach to each order, product, or resource, have small production batches, require high worker qualifications, have to deal with multiple unexpected events, and require high efficiency and flexibility in manufacturing.

The basic “Smart Factory” solution is implemented for JSC “Axion Holding,” JSC “KUZNETSOV,” and a few other factories (Skobelev, 2011).

The main results of the solution deployment are the following:

 Full transparency of day-to-day operations for a given time horizon.

 An increase in workshop productivity by 15-20%.

 A reduction of efforts on task allocation, scheduling, coordination, and the monitoring of running orders, up to 3-4 times.

 An increase in resource efficiency, by 15% or more.

 A reduction in response time to unexpected events, up to 2-3 times.

 An increase of 15-30% in the number of enterprise orders completed within a given timeframe.

The next R&D step is associated with the development of adaptive P2P networks of multi-agent schedulers of workshops, which is now under development in the EU integrated project Adaptive Ramp-Up Management (ARUM) of the FP7 program “Smart Factory” (www.arum-project.eu).

12.3.3 MAS for Mobile Field Services Scheduling

12.3.3.1 Application overview

This solution is developed for the Samara regional gas distributor SVGK, which is operating a large network of gas pipelines and special gas equipment.

Technicians work for the gas pipeline network in small mobile teams on trucks with special equipment, servicing gas installations and doing maintenance, and making emergency calls from the call center.

The company dispatchers were overloaded with the real-time flow of orders, but decisions about team schedules require a lot of specific knowledge about the type of technical problem, the skills of technicians and workers, required and available equipment, destination points and the current position of the team on the map, estimates of delivery time, etc.

Team plans are frequently disrupted by unexpected events such as urgent orders, equipment failure, traffic jams, or delays in completing a task, etc.

The client required a real-time adaptive scheduler capable of reducing the time required to schedule and execute servicing tasks, the overall traveling time of service teams, and team utilization during a day.

An adaptive multi-agent solution for scheduling tasks to servicing teams is able to analyze a situation (taking into account orders and the teams’ workload), select and allocate a preferable team to order, form a route to the destination point and adapt the schedule for the team, communicate a new plan to the team, and then monitor the execution of the plan while controlling the gap between the plan and reality in real time.

A diagram demonstrating the solution workflow is presented in Figure 12.14.

f12-14-9780128003411
Figure 12.14 The workflow of multi-agent solutions for the mobile teams.

The dispatcher monitors the availability of the servicing teams. New orders come to the call center where operators register the number of orders, the address, the type of accident, etc. Then, this information enters the scheduler. The priority of the order, the urgency, and the complexity of the required work is automatically determined based on the knowledge base and status of available teams. As a result, the plan of order execution is formed based on estimates about which resources should be involved to solve the problem and what is the best way to reallocate teams.

Examples of multi-agent scheduler screens are given in Figures 12.1512.17.

f12-15-9780128003411
Figure 12.15 Online communications of the system with the teams via low-cost mobile phones. The dispatcher’s screen is displayed (late orders are shown in red, planned orders are shown in green).
f12-16-9780128003411
Figure 12.16 Online communications of the system with the teams via low-cost mobile phones. Orders and teams are shown on the regional map.
f12-17-9780128003411
Figure 12.17 Online reports: the efficiency of the teams.

A list of planned orders and their current statuses is presented in Figure 12.15.

The agents of orders and teams take into consideration the priority of the orders and try to minimize the empty miles between destinations. Schedules are built under the control of dispatchers and sent to the mobile phones of the servicing teams in text messages. Mobile phones are also used for sending progress reports on orders directly to the scheduler via text messages.

The screen presented in Figure 12.16 is designed to monitor the current location and status of servicing teams on the map. Also, it helps to view and check the addresses of orders because there are some gaps and other issues on electronic maps that require manual intervention and corrections from dispatchers.

A mobile client is designed to send information about new demands from the dispatcher to the foreman of the servicing team and to send back status reports on the order execution from the foreman to the dispatcher. Reports for teams are formed in real time, as well as for a required time period (Figure 12.17).

The solution was implemented on the .NET platform using MS SQL Server 2005 as a database server. But the mobile application is implemented on the Java ME platform and can function on mobile devices that support Java/JavaScript and have Internet access via an http protocol.

12.3.3.2 Benefits and assessment

The adaptive scheduler was implemented in 2011 and used for mission-critical functions, improving the flexibility and efficiency of teams by reducing delivery time, delays, and empty miles (Skobelev, 2011).

As a result, the key benefit of the system was a 40% increase in the mobile teams’ productivity. Each team of service engineers managed to complete, on average, about 12 tasks a day, instead of 7 tasks as was the case before the system delivery.

In addition, the scheduler enables managers to reduce human factors and have a full transparency of the overall operations of service teams on the map, as well as detailed information about the individual team’s productivity; the current progress of jobs fulfilled for each team; the number of calls for servicing awaiting to be allocated daily; the efficiency of each service engineer and technician; the individual costs of every servicing task/operation, etc.

The scheduler won the Product of the Year award at the Russian National exhibition Soft-Tool 2011.

12.4 Discussion

The designed solutions support the shift to a real-time economy in corporate resource management by making a very important step from the traditional centralized, monolithic, batch-processing systems to real-time adaptive MAS with ongoing online communication with users.

The industrial applications of the developed multi-agent solutions for adaptive scheduling provide the following benefits for customers:

 Allow enterprises to move to a real-time economy by analyzing options and making decisions “on the fly.”

 Solve complex scheduling problems by replacing a combinatorial search with adaptive detecting conflicts and finding trade-offs.

 Improve the efficiency of resources, as well as quality of service, reduce costs and delivery time, and reduce risks and penalties.

 Support continuous adaptive rescheduling in real time with fast reaction to unpredictable events.

 Provide an individual approach to every order, operation, and resource.

 Support coordination by interactions with users in 2-way directions.

 Help reduce the human factor in the process of decision making.

 Enable the modeling of “what-if” scenarios to optimize decisions.

 Create a platform to support business growth.

The discussed industrial applications of MAS also help define future R&D projects to provide more flexible design decisions, better analyze the quality and efficiency of real-time scheduling, improve performance, etc.

From our point of view, one of the most interesting opportunities now is to design adaptive scheduling solutions as complex adaptive systems that are part of a new theory of complexity based on the concepts of dissipative structures and nonlinear thermodynamics put forth by Nobel Laureate Prof. Ilya Prigogine (Prigogine and Stengers, 1984; Nicolis and Prigogine, 1989).

The discovered similarity between self-organized systems in chemistry and developed adaptive schedulers with “unstable equilibriums,” chaos and order, and oscillations and catastrophes is very inspiring for further R&D work and is helping develop a new generation of adaptive scheduling systems that will potentially provide well-balanced schedules of such high quality that they will equal or be even better than those schedules created by humans.

The developed approach and tools could also be considered as a basis for designing advanced self-organized systems that provide emergent intelligence (Rzevski and Skobelev, 2014).

12.5 Conclusion

This chapter presents results of recent works on the development of industrial multi-agent solutions for the real-time adaptive scheduling of resources.

The achieved results prove that multi-agent technology is becoming an efficient industrial solution for real-time resource management in those application areas characterized by high uncertainty, complexity, and dynamics.

The discussed solutions improve the quality of services for clients and the efficiency of resource utilization. They also reduce costs and the time of delivery.

The experience learned in the industry also opens up new areas for future R&D work in improving the quality and performance of adaptive real-time scheduling solutions.

References

Allan, R., 2010. Survey of agent based modeling and simulation tools. Computational Science and Engineering Department, Technical report DL-TR-2010-007.

Brussel HV, Wyns J, Valckenaers P, Bongaerts L. Reference architecture for holonic manufacturing systems: PROSA. Comput. Ind. 1998;37(3):255–274.

Florea A, Lauttamus J, Postelnici C, Martinez J. Agent-based control of operational conditions for smart factories: the peak load management scenario. In: Proceedings of the Sixth International Conference on Industrial Applications of Holonic and Multi-Agent Systems; Berlin: Springer; 2013:13–24 LNAI 8062.

Gongfa L. A hybrid particle swarm optimization algorithm for Job-shop scheduling problem. Int. J. Adv. Comp. Tech. (IJACT). 2011;3(4):79–88.

Leitao P, Vrba P. Recent developments and future trends of industrial agents. In: Proceedings of the Fifth International Conference on Holonic and Multi-Agent Systems in Manufacturing; Berlin: Springer; 2011:15–28.

Leung Y-T. Handbook of Scheduling: Algorithms, Models and Performance Analysis, CRC Computer and Information Science Series. London: Chapman & Hall; 2004.

Nicolis G, Prigogine I. Exploring Complexity: An Introduction. New York: W. H. Freeman; 1989.

Noller D, Hanis T, Feldman M, Asher J, Bosler B. Semantic models in manufacturing execution/enterprise systems. In: In: Reshetnikov I, Kozletsov A, eds. Moscow: NGSS; 37–74. MES—Theory and Practice. 2013;vol. 6.

Pechoucek M, Marík V. Industrial deployment of multi-agent technologies: review and selected case studies. Auton. Agent. Multi-Agent Syst. 2008;3:397–431.

Pinedo ML. Scheduling: Theory, Algorithms, and System. Berlin: Springer; 2008.

Prigogine I, Stengers I. Order Out of Chaos: Man’s New Dialogue with Nature. London: Flamingo; 1984.

Rolf CR, Kuchcinski K. Distributed constraint programming with agents. In: Proceedings of the Second International Conference on Adaptive and Intelligent Systems; Berlin: Springer-Verlag; 2011:320–331.

Rzevski G, Skobelev P. Managing Complexity. UK/USA: WIT Press; 2014 p. 198.

Shirzadeh Chaleshtari A, Shadrokh Sh. A branch and bound algorithm for resource constrained project scheduling problem subject to cumulative resources. World Acad. Sci. Eng. Technol. 2012;6:23–28.

Shoham Y, Leyton-Brown K. Multiagent Systems: Algorithmic, Game-Theoretic, and Logical Foundations. New York: Cambridge University Press; 2009.

Skobelev P. Multi-agent systems for real time resource allocation, scheduling, optimization and controlling: industrial applications. In: Fifth International Conference on Industrial Applications of Holonic and Multi-Agent Systems, Toulouse, France, vol. 6867; Berlin: Springer; 2011:1–14.

Skobelev P, Vittikh V. Models of self-organization for designing demand–supply networks. Autom. Remote Control. 2003;1:177–185.

Skobelev P, Vittikh V. The compensation method of agents interactions for real time resource allocation. Avtometriya, Journal of Siberian Branch of Russian Academy of Science. 2009;2:78–87.

Vos S. Meta-heuristics: the state of the art. In: Nareyek A, ed. Local Search for Planning and Scheduling. Berlin: Springer-Verlag; 2001:1–23.

Wooldridge M. An Introduction to Multi-Agent Systems. London: John Wiley & Sons; 2002.

Xueni Q, Lau H. An AIS-based hybrid algorithm with PSO for job shop scheduling problem. In: Proceedings of the Tenth IFAC Workshop on Intelligent Manufacturing Systems, Lisbon; 2010:371–376.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset