Simulation Based Multi-Objective Optimization for Dynamic Business Processes Tadas Vysockis and Olegas Vasilecas Vilnius Gediminas Technical University, Saulėtekio al. 11, Vilnius, Lithuania tadas.vysockis@vgtu.lt Abstract. Business process optimization is one of the main activities in organi- zations, but it is long and usually time-consuming work. One way to automate this process is to use business process simulation which is one of the most widely applied method for analysing and improving business processes. How- ever, standard simulation models are static e.g. control flow of the process is defined beforehand. In contrast, the concept of dynamic business process states that a set of business process activities might change at a certain point in time. Therefore, in this paper we suggested to combine dynamic business process simulation tool with multi-objective optimization in order to automate business process optimization. The paper highlights main principles of the simulation based multi-objective simulation, describes general problem, presents research hypothesis and research questions. Keywords: Dynamic business process, Business process simulation, Simula- tion based multi-objective optimization 1 Introduction In the modern business world there is a frequent need for enterprises to revise and improve the structure of their business processes. Business processes are the core of all organisations, therefore focusing on the optimisation of business processes, or- ganizations can effectively compete in today’s business environment (Trkman, 2010), but usually a business process optimization is manual work without a formal auto- mated algorithm or given objectives (Vergidis, et al., 2006). Furthermore, standard approaches of business process analysis such as regulation interpretation or interviews usually do not reflect the real processes because they are dynamic and stochastic by nature (Van Der Aalst, et al., 2010). Therefore, considering the dynamicity of busi- ness processes makes optimization even more complex task to achieve. Simulation of business process allows to analyse various business scenarios under different circumstances, provides an understanding of the most important factors af- fecting the process. However, standard simulation models are static e.g. control flow of the process is defined beforehand. In contrast, the concept of dynamic business Lupeikiene A., Matulevičius R., Vasilecas O. (eds.): Baltic DB&IS 2018 Joint Proceedings of the Conference Forum and Doctoral Consortium. Copyright © 2018 for this paper by the papers' authors. Copying permitted for private and academic purposes. process states that a set of business process activities might change at a certain point in time due to the changes of business process context, therefore a sequence of activ- ity execution cannot be predefined in advance (Kalibatienė, et al., 2016). Therefore, dynamic business process simulation tool (Vasilecas, et al., 2016) analyses the proc- esses without a predefined control flow. Therefore, the goal of this research is to combine the multi-objective optimization with dynamic business process simulation tool. This method may result in new ap- proaches and more efficient ways to improve business processes. The following bene- fits may be achieved: 1. more than one optimisation function can be selected; 2. at any time, additional rules can be added to the simulation model; 3. several suitable solutions can be found; 4. simulation results can be used for further business process analysis; 5. already created models of business processes can be used to create simula- tion models. In this paper, we present an ongoing research on dynamic business process simula- tion and optimization. The paper highlights main research problems, principles of the dynamic business process simulation approach and presents the model of simulation based multi-objective optimization for dynamic business processes. Also presents research methods and plan how the tool validation will be performed. The rest of the paper is organized as follows: Section 2 reflects the state of the art in dynamic business process simulation and optimization. Section 3 presents the prob- lem statement. Section 4 describes research methods which will be used in this re- search. The results and analysis will be discussed in Section 5. The last section con- cludes the paper. 2 State of the Art Two main parts of this work – the dynamic business process simulation and multi- objective optimization – will be described in this section. 2.1 General Problem Definition A multi-objective optimisation problem involves many goal functions which are to be either minimised or maximised. All goals are equally important and must be accom- plished during simulation (Zitzler, et al., 2004). Also, multi-objective optimisation problem may contain several constraints which any feasible solution must satisfy. We assume that a solution to the specific problem can be described in terms of the simula- tion parameters vector (𝑥 , 𝑥 , … , 𝑥 ) in the simulation parameters space X. The simulation parameters can be understood as resources or context variables. A function 𝑓: 𝑋 → 𝑌 evaluates the quality of the specific solution (Zitzler, et al., 2004).The prob- lem how to find the best result for specific business process. 143 2.2 Dynamic Business Process Simulation In the simplest business process simulation case, a process has decision points where a human or an automated system decides next step based on predefined rules. In more sophisticated approaches, as in (van Eijndhoven, et al., 2008), a business process is divided in a variable and non-variable segment. Non-variable segments stay constant in all cases. Context, describing external environment or resources of a system, can also be used to facilitate business process dynamics. E.g. in (Bui, et al., 2013), a con- text is defined through variables and rules to present user’s needs and to adopt busi- ness processes based on them. In (Milani, et al., 2016), authors propose to identify the main process, variations of each process and construct variation map to model fami- lies of business process variants. In an even higher level of sophistication, authors, like (Boukhebouze, et al., 2011), propose to transform a business process into a set of Event-Condition-Action (ECA) rules or some variation of ECA rules and after event arises, check the condition and perform a consequent action. The idea of dynamic business process states that a set of activities might change at a certain point in time due to the changes of the business process context. However, the dynamic business processes do not have a pre-defined sequence of steps (Kali- batienė, et al., 2016). In declarative or imperative process modelling languages, proc- ess execution is managed using control-flow, therefore limits the behaviour (Fahland, et al., 2010). As opposed to this, in dynamic business process execution activities are activated based on rules applied to the context, instead of a control flow mechanism, and it adds further flexibility to the control-flow or permits more complex decisions based on the data generated during the execution. Due to its ability to use data generated during the execution of the processes and ability to use complex contextual rules for controlling the execution of the process (Vasilecas, et al., 2016), the dynamic business process simulation was chosen as the simulation approach. 2.3 Business Process Optimization In the article (Vergidis, et al., 2008) authors suggested following two disciplines re- lated with business process optimization: scheduling and evolutionary computing. Scheduling problems are similar to business process optimization problems e.g. opti- mal resource allocation. However, most of the scheduling algorithms is based on the mathematical models which make these approaches complicated. Evolutionary com- puting algorithms use the principle of evolution to guide the optimization process (Vergidis, et al., 2008). These algorithms have been successfully applied to different areas. In general, evolutionary optimization could benefit business processes by dis- covering process designs or evaluate alternative designs. Table 1 classifies the techniques that are used in practice for different optimization problems. Math programming is used to optimize a real function by systematically choosing input values from the allowed set. Furthermore, sometimes a function might be non-smooth or time-consuming to evaluate therefore to optimize such function require to use algorithms which do not use derivatives or finite differences other 144 known as derivative-free optimization. Stochastic programming is used when uncer- tainty must be included in the optimization problem. Whereas deterministic optimiza- tion problems are formulated with known parameters, real world problems usually include some unknown parameters. Simulation optimization is used when other meth- ods are too expensive because of the complexity of the model. Computer-based simu- lation provide information about the model behaviour. In this method, the different sets of input values are varied and then the effect on the described objectives are ob- served. Table 1. Classification of optimization problems (Amaran, et al., 2016) Mathematical model available Unknown/complex prob- lem structure Deterministic Traditional math programming Derivative-free optimiza- (linear, integer and nonlinear tion programming) Uncertainty pre- Stochastic programming, robust Simulation optimization sent optimization In (Vergidis, et al., 2006) three following issues with business process optimisation are described: 1. most business process models are diagrammatic approaches not capable of quantitative analysis and algorithmic optimisation; 2. the business process optimisation attempts have been mostly manual; 3. there is no attempt to optimise a business process under multiple criteria. They suggested that business process models should be mathematical in order to be able to run optimization algorithms. However, as the authors have mentioned before the large part of the business process models are already graphical therefore it is pos- sible to create simulation models of them by adding necessary parameters. By doing like this we can create simulation models and save time and money. Also, the creation of the mathematical model could be complicated task, other than the creation of the simulation model. 3 Problem Statement The main problem of this research is that the accuracy of existing simulation based multi-objective optimization methods, for dynamic business processes, is not enough. We are planning to apply evolutionary multi-objective optimization algorithms in the context of dynamic business processes simulation. As we described before there is a quite clear need for automated way to optimize business processes and facilitate their improvements. Also, it is required to take into account the dynamic nature and unpre- 145 dictable factors of the business processes. Therefore, the following research hypothe- ses are defined to help find an answer to the defined problem: H0: Dynamic business process simulation can be used to optimize business processes. We assume that there is a solution for this optimization problem. H1: The optimization goal can be defined as the set of resources and context vari- ables; H2: Simulation based multi-objective optimization is more accurate than the alterna- tive ways to optimize business processes; H3: Data mining methods can be applied to gather additional information about the simulation model and improve it. Based on the problem and hypotheses the following research questions are defined in this paper: RQ1: What methods and techniques exist that use computer simulation to optimize business processes? What are the limitations of these methods? RQ2: How existing optimization methods can be applied to the dynamic business process simulation? RQ3: What is alternative ways to optimize business process? RQ4: How simulation data can be used to improve the simulation model? What methods can be adapted? 4 Research Method The research approach is divided in different areas, each one following specific meth- odology. Literature Review: An extensive literature review is performed to present the current state of research related to dynamic business process simulation and multi-objective optimization. This helps to get a clear understanding of the existing methods of any related business process optimisation approaches along with their strengths and weaknesses. The following good practices of systematic literature review will be ap- plied (Kitchenham, et al., 2009). Improvement of existing dynamic business process simulation tool: This research must create additional functionality to already existing tool to enable dynamic busi- ness process optimization. Based on the research findings the objectives of the simu- lation tool are defined. Development of the simulation based multi-objective optimization tool for dynamic business processes: We will apply existing evolutionary multi-objective algorithms to get optimal input data for the specific process simulation model. The prototype for the proposed method will be implemented using C# programming language, .NET framework and WPF libraries. Experimental analysis: Dynamic business process simulation will be used to evaluate the correctness of the prototype and the results. Validation of the tool: A set of different business process scenarios reported in litera- ture will be tested within the prototype. 146 5 Results 5.1 What Has Already Been Achieved? The dynamic business process simulation tool has been implemented. The Fig. 1 shows the simulation approach which has been implemented in the DBPSim tool (Vasilecas, et al., 2016). When the simulation engine evaluates all information (Re- sources, Context, Activities and Historical Data), it selects the most suitable activity to be performed. Once selected, tasks defined in the selected activity are added to the queue. Afterwards, activity selection sub process repeats again. If additional activity is found and selected, it means that these two activities are to be performed in parallel. The steps continue until no other activity is selected. When there are no more activi- ties to start, a task queue is evaluated. If the task queue is empty, the simulation en- gine waits for context change and resumes simulation once the change is detected. If the task Queue is not empty, then task(s), simultaneous in the next simulation step, are executed. During update simulation statistic step metrics, such as duration, queue information, context variables, are stored for further analysis. The activity Update simulation state updates variables related to simulation execution, such as simulation time and task queue. After simulation state has been changed, a check is performed to see if the simulation goal is reached. If the goal has not been reached, perform simula- tion step activity starts from the beginning with new or updated simulation variables or, otherwise, is completed if the goal is reached. Resources Context Activities Activity Yes Add All Activity Select Activity Selected? Tasks to Queue No Yes Is Queue Empty? Queue No No Resources Historical Data Perform Task Context Goal Update Simulation Update Simulation Yes Reached? State Statistics Activities Fig. 1. The model of the dynamic business process simulation (Vasilecas, et al., 2016) The sub process Select Activity starts with simulation engine selecting a set of pos- sible activities based on the information in the current simulation step. After a set of possible activities is generated, activity evaluation is performed. Evaluation is twofold – the rules of the activities are evaluated to see if they can be performed at all, and the possible benefit to the process is evaluated. The benefit value is calculated based on 147 historical data – whether an activity leads to dead end or is not useful to the end. Upon full evaluation, the simulation engine selects an activity which can be executed and is the most benefiting to the process execution. This selected activity is returned back to the simulation engine for execution. 5.2 What Has Still to Be Done? The idea of this research is to use evolutionary computation algorithms to find opti- mal set of resources for the specified business process. By optimizing input data of simulation, we can optimize entire business process. First of all, it is necessary to update the DBPSim tool with the components which will be responsible for the selec- tion of input resources. The Fig. 2 shows the possible approach of simulation based optimization. First, it is necessary to create the primary simulation model with the required information. Then the objectives of the process should be defined. As mentioned before more than one objective function can be defined. Next step is to execute selected evolutionary algorithm. First time initial input variables will be created at random. Then standard steps of evolutionary algorithms like evaluation, selection, mutation and recombina- tion are executed. After this step a new set of resources is generated and then perform simulation N times. All results are recorded into the database for analysis. After all iterations of simulation is over then the simulation result is evaluated. Then if termi- nation criteria are not reached Execute Evolutionary Algorithm sub process repeats again. Otherwise, process optimization process is over. At the end the best set of re- sources will represent the outcome of the optimization. Fig. 2. The model of simulation based multi-objective optimization for dynamic business processes 5.3 What Will Be the Result at the End? The new automatic way to optimize business processes by using dynamic business process simulation tool will be created at the end. The following benefits may be achieved: 1. more than one optimisation function can be selected; 2. at any time, additional rules can be added to the simulation model; 148 3. several suitable solutions can be found; 4. simulation results can be used for further business process analysis; 5. already created models of business processes can be used to create simula- tion models. 6 Validation Plan The object of study in engineering sciences is an artefact in a context of use (Wieringa & Daneva, 2015). The object of this research is to create a business process optimiza- tion tool. During the development process of the tool the prototype is scaled up until it can operate under the real-world conditions. Based on the article (Wieringa & Daneva, 2015) lab-to-field generalization is a form of technology validation with research methods such as simulation, technical action research, and statistical differ- ence-making experiments in the lab or in the field. Therefore, this research falls under the lab-to-field generalization and will be validated in a case based practice. 7 Conclusion In this paper the idea how to create simulation based multi-objective optimization method for dynamic business processes has been presented. The implementation pos- sibilities have been described. The paper provided explanations of the simulation based multi-objective optimization mechanism. The main conclusions of the paper are as follows: 1. Literature review has shown that multi-objective optimization algorithms can be used in the simulation and produce decent results. 2. Suggested tool will help business analyst and provide a new way to improve business processes. The results presented in this paper are promising and it is necessary to continue research in the area of the simulation based dynamic business process optimization. References 1. Amaran, S., Sahinidis, N. V., Sharda, B., and Bury, S. J. (2016) Simulation optimization: a review of algorithms and applications. 4OR, 12(4), pp. 301-333. 2. Boukhebouze, M., Amghar, Y., Benharkat, A. N., and Maamar, Z. (2011) A rule-based approach to model and verify flexible business processes. International Journal of Business Process Integration and Management, pp. 287-307. 3. Bui, D. V., Iacob, M. E., van Sinderen, M., and Zarghami, A. (2013) Achieving flexible process interoperability in the homecare domain through aspect-oriented service composi- tion. van Sinderen, M., et al. (eds.): Proc. of the IWEI 2013, pp. 50-64. 4. Fahland, D. et al. (2010) Declarative versus imperative process modeling languages: The issue of maintainability. Lecture Notes in Business Information Processing, pp. 477-488. 149 5. Kalibatiene, D., Vasilecas, O., and Rusinaite, T. (2015) Implementing a rule-based dynam- ic business process modelling and simulation. Proc. of the Electrical, Electronic and In- formation Sciences (eStream’2015), pp. 1-4. 6. Kalibatienė, D. et al. (2016) New approach on rule and context based dynamic business process simulation. Baltic journal of modern computing (BJMC), pp. 408-419. 7. Kitchenham, B. et al. (2009) Systematic literature reviews in software engineering–a sys- tematic literature review.. Information and software technology, 51(1) tomas, pp. 7-15. 8. Milani, F., Dumas, M., Ahmed, N., and Matulevičius, R. (2016) Modelling families of business process variants: A decomposition driven method. Information Systems, pp. 55-72. 9. Ng, A. H., Dudas, C., Pehrsson, L., and Deb, K. (2012) Knowledge discovery in produc- tion simulation by interleaving multi-objective optimization and data mining. In Proceed- ings of the 5th Swedish Production Symposium (SPS’12), pp. 6-8. 10. Trkman, P. (2010) The critical success factors of business process management.. Interna- tional Journal of Information Management, pp. 125-134. 11. Van Der Aalst, W. M. P., Nakatumba, J., Rozinat, A., and Russell, N. (2010) Business Process Simulation : How to get it right ?. Handbook on Business Process Management, pp. 313-338. 12. van Eijndhoven, T., Iacob,, M. E., and Ponisio, M. L. (2008) Achieving business process flexibility with business rules. 12th International IEEE Enterprise Distributed Object Computing Conference (EDOC'08), pp. 95-104. 13. Vasilecas, O. et al. (2016) A goal-oriented approach to dynamic business process simula- tion. In DB&IS (Selected Papers), pp. 143-154. 14. Vergidis, K., Tiwari, A., and Majeed, B. (2006) Business process improvement using mul- ti-objective optimisation. BT Technology Journal, pp. 229-235. 15. Vergidis, K., Tiwari, A., and Majeed, B. (2008) Business process analysis and optimiza- tion: Beyond reengineering. IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews), 38(1), pp. 69-82. 16. Wieringa, R. and Daneva, M. (2015) Six strategies for generalizing soft-ware engineering theories. Science of computer programming 101, pp. 136-152. 17. Zitzler, E., Laumanns, M., and Bleuler, S. (2004) A tutorial on evolutionary multiobjective optimization. Metaheuristics for multiobjective optimisation, pp. 3-37. 150