at work i ended up writing code that is able to detect words that are similar and detect their meaning and cluster them into groups of n clusters 
it sure is! i used genetic algorithm as well as k-means and neural netwroking