Refactoring for inverse reinforcement method. Utilizing IProblem class as blackboard to communicate between the agent (behaviors) and the artificial intelligence.