Continuing from our last primer about A* search, this post assumes knowledge of the A* algorithm. Here, we demonstrate an application of A* search to a combinatorial optimization problem and investigate the performance gains from using a more accurate heuristic. The String Character Exchange Distance Problem I'm not sure if…

This post introduces the notion of state-space search using the A* algorithm. The terminology and groundwork for general search algorithms is described. Additionally, the heuristic function as well as the properties of admissibility and consistency are defined and discussed. The search problem We will describe a minimal search framework formulated…

Mergesort is a divide and conquer sorting algorithm which can be implemented to be in place and stable. It can be shown that the number of compares in mergesort for a dataset of size N is $\approx N \log N + c N, c \in \mathbb{R}$. I couldn't sleep and…

Upcoming Posts about Diffusion Diffusion is an interesting transport process where data analysis draws from probability theory. The results are really quite intuitive. In this post, I will explain the relevant theory and results to accompany an upcoming tutorial about using ImageJ and MATLAB for analyzing particle tracking data. Theory…

MathML Support (MathJax) Thanks to Patrick Edelman for the hot tip! Adding LaTeX to Ghost is very simple. Open up ghost/content/themes/YOUR_THEME_NAME/default.hbs. Before </body>, insert: {{! Mathjax configuration}} <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config…

After a year of WordPress, I've finally moved this blog over to a more modern blogging framework. And in just the last two hours of playing around, I am already psyched. Here's why. Introducing Ghost Amongst many features that Ghost supports, my favorite are: Markdown support with live preview Node…