# data[].attributes.headline
Understanding Probability! - Esteban Ruiz

# data[].attributes.subject
Understanding Probability! - Esteban Ruiz

# data[].attributes.body
This module appeared challenging when I looked at it when it was published. But now that I finally finished my data calculations, it proved to be worthwhile in learning more about probability. I am happy I finished this project! - Esteban

# data[].attributes.headline
The project was undoubtedly challenging.

# data[].attributes.subject
The project was undoubtedly challenging.

# data[].attributes.body
I am just glad to have turned something in after it bothering me for weeks.

# data[].attributes.headline
Trying not to over-complicate the project - yet failing 

# data[].attributes.subject
Trying not to over-complicate the project - yet failing 

# data[].attributes.attachment_caption
Me trying to process everything that's going on. -Julianna Chen

# data[].attributes.body
-Hailee U

# data[].attributes.body
Anyone else or just me? loved the project idea I came up with but it stressed me out to come up with it and life just kept getting in the way. I am glad it is done

# data[].attributes.body
-Natalie Tran

# data[].attributes.body
Catching up after an eventful last week!

# data[].attributes.body
Last week was a pretty stressful because I had to finish two projects. But, I still finished my project for this course. I only have to say, never give up! :)

-Arturo Ambriz

# data[].attributes.body
Probability in statistics is one of the most intense concepts that a lot of people are facing challenges about probability. But don't give up. Just keep trying over and over.
-Devin Nghiem

# data[].attributes.body
I genuinely enjoyed learning about probabilities. I especially liked doing the urn example in class with the skittles and the starbucks as well as the different colored marbles. I feel like it helped me understand the basic concept. I felt more comfortable in this module than the previous one.

# data[].attributes.body
If you are feeling behind, you are not alone, due to personal reasons , fell behind too and I will try my best to get caught up!

# data[].attributes.headline
This is how I feel playing catch up right now.

# data[].attributes.subject
This is how I feel playing catch up right now.

# data[].attributes.headline
Me trying to keep up with the workload of all three of my summer classes.

# data[].attributes.subject
Me trying to keep up with the workload of all three of my summer classes.

# data[].attributes.headline
Module Project for Probability:                            Where Do Distributions Exist in Your Community Recording Presentations 

# data[].attributes.subject
Module Project for Probability:                            Where Do Distributions Exist in Your Community Recording Presentations 

# data[].attributes.body
Hi Class, Sharing my Module Project on Probability presentation. Have a great weekend!
- Pablo

# data[].attributes.attachment_link.title
Module Project Probability Recording Where Do Distribution Exist In Your Community 

# data[].attributes.body
Really enjoyed learning about discrete and binomial distribution! Lots of interesting formulas and how to apply them. Can't wait to see what's in store for the next module!!

# data[].attributes.body
Anyone else ? - hailey p

# data[].attributes.body
Another week down! We can do this.

# data[].attributes.headline
Learning a heck load of probability material in one week has me like:

# data[].attributes.subject
Learning a heck load of probability material in one week has me like:

# data[].attributes.body
Anyone else? Or just me?
- Emily Corena :D

# data[].attributes.headline
I'll never look at a normal distribution curve the same again! 

# data[].attributes.subject
I'll never look at a normal distribution curve the same again! 

# data[].attributes.body
Keep up the great work everyone!
-Britney

# data[].attributes.headline
Me when I realize we use probability every single day without knowing it! 

# data[].attributes.subject
Me when I realize we use probability every single day without knowing it! 

# data[].attributes.body
-Emily Bennett :D

# data[].attributes.attachment_link.readable_text
Before you get excited, it's not the type of memes you are thinking of. I do apologize, however I struggled to find a link between online memes and Statistics and Operational Research except for maybe this one:

If you are disappointed, my friend Robyn includes a tweet of the week at the end of each blog post which I'm sure there are plenty of memes there. What we are actually going to talk about is the concept of memes in heuristics used for optimization. This week, as part of the MRes course, I have been writing a report on that very topic. I thought it was interesting so I decided to share it with you.

Firstly, what even is optimization? Well a previous MRes now PhD student at STOR-i covered this in a similar blog on heuristics in optimization. But if you are too lazy to click that link then basically we wish to minimize or maximize a function subject to some constraints. A very famous example of this is the traveling salesmen problem. In this problem, as you may have guessed, we have a travelling salesmen. This salesmen wishes to visit all of the cities only once. When he does this he wishes to incur the minimum cost or distance. So the problem may look at bit like this:

There are many exact methods that will produce the correct solution. However, as you increase the problem (the number of cities) the time to compute these methods increases greatly to a point where there is no way you have time to wait for a response. So in response to this, heuristic methods are used. One popular heuristic method is the genetic algorithm. As you can probably tell by the name it is based on genetics, particularly how they are past on.

The algorithm starts with a set of individuals each with a genetic code (this is the order they visit each city). Some of the individuals are then selected to be parents. Usually, the best individuals are selected (individuals with least cost/distance) but occasionally there is some randomization. The parents then "reproduce" which is where there is a crossover between two parents. This can happen in different ways for different problems, in particular there are multiple ways to do this for the travelling salesmen. Today we will discuss one called the Very Greedy Crossover found here. In this crossover an initial city is chosen randomly then the next city is chosen from the adjacent cities in the parents. The closest cities to the initial cites out of the adjacent ones in the parents is chosen. This process is repeated until all cities have been chosen. For example:

These resulting "children" are then mutated with some probability. Again, there are many ways to do this. One way is to simply swap the places of two cities. The individuals now make up a new population and the process is repeated until some condition is met. This may be that a solution is found that is considered good enough or simply after so many iterations the best is chosen.

I understand that by now you have either completely forgotten this blog post was supposed to be about memes or you are understandably frustrated with me for not getting to the point. But don't worry I'm doing it now. Dawkins coined the term "meme" to mean an analogous to the gene in the context of cultural evolution. So, ideas and behaviors that spread within our culture or image based jokes that spread through the internet. This has been adapted so we can include memes within the genetic algorithm to create what are known as memetic algorithms.

"How do we do this?" you may be asking. I hope you are cause I'm about to answer that very question. It's simple. After the mutation stage we add what is called a local search heuristic. These are algorithms that go from solution to solution hoping to find an optimal solution. An example is Tabu search. Tabu search includes memory about where it is previously been to avoid cycling through the same solutions and getting trapped in local optima. Local optima means that it's the best solution in that area. This does not mean its the best solution overall. Searches can get trapped in local optima as it appears to be the best solution if other areas are not searched. For example, the neighborhood of a solution may be all the solutions that can be found by removing a city and placing it in a different position. The search will then move to the best solution in the neighborhood. Since each time the best is chosen a local optima will be found, but other solutions that require choosing a worst option first to then move to a better option may be missed. The Tabu remembers where it's been and blocks previous moves forcing the search to look at other solutions.

Memetic Heuristics are seen to be more effective and produce better results, however this comes at a price. As these algorithms are more complicated the computational time is longer. Hence, if you are looking for a quick answer I suggest you stick with a more simple heuristic. However if you have the time you should definitely give a memetic algorithm a go. The particular one I have outlined in this blog can be found here. Another approach for using a memetic algorithm to solve the travelling salesmen using particle swarm optimization can be found here. Find out more about the genetic algorithm here, tabu search here and here is a good paper detailing many nature based heuristics. If you want to learn more about memetic algorithms read this paper.

# data[].attributes.attachment_link.title
This Week on the STOR-i Programme: Memes

# data[].attributes.attachment_link.description
Before you get excited, it's not the type of memes you are thinking of. I do apologize, however I struggled to find a link between online memes and Statistics and Operational Research except for maybe this one: If you are disappointed, my friend Robyn includes a tweet of the week at the end of each blog post which I'm sure there are plenty of memes there.