Self-learning Fuzzy Discrete Event Systems