Monday, April 29, 2013

JAVA: Genetic Algorithms {Week 12}


Chapter Nine in our text book, Nature of Code, the author discusses 3 strategies to implement genetic algorithm theories in software.  
  • The traditional computer science method
  • Interactive selection
  • Ecosystem simulation   

From my understanding, these theories are used mostly in the research side of the computing field, especially in AI and evolutionary computation.   After our class trip to ORNL last week, I imagine that most of the fields using the super computers also use evolutionary computation somewhere in their research. 



I think the fact that this chapter was my favorite chapter in the whole book, is a strong indication that I would have a lot of fun working on a team doing simulations in astrophysics at ORNL.  Or maybe in their brand new 3-D visualization lab…..  If I could just keep my head out of those clouds.  **Sigh**  

My Project for WEEK 12:  Sexy Lady Creator

Method:  Interactive Selection

Heredity and Variation:  Value ranges assigned by me (using the Nature of Code algorithm)

Selection:  "Fitness" levels are chosen by the user (after all, beauty is in the eye of the beholder)




Existing Variables:
Body Curvature
Body Height
Breast Radius
Smile Curvature
Smile Length

Other Possible Variables:
Eye Size/Color
Eye lashes
Lip thickness
Hair length/Color/Thickness
Skin Color
Personality

Notes:
This project was inspired by several subjects I have studied over the past few years including, Art History, Psychology, Statistics, and (obviously) Programming.  The basic idea I was forming with this project was an application that could be used for fun or to gather data on what people perceive as beauty.  The idea of gathering data on people's opinions of beauty is nothing new, but for some reason it never seems to get boring.   Maybe because the variables seem to change with every culture and generation.  I have read studies where scientists use pictures of real faces to survey what we think is attractive - based on overall measurements or bone structure.

My project is quite different, mainly because I use basic shapes that are "drawn" and merely imply a female figure.   I chose to use the female figure for this project (in my class of ALL guys) in hopes that I would get extra credit for the use of boobs.  :)  HaHa.  An application like this could have a much wider range of use though.  The basic concept of organizing shapes and lines in a way that is aesthetically pleasing is useful in every industry - architecture, marketing, advertising (print and web), manufacturing - people want to see beautiful things.  In my project, I was trying to focus more specifically on figuring out what design elements are aesthetically pleasing in animation.  Considering the recent reports that the global animation industry pulled in over $222 Billion last year, a fully developed application of this kind could be useful.   

I haven't done much research yet on the animation industry, but I'm sure there are studies out there on what users find pleasing in animation.  I have heard that eyes are a major factor in animation.... In fact, even Dr. Doofenshmirtz tried to use his "Big Sad Eye Inator" to rule the tri-state area in this Phineas and Ferb episode.   Here's a clip of the show for anyone who is not familiar with this hilarious series...



  

2 comments:

  1. We don't actually use genetic algorithms too much on the supercomputers and many projects don't even know what they are. I used one as part of my MS thesis and I know of a few machine learning folks that use them, but on the whole most of the work done on the supercomputers is matrix algebra.

    ReplyDelete
  2. Hey, thanks for the comment! :) That's interesting to know. PSTCC has a MatLab class for 4 yr. transfer students - is that what you use?

    ReplyDelete