Automated Trace Analysis of Discrete-Event System Models
In this paper, we describe a novel technique that helps a modeler gain insight into the dynamic behavior of a complex stochastic discrete-event simulation model based on trace analysis. We propose algorithms to distinguish progressive from repetitive behavior in a trace and to extract a minimal progressive fragment of a trace. The implied combinatorial optimization problem for trace reduction is solved in linear time with dynamic programming. We present and compare several approximate and one exact solution method. Information on the reduction operation as well as the reduced trace itself helps a modeler to recognize the presence of certain errors and identify their cause. We track down a subtle modeling error in a dependability model of a multiclass server system to illustrate the effectiveness of our approach in revealing the cause of an observed effect. The proposed technique has been implemented and integrated in Traviando, a trace analyzer to debug stochastic simulation models.
trace analysis discrete-event simulation cycle reduction debugging techniques