This repository contains a collection of implementations related to Artificial Intelligence, developed as part of the UNAM AI course. The included projects address fundamental concepts such as intelligent agents, fuzzy logic, and search and decision-making algorithms in the context of games.
Content
Implementations of different types of agents, each with a particular decision-making strategy:
SimpleReactiveAgent:
garbage collector
: Simulates an agent that collects waste.smart light
: Controls the on/off of lights based on stimuli.vacuum cleaner
: A vacuum cleaner agent that cleans specific spaces.vending machine
: Distributes products based on stimuli.
ModelBasedAgent:
traffic management
: An agent that manages traffic flow.vending machine
: Improved version that incorporates internal state for informed decisions.
Fuzzy logic system that assesses financial risk for car insurance customers:
- Input variables: Age (Young, Adult, Senior) and Driving Percentage (Low, Medium, High).
- Fuzzy Rules: Evaluate combinations of age and experience to determine risk.
- Defuzzification: Convert the fuzzy result into a precise value representing the level of risk.
Examples of search algorithms for decision making in adversarial and real-time games:
- Minimax and Alpha-Beta Pruning: Adversarial search algorithms applied to zero-sum games such as chess.
- Real-Time Decision Making: Algorithms for real-time decisions, suitable for fast-reaction games such as Space Invaders.