Divided the satisfy-purpose substate into 3 substates: learning-event, dialog-event, action-event