# Glossary

**Controller**: A skill agent that makes decisions based on programmed algorithms. Also called a programmed skill agent.

**Decisions**: The outputs of a AMESA system - its instructions for controlling the system

**Design patterns**: Common structures that can be used to quickly create multi-agent systems

**Episode**: An entire run through the task

**Functional Pattern**: A machine teaching design pattern used to orchestrate skills in sequences

**Iteration**: One decision during agent training or performance

**Learned skill agent**: A skill agent that uses DRL to make decisions and learn by practicing in simulation

**Orchestration**: Arranging agents as modular building blocks to work together to complete tasks

**Orchestrator**: A special type of skill agent that assigns decision-making control to the right decision-making skill agent based on current conditions

**Perceptor**: An ML model or other algorithm that interprets sensor data

**Plan-Execute Pattern**: A machine teaching design pattern used to orchestrate skill agents in pairs that work together to make decisions

**Programmed skill agent**: A skill agents that makes decisions based on programmed algorithms. Also called controllers.

**Project**: A collection of agents for the same use case that share the same simulator and top-level goal

**Scenarios**: Conditions that are associated with specific skills

**Sensors**: The part of the system that takes in information from the simulator or real environment - the eyes, ears, and other senses of the system

**Simulator**: The virtual environment where agents practice and improve performance

**Skill agents**: Modules within a multi-agent system that make decisions to complete all or part of a task

**Strategy Pattern**: A machine teaching design pattern used to orchestrate skill agents in hierarchies

**Teacher**: An algorithm that creates a skill agent that uses DRL to learn to make decisions
