Los sistemas expertos son aplicaciones informáticas capaces de resolver problemas que requieren un gran conocimiento sobre un tema específico, imitando las actividades de resolución de problemas de los humanos expertos. Existen varios tipos de sistemas expertos, incluyendo los de diseño, control, monitoreo e recuperación de información. Un sistema experto se basa en conocimiento declarativo sobre los hechos y situaciones de un dominio, así como conocimiento de control sobre cómo seguir los pasos para resolver problemas.