basic AI architecture