Applying both positive and negative selection to supervised learning for anomaly detection