a stochastic model describing a sequence of possible events in which the probability of each event depends only on the state attained in the previous event. In continuous-time, it is known as a Markov process. It is named after the Russian mathematician Andrey Markovor something. In short, this guy named Andrei Andreyevich Markov (or Markoff depending who you ask) created this probability model thing. The probability of any given event is only based on whatever directly happened before. For example:
Whiteboard example of Markov chain
From the diagram, here's what we know:
- Event A has a 50% chance of going to B, but also a 50% chance of going to C
- Event B has a 70% chance of going back to A, but also a 30% chance of going to D
- Event C must go to D (100% chance)
- Event D terminates the sequence (0% chance of going to anything)
Why do I bring this up? Well, back in August, I had an idea. What if, I could make randomly generated, but somewhat realistic sounding Christmas cards? Well, Markov chains are the solution. They are commonly used to auto-complete sentences or predict your next text, provided enough data. So, I went ahead and created a data set, a Python program, and some complicated thing called a transition matrix, and guess what? It didn't work. Not one bit.
Now, I'm not one to just accept defeat. But I could ask for help. And so I did; I called a colleague of mine proposing the idea. The plan was that she'd do the Markov chain stuff, and I'd do the formatting and creative design stuff. She, to my surprise, actually accepted the idea. So now, there are some Christmas cards, ready to send! I'll provide a link to a .zip file of all the cards, and (if I get permission) a link to a .zip file of all the source code.
Christmas cards: https://1drv.ms/u/s!AuPAO--hhotYgjU9gM-Z4hGcKTwk?e=XIg6Xw
Python (my attempts, and the snowflake program I made): https://1drv.ms/u/s!AuPAO--hhotYgjcCYZ8SAm3tD070?e=IPp4di
Java (courtesy of L. Nadlia): TBA
No comments:
Post a Comment