This paper presents an on-line multi-stage sorting algorithm capable of adapting to different populations. The sorting algorithm selects on-line the most appropriate classifier and feature subsets for the incoming population. The sorting algorithm includes two levels, a low level for population detection and a high level for classifier selection which incorporates feature selection. Population detection is achieved by an on-line unsupervised clustering algorithm that analyzes product variability. The classifier selection uses n fuzzy kNN classifiers, each trained with different feature combinations that function as input to a fuzzy rule-based decision system. Re-training of the n fuzzy kNN classifiers occurs when the rule based system cannot assign an existing classifier with high confidence level. Classification results for synthetic and real world databases are presented.