Fire Simulation and Prediction by Markov Chain Monte Carlo

Mahsa Hassankashi. CodeProject. 2017-06-05.
There are some events in any area which have specific behavior in spreading, such as fire, infection virus or computer virus. There are common patterns in all of mentioned examples for instance, they are complex in prediction next part, and need huge mathematic calculation in order to anticipate next point of spreading. I have focused on fire spreading in this article.
Fire occurs so many damages in every aspect of life, human injuries and economic matters which we cannot neglect its hurts. It becomes worse when it spreads widely. Therefore, predicting fire spread is important. Obviously having comprehensive knowledge about avoiding fire in new position can prevent from its consequences. In fact, when flames reach to potential fuels, combustion will happen and fire will move in new position.
There are some different factors which are playing important role in fire spread such as fuel type and load, wind velocity, humidity and slop, we can draw a pattern from fire behavior and approximate next point in order to stifle fire in new point. There are limited tools in some areas such as ship and we do not have complete and professional firefighting team.
Using Markov Chain Monte Carlo for fire simulation is a fast and proper solution because it is memoryless while mathematic formula with less information about next point is time consuming. In this approach there is a function to generate random number between zero and one and it is the probability of flame spread, if the probability of ship room which has been calculated from influence of fire is greater than this number, so fire will go advanced, otherwise fire will die out.

[Fire Simulation and Prediction by Markov Chain Monte Carlo]

Langton’s Ant in F#

It has been almost a year since I blogged, been busy with too many things so couldn’t find the time. In my new organisation we interviewed a fresher and while discussing on what coding problem to give we finalised on Langton’s Ant problem. We asked the candidate to implement a minimal console based version which can print each step of the Ant journey on the plane.

[Langton’s Ant in F#]

Walking the Euler Path: Intro

fierval. Viral F# .2016-09-17.
Graphs play their role in bioinformatics which is my favorite area of computer science and software engineering lately. This relationship was the biggest motivator behind this project.
I have been experimenting with a few graph algorithms trying to parallelize them. This is interesting because these algorithms usually resist parallelization since they are fast in their serial version running in O(|E|) or O(|E| + |V|) time (E – the set of edges, V – the set of vertices of the graph). And of course I use any excuse to further explore the F# language.

[Walking the Euler Path: Intro]