Cultural algorithms are one of the evolutionary algorithms that benefit from genetic algorithm features such as social screening based on their eligibility and emphasis on search optimization in the parameter space instead of problem space to achieve an elite society with the desired features besides of applying a new feature called cultural component on social screening approach which consists of two parts, “influence of population on culture” , “making a cultural component” which tries to improve evolutionary algorithms. The proposed algorithm aims to increase performance of cultural algorithms by contextualizing a new algorithm about “improve the dietary tastes of people” in bedding of communications between people and chefs and scoring the highest desired food recipes between chefs communities. This algorithm is a customized cultural algorithm that can compete well besides classic cultural algorithms to solve constrained optimization problems.
This is my Final Project in undergraduate level under supervising of Dr. Mina Zolfy.
first of all, classic form of Cultural Algorithms were implemented in MATLAB, which is accessible in "first_implementation" directory.
then ,"Yummy_Recipe" algorithm which is an enhanced kind of classical cultural algorithm were implemented in order to achieve more efficient results without loosing any kind of time or memory complexity.
You need to have python 2.7 binaries to execute the GUI and the algorithm. to run the algorithm simply run this command in "~\Final_B.Sc_Project\second_and_probably_last\Yummy_Recipe" Directory :
python Yummy_Recipe.py
it would run the whole thing. datasets were embedded in the Recipes directory and configuring the adjustments is designed to be very straight forward.
Comprehensive report file included in "second_and_probably_last" directory (in Persian); and everything is under MIT license. feel free to contribute !