This paper examines agent-based systems designed for a variety of human learning tasks. These are typically split into two areas: "training", which generally refers to adult learning of job-related skills, frequently but not exclusively in military settings; and "education", which generally refers to child and adult learning in academic settings, including primary and secondary schools, colleges and universities. While the terms may indicate diverse areas within the field of human learning, from the standpoint of agent-based systems development, many of the more prominent issues are held in common; as well, these issues can be generalized to most interactive agent-based environments. Here, we categorize three major trends in development of agents to assist human learners: pedagogical agents, peer learning agents and demonstrating agents. We highlight recent work within each of these categories, bringing to light common themes and issues. Categories and Subject Desc...