FacilityNetworkML - Process Design Aided by Machine Learning

Introduction

FacilityNetworkML is facility network operation design aided by machine learning. Define your connected facilities (departments, work cells, service stations, etc.; ‘facility’ may mean many things) and the software will guide you in sizing your network (number of servers/employees, waiting time, queues, etc.). The software is very easy and intuitive to use. You just simply need to draw the flow diagram of your connected processes with the mouse, set a few parameters and FacilityNetworkML will do the rest.

Examples in the distribution

There are two examples available in the distribution after installing FacilityNetworkML, both can be found in the 'Demo' folder under the FacilityNetworkML program folder (default location: 'C:\Program Files\FacilityNetworkML\Demo'). The PDF files in the subdirectories contain the explanation and the files with 'xgr' extension are the FacilityNetworkML project files. The two examples are the following:

  • Business Process
    In this example we model the sales department of a large multinational with a network of processes. Read more...
  • Emergency Hospital
    In this example we model an emergency hospital with preemptive priority patients.

The machine learning model

FacilityNetworkML uses an evolutionary machine learning model (evolutionary genetic algorithm) for sizing and measuring the facility network.

Evolutionary genetic algorithms (EGAs) got their name from biological evolution theory, which they try to replicate. The terms EGA and biological evolution might seem complex at first but these algorithms are actually simpler than they sound. An EGA is a kind of heuristic (guided or reinforced) search method used for finding the optimum solution based on the theory of natural selection and evolutionary biology, it makes use of the so called Exploitation and Exploration search strategies.

 

An EGA for facility network design works as follows:

  1. Random generation of M number of initial facility network architectures (by choosing the number of servers per facility) which are then encoded into a binary string (zeros and ones such as 00011010110). The encoded binary string contains the concatenation of the properties of the facility network (basically numbers in a row). This is the initial so called 'population' of facility networks. We call one facility network in evolutionary algorithms terms an 'individual'.
  2. Evaluation of the facility network. In this step we calculate all important characteristics of the network such as waiting time, queue length, etc.
  3. Selection of the best performing architectures for reproduction (generating new architectures). There are different types of selection methods available. See below.
  4. Random generation of new architectures from those selected in Step 3 through “crossover” and “mutation” operations (the terms come from biological evolution theory). There are several types of crossover and mutation methods available. See below.
  5. Evaluation of the performance of the new architectures. The performance of the facility network model depends on the total number of servers and on the total waiting time in the system which are both being minimized. We call this the 'fitness function'.
  6. Replacement of the former architectures with the newly created ones.
  7. This procedure is repeated from Step 3 to Step 6 until a pre-defined performance is obtained. Typically, we  use a fixed maximum number of iterations (generations) and we expect that the model converges as fast as possible.


There are two types of selection methods: Type I. fitness-proportional (remember from Step 5 above what the fitness function is), higher fitness value means higher selection probability; Type II. fitness ranking based (the individuals (facility network architectures) are ranked according to their fitness value and the probability of selection is rank dependent).

The crossover method randomly exchanges the bits (numbers) of the encoded binary encoded string of two selected individuals. Where exchange means simply replacing one with the other. Remember from above what an individual and encoded binary string mean? This step enforces the Exploitation search strategy. Depending on how this random exchange works there can be several types of crossover methods. N-points methods select one or more random positions in the encoded string and exchange the bits of the two selected individuals between these positions only. Distribution crossover methods exchange the bits at positions selected by a random distribution.

Mutation methods are similar to crossover but instead of exchanging the bits of the encoded strings they switch the bits randomly at the selected positions in case of binary mutation. Where switching simply means changing a zero to one and vice-versa. In case of real-valued mutation the individual is replaced with a random individual which is having the upper or lower bound of the search place (fitness value)  in case of boundary mutation or with a random individual chosen according to a random distribution in case of distribution type of mutation methods. Mutation is performed with a much lower probability than crossover. Mutation enforces the Exploration search strategy.


The software generates a nice HTML report.


Look at the two examples to see what the software can do for you! Read more...


Download: FacilityNetworkML  (free for non-commercial use).


Learn about the application of Artificial Intelligence and Machine Learning from the book "The Application of Artificial Intelligence | Step-by-Step Guide from Beginner to Expert", Springer 2020 (~400 pages) (ISBN 978-3-030-60031-0). Unique, understandable view of machine learning using many practical examples. Introduces AI-TOOLKIT, freely available software that allows the reader to test and study the examples in the book. No programming or scripting skills needed! Suitable for self-study by professionals, also useful as a supplementary resource for advanced undergraduate and graduate courses on AI. More information can be found at the Springer website: Springer book: The Application of Artificial Intelligence.

The Application of Artificial Intelligence | Step-by-Step Guide from Beginner to Expert

Contact

Have a general inquiry?

Contact our team.


Search This Website