<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Optimos: A Tool for Simulation-Driven Business Process Optimization</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Orlenys</forename><surname>López-Pintado</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Tartu</orgName>
								<address>
									<country key="EE">Estonia</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jannis</forename><surname>Rosenbaum</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Tartu</orgName>
								<address>
									<country key="EE">Estonia</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jonas</forename><surname>Berx</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Tartu</orgName>
								<address>
									<country key="EE">Estonia</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Marlon</forename><surname>Dumas</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">University of Tartu</orgName>
								<address>
									<country key="EE">Estonia</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Optimos: A Tool for Simulation-Driven Business Process Optimization</title>
					</analytic>
					<monogr>
						<idno type="ISSN">1613-0073</idno>
					</monogr>
					<idno type="MD5">CCF5944DEC19B8C363AC08F27970A128</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2025-04-23T17:02+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>business process optimization</term>
					<term>business process simulation</term>
					<term>resource allocation</term>
					<term>resource availability timetables</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Optimos is a web-based tool that uses optimization techniques to enhance business processes by minimizing cycle times and resource costs through simulation of alternative scenarios. Given a process model in the Business Process Model and Notation (BPMN), a set of simulation parameters, and organizational constraints, Optimos iteratively explores alternative resource allocations and timetables using optimization metaheuristics. The performance of each resource configuration is evaluated via simulation. The target users of Optimos are analysts and managers of business processes. This demo paper describes the scope, architecture, and functionality of Optimos.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">Introduction</head><p>One primary goal of Business Process Management (BPM) is to improve organizational performance to achieve objectives such as reducing costs and execution times of business processes <ref type="bibr" target="#b1">[1]</ref>. For this purpose, what-if analysis can help to identify optimal interventions to maximize or minimize performance measures under specific constraints <ref type="bibr" target="#b2">[2]</ref>. For example, an organization can use what-if analysis to explore different staffing schedules within limited working hours, ensuring that resource utilization remains below 80% and employees do not exceed their maximum allowed working hours, balancing labor costs and delivery times.</p><p>Business Process (BP) simulation further enhances this capability by providing a powerful technique for assessing what-if scenarios <ref type="bibr" target="#b3">[3]</ref>. Using simulation models that act as digital twins, BP simulation captures the organizations' behaviors, offering a detailed representation of real-world processes. These models enable the prediction of the process performance under current configurations (as-is model) or hypothetical changes (to-be model). This capability is essential for optimizing business processes, as it supports process updates that may improve key performance measures, such as resource cost and cycle times <ref type="bibr" target="#b2">[2]</ref>. This paper presents Optimos, an optimization tool designed to help process analysts to automatically improve business processes by minimizing cycle times and execution costs through what-if analysis and simulation. Optimos achieves this by adjusting the allocation of resources to activities and modifying resource availability calendars. Additionally, the tool allows analysts to define organizational constraints that restrict the optimization of their resource allocations.</p><p>Achieving an ideal resource configuration that minimizes costs and cycle times is challenging. Typically, no single configuration can improve both objectives simultaneously. For instance, increasing the number of resources reduces activity waiting times, shortening the overall cycle time. Similarly, if resources are less busy due to higher availability or extended working hours, waiting times decrease, making processes faster. However, having more resources and increased working hours also increases labor costs. On the other hand, reducing the number of resources or limiting their working hours Envelope orlenys.lopez.pintado@ut.ee (O. López-Pintado); jannis.rosenbaum@ut.ee (J. Rosenbaum); marlon.dumas@ut.ee (M. Dumas) lowers costs but increases waiting times due to busier remaining resources. This trade-off between cost and time is a key consideration in optimizing business processes <ref type="bibr" target="#b3">[3]</ref>.</p><p>Manually balancing the number of resources and their working hours is challenging for analysts because it involves considering multiple combinations of variables and constraints. The technical complexity of exploring a wide range of potential solutions makes finding optimal resource allocations difficult without automated tools. Optimos aids analysts by automating the process, allowing them to optimize their resources without requiring any technical background.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">Optimos Architecture</head><p>Optimos is a Web-based tool logically structured into three layers, as shown in Figure <ref type="figure" target="#fig_1">1</ref>. The Frontend layer includes several dashboards that enable user interaction. The Projects Dashboard is the entry point for users to manage different optimization projects. Within each project, users navigate to the OptiHub Dashboard, the central hub, displaying the optimization status and current configurations and allowing users to start new optimizations. From the OptiHub Dashboard, users can access the Constraints Dashboard to define and update optimization constraints or the Results Dashboard to view suggested resource allocations and statistics from ongoing or completed optimizations.</p><p>The API layer is the intermediary between the Frontend and Backend layers. The Server-Side Rendering Server retrieves fully-rendered HTML pa-ges to improve performance. The API Server manages business logic, data processing, and secure interactions with the Backend. This separation allows each server to be scaled and maintained independently. The API Server also handles Assets provided by the users, such as process models, simulation parameters, or optimization results. Additionally, it manages authentication (Auth) to ensure secure access to the system, verifying user credentials and maintaining session security. Finally, the API Server interacts with a Database, storing and retrieving essential data such as user information, project details, constraints, and results to ensure data persistence in the system.</p><p>The Backend layer is where the core optimization processes occur. The Message Queue manages communication and task distribution between the API server and Backend services, ensuring smooth processing of tasks. The Worker Service executes the tasks assigned by the Message Queue. The Optimizer Core is the central component responsible for performing the optimization calculations and assembling and analyzing the results delivered by each other component. It works closely with the Constraints Manager, which manages user-defined constraints, ensuring that optimizations respect these rules. The Model Transformer adjusts (if possible) models to fix potentially problematic elements, like bottleneck activities with high waiting times or over-and underutilized resources, aiming to find an improved model. The Simulation Engine performs simulations of each transformed model. It retrieves the results to the Optimizer Core, which assesses the impact of different resource allocations and schedules and accordingly updates the set of optimal solutions.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">Functionality</head><p>To interact with Optimos, users must authenticate to access their Projects Dashboard. From there, they can view or create optimization projects. By clicking on a specific project, users are redirected to the OptiHub Dashboard, where they can edit or delete the selected project.</p><p>An optimization project consists of one or multiple simulation models, each with a BPMN model <ref type="bibr">[4]</ref> representing the process control flow and a JSON file with the simulation parameters according to <ref type="bibr" target="#b3">[3]</ref>. The simulation models supported by Optimos can be generated by Simod following the instructions from the code repository <ref type="foot" target="#foot_0">1</ref> and uploaded to the project via Upload asset. By clicking the desired simulation model in the OptiHub Dashboard, users can define constraints to restrict the optimization process. As shown in Figure <ref type="figure" target="#fig_2">2</ref>, constraints are divided into Global, Scenario, and Resource Constraints.</p><p>The Global Constraints (the tab shown in Figure <ref type="figure" target="#fig_2">2</ref>) relate to the optimization settings. They include the maximum number of iterations, the choice of the search algorithm, and the optimization approach to follow. An iteration refers to one cycle of evaluating potential solutions. Depending on the selected "Algorithm", Optimos keeps only optimal solutions at the current iteration and discard the rest (option HC-STRICT), retains near-optimal solutions for future iterations (HC-FLEX), or considers all solutions until the iteration limit is reached (TS). The selected "Approach" specifies whether to only add/remove resources (AR), only update schedules (CA), or combine both. Optimos allows three ways of combining them: (1) try to add/remove resources and update schedules simultaneously at each iteration (CO), (2) first add/remove resources and then improve schedules (ARCA), or (3) first optimize schedules and then adjust the number of resources (CAAR). This allows the optimization process to focus strictly on improvements or explore a broader range of potential solutions.</p><p>Under the Scenario Constraints tab, users can set general restrictions for all resources, such as maximum weekly hours, consecutive working hours (shifts), and daily working limits.,e.g., to define a rule that resources can work at most in two shifts of 4 hours on working days, with some rest in between. Then, the Resource Constraints tab defines conditions specific to each resource, such as personal capacity limits and maximum shifts they can work daily or weekly. Additionally, it allows users to restrict intervals of a day in which a given resource must always work or, conversely, never work. For example, users can specify that a particular part-time resource can work at most five shifts of 4 hours per week and must always be available from 9 AM to 12 PM from Monday to Friday but Users can view the processing queue for ongoing and completed simulations on the right side of the OptiHub Dashboard (see Figure <ref type="figure" target="#fig_2">2</ref>). By clicking on an entry, they can access detailed optimization reports. These reports show metrics like estimated mean costs, mean times, and average resource utilization achieved at each iteration, helping users compare improvements to the original process.</p><p>For example, Figure <ref type="figure" target="#fig_3">3</ref> illustrates the general results after optimizing a business process, including a scatter plot, average costs and cycle times, and comparisons to the initial solution. The scatter plot shows the performance achieved by the solutions explored by the optimizer, with the y-axis representing cost and the x-axis representing cycle time. It highlights the initial solution (red dot), optimal solutions (blue dots), and other (sub-optimal) solutions (gray dots). This visual plot aids users in getting general insights into the distribution of costs and cycle times and how they improve across iterations. Also, by clicking any solution in the chart, optimal or not, users can get more detailed information for each resource allocation, such as assigned tasks, total working times, hourly rates, and timetable changes.</p><p>Next, Figure <ref type="figure" target="#fig_4">4</ref> displays the information regarding a specific solution, i.e., corresponding to the 75th allocation assessed by the optimizer. While the values in the general chart (Figure <ref type="figure" target="#fig_3">3</ref>) aggregate all the optimal allocations, the values shown in Figure <ref type="figure" target="#fig_4">4</ref> focus only on the costs and cycle times achieved with the current allocation. It also shows average resource utilization and improvements over the original allocation. Specifically, in this allocation, the optimizer detected that two clerks are unused, suggesting they are unnecessary, and their exclusion leads to improvements. Indeed, the unused clerks' dynamic information, like utilization, cost, and available time, is missing as they did not participate in the simulated execution. In the example used for this demo, four clerks were underutilized initially, while only one credit officer was overutilized, causing increased waiting times and a bottleneck. Therefore, although not shown in the figure, the optimizer also identified that adding more credit officers or extending their schedules could lead to an optimal allocation. Users can also click on any resource (e.g., Clerk-2) to see allocated tasks and their adjusted timetables after optimization.</p><p>In this way, analysts can understand how each iteration adjusts the resource allocations and timetables to enhance performance. Users can review these results and choose a resource allocation from the solutions produced at each iteration based on their preferences for balancing time and cost. Optimos allows users to stop the optimization process at any point if they are satisfied with the results. roptimus-prime. This GitHub repository contains links to separate repositories for the frontend and backend (API) layers. A demonstration video of Optimos is available at https://youtu.be/jBtBEwO-wT4. The example file containing the simulation model and constraints used in the video can be found in the Optimos repository: https://github.com/AutomatedProcessImprovement/roptimus-prime/raw/main/ test_assets/demo/Demo%20Files.zip.</p><p>Optimos implements the optimization approaches presented in <ref type="bibr" target="#b5">[5,</ref><ref type="bibr" target="#b3">3]</ref>. The first paper <ref type="bibr" target="#b5">[5]</ref> describes a basic model with resources grouped in pools. The optimizer may add or remove resources to reduce cycle times and costs. The second paper <ref type="bibr" target="#b3">[3]</ref> proposes a more sophisticated model with differentiated resources, where each resource has its own availability and performance. The optimizer may add or remove resources or change the timetable of a resource while ensuring that the optimized timetables fulfill a given set of constraints (e.g., no more than 40 hours per week). Optimos relies on Prosimos <ref type="bibr" target="#b6">[6,</ref><ref type="bibr" target="#b3">3]</ref> as a simulation engine to estimate the impact after transforming the model in each iteration.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>Proceedings of the Best BPM Dissertation Award, Doctoral Consortium, and Demonstrations &amp; Resources Forum co-located with 22nd International Conference on Business Process Management (BPM 2024), Krakow, Poland, September 1st to 6th, 2024. * Corresponding authors.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Figure 1 :</head><label>1</label><figDesc>Figure 1: Optimos Architecture.</figDesc><graphic coords="2,117.13,65.61,361.02,224.71" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 2 :</head><label>2</label><figDesc>Figure 2: Partial view of OptiHub Dashboard.</figDesc><graphic coords="3,73.01,65.61,446.75,151.85" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Figure 3 :</head><label>3</label><figDesc>Figure 3: General optimization results: aggregating costs and cycle times from all the solutions.</figDesc><graphic coords="4,105.84,65.61,383.60,149.72" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: Information of a specific solution (resource allocation) retrieved by the optimizer.</figDesc><graphic coords="5,105.84,65.61,383.59,187.47" type="bitmap" /></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">https://github.com/AutomatedProcessImprovement/Simod</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Acknowledgments</head><p>Work funded by European Research Council (PIX project) and the Estonian Centre of Excellence in Artificial Intelligence funded by the Estonian Ministry of Education and Research.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<ptr target="https://github.com/AutomatedProcessImprovement/References" />
		<title level="m">Availability and Maturity Optimos is accessible as a cloud service from</title>
				<imprint/>
	</monogr>
	<note>Optimos and the source code of the Backend can</note>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<author>
			<persName><forename type="first">M</forename><surname>Dumas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">L</forename><surname>Rosa</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">A</forename><surname>Reijers</surname></persName>
		</author>
		<title level="m">Fundamentals of Business Process Management</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2018">2018</date>
		</imprint>
	</monogr>
	<note>Second Edition</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Constructing digital twins for accurate and reliable what-if business process analysis</title>
		<author>
			<persName><forename type="first">M</forename><surname>Dumas</surname></persName>
		</author>
		<ptr target=".org" />
	</analytic>
	<monogr>
		<title level="m">BPM Workshops</title>
		<title level="s">CEUR Workshop Proceedings, CEUR-WS</title>
		<imprint>
			<date type="published" when="2021">2938. 2021</date>
			<biblScope unit="page" from="23" to="27" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Discovery, simulation, and optimization of business processes with differentiated resources</title>
		<author>
			<persName><forename type="first">O</forename><surname>López-Pintado</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Dumas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Berx</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Inf. Syst</title>
		<imprint>
			<biblScope unit="volume">120</biblScope>
			<biblScope unit="page">102289</biblScope>
			<date type="published" when="2024">2024</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<monogr>
		<author>
			<persName><forename type="first">O</forename><forename type="middle">M</forename><surname>Group</surname></persName>
		</author>
		<ptr target="http://www.omg.org/spec/BPMN/2.0.2/" />
		<title level="m">Business Process Model and Notation (BPMN)</title>
				<imprint>
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Silhouetting the cost-time front: Multiobjective resource optimization in business processes</title>
		<author>
			<persName><forename type="first">O</forename><surname>López-Pintado</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Dumas</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Yerokhin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><forename type="middle">M</forename><surname>Maggi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">BPM Forum</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2021">2021</date>
			<biblScope unit="volume">427</biblScope>
			<biblScope unit="page" from="92" to="108" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Prosimos: Discovering and simulating business processes with differentiated resources</title>
		<author>
			<persName><forename type="first">O</forename><surname>López-Pintado</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Halenok</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Dumas</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">EDOC Demos</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2022">2022</date>
			<biblScope unit="volume">466</biblScope>
			<biblScope unit="page" from="346" to="352" />
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
