Dr. Zinovi Krougly



University of Western Ontario
Department of Statistical &
Actuarial Sciences

1151 Richmond Street North
Western Science Centre 270
London, Ontario, Canada, N6A 5B9

Phone:  (519) 661-2111 ext. 88007
Fax:   (519) 661-3813



Expertise and Research Interests


·         Scientific Computing, Numerical Analysis, Optimization

·         Stochastic Modeling, Simulation

·         Big Data Analysis & Data Visualization and Object Oriented Programming

Used: SQL Server Database Engine, SQL Server Compact Database, MS Access Database

·         High-precision Numerical Computing

·         Operations Research, Queuing Networks, Performance Analysis

·         Use of Technology in the Teaching of Mathematics, Statistics and Related Disciplines

·         Machine Learning, Cluster Analysis

·         Programming Languages C++, C\#, Matlab, R, Mathematica.


Big Data Analysis & Data Visualization and Object Oriented Programming


KEY WORDS that best describe the research:


Big Data Analysis; C\#, SQL server database and Excel Integration; Interpolation Methods and Optimization, Machine Learning and Classification Algorithms, Classes and C# Advances Features.


The software includes:

Data selection, import Excel data files, reading and visualizing data in C\# and import large scale Excel files (C# and Excel integration), trend chart, ability to select start and end time in the chart, tool tips and data markers.

Used SQL Server or SQL Server Compact (SQL CE) databases.


Some of the C# classes are the following:

ClassLogisticRegression, ClassLibraryArray and ClassLibraryInterpolator, ClassHistogram, ClassDescriptiveStatisticss (mean, standard deviation, median, mode, F95 (95% percentile), F90, F75, F50, F25, F10, F05), ClassClusterAnalysis.


Library Interpolator class includes curve fitting option, polynomial curve fit algorithm, cubic spline interpolation for logistic curve fit (sigmoid function).


ClusterAnalysis class (for optimizing or controlling groups called clusters) of multiple source (wells). The objective is to divide the source with similar functions based on properties learned from training data (classification and data clustering analysis).


High-precision Numerical Computing


We presented a multiple precision libraries with applications to numerical analysis, queueing networks and stochastic modelling [9, 15]. For maximum efficiency, arithmetic operators and algebraic functions are implemented in the mpreal class. We investigate the accuracy of numerical solutions in double precision and multiple precision in all three areas. Our examples are chosen to reflect the diversity of types of problems for which multiple precision can play a useful role.


 A multiple precision library for floating-point calculations to any number of digits has been implemented in Matlab and C++.  One application is discussed in detail, namely the evaluation in the complex plane of special functions in regions of bad conditioning [9, 10]. Through the use of Matlab classes, all the basic arithmetic operations are accessible using Matlab syntax, even though the fundamental operations are coded in C++.  Arithmetic supports both real and complex data to arbitrary precision. The level of the precision being used can be changed at any time. Many elementary functions are also available in Matlab syntax, although not all of them are offered for complex arguments.



Forestry Project, Stochastic Modelling and Visualization of Fire Spread Natural Phenomena


We consider a stochastic fire growth model, with the aim of predicting the behaviour of large forest fires. Such a model can describe not only average growth, but also the variability of the growth. Implementing such a model, based on cellular automata simulations, in a computing environment allows one to obtain probability contour plots, burn size distributions, and distributions of time to specified events [2, 4, 12, 16]. Such a model also allows the incorporation of a stochastic spotting mechanism. We have also used it to generate phenomena such as the large fire event at Dogrib in Alberta in 2001. The applications are written in C++. 



     Forest Fire Modelling Examples














A Stochastic Model for Generating Disturbance Patterns within Landscapes


A stochastic model for generating disturbances in landscapes that interfaces with geographic information systems (GIS) is presented in [1]. The model operates on a lattice (rectangular array of points) using a space-time Markov process, which gives a stochastic simulation of growth patterns in terms of parameters of the local region. The model generates disturbance patterns on the landscape based on the total area disturbed and the number of patches to be disturbed. 


The model is developed in a C++ software package named “TDsimulator” (“Terrain Disturbance Simulator”) which can be used to predict terrain changes under a variety of stochastic scenarios described herein. The software comprises a set of a geographic information system GIS routines that collectively yield the disturbance patterns. A demonstration of the stochastic model is provided for simulating fire behavior in a forested landscape. The numerical examples illustrate disturbance impact and map-visualization under different initial stochastic conditions and scenarios.


Simulation Distributions with Almost-lack-of Memory (ALM) Property, Hypothesis Testing and Computing the Corresponding Statistics


Time-varying periodic flows of events occur in numerous applications, particularly in data transfer networks, communication systems, reliability models, ecological data descriptions, etc. Recently a new class of probability distributions known as the class of ALM distributions was introduced to properly model phenomena possessing periodical behavior.

Certain characterization properties of time-varying periodic Poisson flows are studied in terms of ALM distributions. Statistical parameter estimation and testing of hypothesis for such distributions are studied. We consider some new properties of this class of distributions, compare estimation of their parameters and propose the likelihood ratio test for testing an ALM distribution versus other competing distributions, particular another ALM or non-ALM distributions [6, 10, 11]. Algorithms for computing critical levels and power of the likelihood ratio test by the Monte Carlo method are designed. The Monte-Carlo methods in testing hypotheses about ALM distributions based on the Neyman-Pierson theorem. Applications are written in C++.


Performance Evaluation and Optimization of Computer - Communication Systems and Queueing Networks

In the design and performance analysis of computer networks, closed queueing networks have played a key role [5, 7, 8, 13]. Whereas product-form network models have become invaluable tools in this regard, a whole host of real networks do not satisfy the necessary conditions to make use of them. For such situations, various approximations have been proposed. The present work presents a new approximation, with the main focus being networks employing a preemptive priority discipline at one or more service centers.

The novel role is that it resorts to sensitivity analysis based on partial derivatives for various performance measures. This method has been previously used in [7, 8] to obtain such derivative information as functions of the service demands and service rates. A unified nonlinear programming approach has been presented [5, 13] to arrive at an approximate solution. In fact, two main optimizing approaches are followed; one which employs the derivative information to develop efficient techniques to reach the optimal solution, and the other which does not.

The performance evaluation algorithms use a nonlinear programming approach to obtain approximate solutions in queueing network models. A number of algorithms are proposed to determine the numerical results for priority approximation and other models. Using sensitivity analysis, an efficient iterative technique has been developed for closed queueing networks.

This work introduced the minimization criteria and used a direct search procedure with efficient algorithms based on the calculation of derivative information to perform the optimization. We compare the approximate solutions obtained from our approach with the global balance solution, illustrate the accuracy of the approximation, and compare the efficiency of the different optimization methods we have implemented. The applications are written in C++.


Forecasting, Time Series Analysis with C++, Mathematica and R Packages


The Trench algorithm is implemented in C++ and is interfaced to Mathematica and R [1].

This algorithm computes the inverse of a Positive-definite Toepliz matrix, and can be used to evaluate the inverse of the covariance matrix of n successive observations from a stationary time series as well as its determinant. The Trench Inverse package is provided in both of these high-level quantitative programming environments.


The Trench Inverse package is suitable for exact maximum likelihood estimation in many linear time series models as well as for use in many other types of problems in time series analysis. The use of Trench Inverse is illustrated with another package, FGN, which we developed for fitting fractional Gaussian noise models. Examples are given which illustrate the efficiency of the algorithms we have implemented.


High Performance Computing


High performance computing in stochastic modelling and simulation, Windows and Linux environments, integrating with Mathlink and Mathematica (C++ and Mathematica software). Used LAM/MPI C++ communication standard for parallel and distributed computers (SHARCNET infrastructure).


C++ Implementation of Algorithms for Matrix Analytic Methods in Stochastic Modeling


Calculations of performance measures for a wide class of stochastic models, implementation of the concept of object-oriented programming techniques, class vector and class matrix development, implementation of quadratically convergent logarithmic reduction algorithm (C++ software, work in progress).

Papers in Refereed Journals


1.    A stochastic model for generating disturbance patterns within landscapes (2009), 
Krougly, Z.L., Creed, I.F., Stanford D.A., Computers & Geosciences 35, 1451-1459.
2.    Stochastic forest fire growth models (2009), Boychuk, D., Braun, W.J., Kulperger, R.J., Krougly, Z.L., Stanford, D.A., Environmental and Ecological Statistics 16, 133-151.  
3.    Algorithms for linear time series analysis: with R package (2007), McLeod, A.I.,
   Yu, Hao, Krougly, Z.L., Journal of Statistical Software 23(5), 1-26.

JSS Article

R Package


4.    A stochastic model for forest fire growth (2007), Boychuk, D., Braun, W.J., Kulperger, R.J.,  Krougly, Z.L., Stanford, D.A., Information Systems and Operational   Research (Special Issue on Forestry) 45, 9-16.


5.    Iterative algorithms for performance evaluation of closed network models (2005), Krougly, Z.L., Stanford, D.A., Performance Evaluation 61 (2005), 41-64.


6.    Periodic Poisson processes and almost-lack-of-memory distributions (2004), Dimitrov, B.D.,  Rykov, V.V, Krougly, Z.L.,  Automation and Remote Control 65,  1597-1610.


7.    Computational algorithms of optimization of closed queueing networks (1990), Krougly, Z.L., Murshtein, M.S., Automation and Remote Control 49, 926-936.


8.    Optimization of closed stochastic networks (1987), Vishnevsky, V.M., Krougly, Z.L., Automation and Remote Control 46, 173-183.


Refereed Conference Proceedings


9.  Software implementation of numerical algorithms in arbitrary precision, Krougly, Z.L., Jeffrey, D.J, Tsarapkina, D., 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC 2013), Editors: N. Bjorner et al., IEEE Computer Society, (2014), p. 132-138.


10. Implementation and application of extended precision in Matlab (2009), Krougly, Z.L., Jeffrey D.J., Proceedings of the Applied Computing Conference ACC '09, Editors: N. Mastorakis et al., WSEAS Press, pp 103—108.


11. Periodic non-stationary arrival processes in queueing networks and their characterization (2003), Dimitrov, B.D., Rykov, V.V, Krougly, Z.L., Distributed Computer and Communication Networks (DCCN-2003): Stochastic Modelling and Optimization, Technosphera, Moscow, 64-72.


12. On properties and statistical estimation of ALM distributions (2003), Dimitrov, B.D., Rykov, V.V, Krougly, Z.L., Ghitany, M., Proceedings of Hawaii International Conference on Statistics and Related Fields, Honolulu: (CD  ISSN#1539-7211).


13. A stochastic forest fire spread model (2005), Kulperger, R.J., Krougly, Z.L., Stanford, D.A., Proceedings of the 5th Saint Petersburg Workshop on Simulation, St. Petersburg, 401-406. 


14. Nonlinear programming algorithms for performance modelling of computer networks (2003) Krougly, Z.L., Stanford, D.A., Distributed Computer and Communication Networks: Stochastic Modelling         and Optimization (DCCN-2003), Technosphera, Moscow, 11-22.


15. Experimental data analysis and software applications for Indicator spectrophotometric method for the determination of acidic and basic properties of solid surfaces (2004), Krougly, Z.L., Glibin, V.P., 87th Canadian Chemistry Conference and Exhibition of the CSC, 934.


Preprints and Work in Progress


16.  Numerical Laplace Transform and Inversion with Extended Precision for Probability Distributions and Stochastic Modeling, Krougly, Z.L., Stanford, D.A.

17.  Extended Precision with Applications to Stochastic Modeling, 26 pages, Krougly, Z.L., Stanford, D.A.

18.  Spot Fires and firebrand Distribution, Krougly, Z.L., Kulperger D.J., Stanford, D.A.


Software Packages in C++


List of C++ software packages developed for and used in the aforementioned papers follows.


[1] Terrain disturbance simulator (TDSimulator package) (2009).


 [2], [4], [13] Stochastic forest fire simulator (FFSimulator package) (2009).


[3] Linear time series analysis (ltsa package ).

R computer code can be download from the following programming resources:

- R source package ltsa, version 1.4.2 (2012),

- R source package FGN:Fractional gaussian noise, estimation and simulation, version 1.4



 [5], [14] Stochastic modeling of networks and queues (ZEDNED package), 2005.


[6], [11], [12] Almost-lack-of-memory distributions (ALM package) (2004), Revised November 2012.


 [9], [10] Multiple precision numerical computing and complex analysis library (MPREC package), 2009-2015.


 [10] Matlab double-double precision numerical computing and complex analysis library (DDPREC package), 2009.


SOFTWARE PACKAGES in C# (in progress)


Big Data Analysis and Object Oriented Programming, 2013 - 2015