Knowledge Discovery Algorithm