Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Markus Bohlin is active.

Publication


Featured researches published by Markus Bohlin.


real-time systems symposium | 2006

Determining Maximum Stack Usage in Preemptive Shared Stack Systems

Kaj Hänninen; Jukka Mäki-Turja; Markus Bohlin; Jan Carlson; Mikael Nolin

This paper presents a novel method to determine the maximum stack memory used in preemptive, shared stack, real-time systems. We provide a general and exact problem formulation applicable for any preemptive system model based on dynamic (run-time) properties. We also show how to safely approximate the exact stack usage by using static (compile time) information about the system model and the underlying run-time system on a relevant and commercially available system model: a hybrid, statically and dynamically, scheduled system. Comprehensive evaluations show that our technique significantly reduces the amount of stack memory needed compared to existing analysis techniques. For typical task sets a decrease in the order of 70% is typical


embedded and real-time computing systems and applications | 2009

Simulation-Based Timing Analysis of Complex Real-Time Systems

Markus Bohlin; Yue Lu; Johan Kraft; Per Kreuger; Thomas Nolte

This paper presents an efficient best-effort approach for simulation-based timing analysis of complex real-time systems. The method can handle in principle any software design that can be simulated, and is based on controlling simulation input using a simple yet novel hill-climbing algorithm. Unlike previous approaches, the new algorithm directly manipulates simulation parameters such as execution times, arrival jitter and input. An evaluation is presented using six different simulation models, and two other simulation methods as reference: Monte Carlo simulation and MABERA. The new method proposed in this paper was 4-11 % more accurate while at the same time 42 times faster, on average, than the reference methods.


algorithmic approaches for transportation modeling, optimization, and systems | 2011

Track Allocation in Freight-Train Classification with Mixed Tracks

Markus Bohlin; Holger Flier; Jens Maue; Matúš Mihalák

We consider the process of forming outbound trains from cars of inbound trains at rail-freight hump yards. Given the arrival and departure times as well as the composition of the trains, we study t ...


algorithmic approaches for transportation modeling, optimization, and systems | 2012

Optimal Freight Train Classification using Column Generation

Markus Bohlin; Florian Dahms; Holger Flier; Sara Gestrelius

We consider planning of freight train classification at hump yards using integer programming. The problem involves the formation of departing freight trains from arriving trains subject to scheduling and capacity constraints. To increase yard capacity, we allow the temporary storage of early freight cars on specific mixed-usage tracks. The problem has previously been modeled using a direct integer programming model, but this approach did not yield lower bounds of sufficient quality to prove optimality. In this paper, we formulate a new extended integer programming model and design a column generation approach based on branch-and-price to solve problem instances of industrial size. We evaluate the method on historical data from the Hallsberg hump yard in Sweden, and compare the results with previous approaches. The new method managed to find optimal solutions in all of the 192 problem instances tried. Furthermore, no instance took more than 13 minutes to solve to optimality using fairly standard computer hardware.


international conference on software engineering | 2013

MOS: an integrated model-based and search-based testing tool for function block diagrams

Eduard Paul Enoiu; Kivanc Doganay; Markus Bohlin; Daniel Sundmark; Paul Pettersson

In this paper we present a new testing tool for safety critical applications described in Function Block Diagram (FBD) language aimed to support both a model and a search-based approach. Many benefits emerge from this tool, including the ability to automatically generate test suites from an FBD program in order to comply to quality requirements such as component testing and specific coverage measurements. Search-based testing methods are used to generate test data based on executable code rather than the FBD program, alleviating any problems that may arise from the ambiguities that occur while creating FBD programs. Test cases generated by both approaches are executed and used as a way of cross validation. In the current work, we describe the architecture of the tool, its workflow process, and a case study in which the tool has been applied in a real industrial setting to test a train control management system.


euromicro conference on real-time systems | 2008

Bounding Shared-Stack Usage in Systems with Offsets and Precedences

Markus Bohlin; Kaj Hänninen; Jukka Mäki-Turja; Jan Carlson; Mikael Nolin

The paper presents two novel methods to bound the stack memory used in preemptive, shared stack, real-time systems. The first method is based on branch-and-bound search for possible preemption patterns, and the second one approximates the first in polynomial time. The work extends previous methods by considering a more general task-model, in which all tasks can share the same stack. In addition, the new methods account for precedence and offset relations. Thus, the methods give tight bounds for a large set of realistic systems. The methods have been implemented and a comprehensive evaluation, comparing our new methods against each other and against existing methods, is presented. The evaluation shows that our exact method can significantly reduce the amount of stack memory needed.


international conference on software testing verification and validation workshops | 2013

Search Based Testing of Embedded Systems Implemented in IEC 61131-3: An Industrial Case Study

Kivanc Doganay; Markus Bohlin; Ola Sellin

This paper presents a case study of search-based test generation for embedded system software units developed using the Function Block Diagrams (FBDs), a graphical language in the IEC 61131-3 standard aimed at programmable logic controllers (PLCs). We consider 279 different components from the train control software developed by Bombardier Transportation, a major rail vehicle manufacturer. The software is compiled into C code with a particular structure. We use a modified hill climbing algorithm for generating test data to maximize MC/DC coverage for assignments with logical expressions in the C code, while retaining the semantics of the original FBD implementation. An experimental evaluation for comparing the effectiveness (coverage rate) and the efficiency (required number of executions) of hill climbing algorithm with random testing is presented. The results show that random testing performs well for most units under test, while around 30% of the artifacts significantly benefit from the hill climbing algorithm. Structural properties of the units that affect the performance of hill climbing and random testing are also discussed.


international conference on software testing verification and validation workshops | 2016

Dynamic Integration Test Selection Based on Test Case Dependencies

Sahar Tahvili; Mehrdad Saadatmand; Stig Larsson; Wasif Afzal; Markus Bohlin; Daniel Sundmark

Prioritization, selection and minimization of test cases are well-known problems in software testing. Test case prioritization deals with the problem of ordering an existing set of test cases, typically with respect to the estimated likelihood of detecting faults. Test case selection addresses the problem of selecting a subset of an existing set of test cases, typically by discarding test cases that do not add any value in improving the quality of the software under test. Most existing approaches for test case prioritization and selection suffer from one or several drawbacks. For example, they to a large extent utilize static analysis of code for that purpose, making them unfit for higher levels of testing such as integration testing. Moreover, they do not exploit the possibility of dynamically changing the prioritization or selection of test cases based on the execution results of prior test cases. Such dynamic analysis allows for discarding test cases that do not need to be executed and are thus redundant. This paper proposes a generic method for prioritization and selection of test cases in integration testing that addresses the above issues. We also present the results of an industrial case study where initial evidence suggests the potential usefulness of our approach in testing a safety-critical train control management subsystem.


international conference on information technology new generations | 2016

Towards Earlier Fault Detection by Value-Driven Prioritization of Test Cases Using Fuzzy TOPSIS

Sahar Tahvili; Wasif Afzal; Mehrdad Saadatmand; Markus Bohlin; Daniel Sundmark; Stig Larsson

Software testing in industrial projects typically requires large test suites. Executing them is commonly expensive in terms of effort and wall-clock time. Indiscriminately executing all available test cases leads to sub-optimal exploitation of testing resources. Selecting too few test cases for execution on the other hand might leave a large number of faults undiscovered. Limiting factors such as allocated budget and time constraints for testing further emphasizes the importance of test case prioritization in order to identify test cases that enable earlier detection of faults while respecting such constraints. This paper introduces a novel method prioritizing test cases to detect faults earlier. The method combines TOPSIS decision making with fuzzy principles. The method is based on multi-criteria like fault detection probability, execution time, or complexity. Applying the method in an industrial context for testing a train control management subsystem from Bombardier Transportation in Sweden shows its practical benefit.


Transportation Science | 2016

Optimization Methods for Multistage Freight Train Formation

Markus Bohlin; Sara Gestrelius; Florian Dahms; Matúš Mihalák; Holger Flier

This paper considers mathematical optimization for the multistage train formation problem, which at the core is the allocation of classification yard formation tracks to outbound freight trains, subject to realistic constraints on train scheduling, arrival and departure timeliness, and track capacity. The problem formulation allows the temporary storage of freight cars on a dedicated mixed-usage track. This real-world practice increases the capacity of the yard, measured in the number of simultaneous trains that can be successfully handled. Two optimization models are proposed and evaluated for the multistage train formation problem. The first one is a column-based integer programming model, which is solved using branch and price. The second model is a simplified reformulation of the first model as an arc-indexed integer linear program, which has the same linear programming relaxation as the first model. Both models are adapted for rolling horizon planning and evaluated on a five-month historical data set from the largest freight yard in Scandinavia. From this data set, 784 instances of different types and lengths, spanning from two to five days, were created. In contrast to earlier approaches, all instances could be solved to optimality using the two models. In the experiments, the arc-indexed model proved optimality on average twice as fast as the column-based model for the independent instances, and three times faster for the rolling horizon instances. For the arc-indexed model, the average solution time for a reasonably sized planning horizon of three days was 16 seconds. Regardless of size, no instance took longer than eight minutes to be solved. The results indicate that optimization approaches are suitable alternatives for scheduling and track allocation at classification yards.

Collaboration


Dive into the Markus Bohlin's collaboration.

Top Co-Authors

Avatar

Mehrdad Saadatmand

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Per Kreuger

Swedish Institute of Computer Science

View shared research outputs
Top Co-Authors

Avatar

Martin Aronsson

Swedish Institute of Computer Science

View shared research outputs
Top Co-Authors

Avatar

Kivanc Doganay

Swedish Institute of Computer Science

View shared research outputs
Top Co-Authors

Avatar

Sara Gestrelius

Swedish Institute of Computer Science

View shared research outputs
Top Co-Authors

Avatar

Wasif Afzal

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Sahar Tahvili

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Anders Holst

Swedish Institute of Computer Science

View shared research outputs
Top Co-Authors

Avatar

Jukka Mäki-Turja

Mälardalen University College

View shared research outputs
Top Co-Authors

Avatar

Kaj Hänninen

Mälardalen University College

View shared research outputs
Researchain Logo
Decentralizing Knowledge