An investigation of clustering algorithms and soft computing approaches for pattern recognition