{"author":"Melchor Estrada José Luis","modules":[{"children":[{"children":[],"contentMd":"### ¿Qué es un Sistema Inteligente?\n\nUn sistema inteligente es un sistema artificial que opera como un agente, es decir, un sistema que percibe su entorno, actúa sobre él e interactúa con otros agentes, y exhibe un comportamiento racional, es decir, actúa racionalmente para maximizar el éxito de sus tareas y muestra un pensamiento racional (justifica sus decisiones, creencias y acciones mediante razonamiento). Los sistemas inteligentes son proactivos debido a que toman iniciativas o decisiones basadas en los objetivos bajo los cuales se construyeron sin depender exclusivamente de los estímulos externos.\n\n### Tipos de Agentes\n\n- **Agente simple**: Un termostato que regula la temperatura.\n- **Agente complejo**: Un vehículo autónomo que planifica rutas y evita obstáculos.\n- **Agente colaborativo**: Sistemas multiagente en gestión aeroportuaria o transporte público.\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### Características Abstractas de los Sistemas Inteligentes\n\n1. **Operación como agente**: El sistema interactúa con su entorno mediante:\n   - Percepción: Uso de sensores (reales o virtuales) para captar información\n   - Actuación: Ejecución de acciones mediante mecanismos físicos o lógicos\n   - Interacción con otros agentes: Comunicación con humanos o sistemas artificiales\n\n2. **Comportamiento racional**:\n   - Actuar racionalmente: Toma decisiones que maximizan una medida de éxito\n   - Pensar racionalmente: Justifica sus decisiones mediante razonamiento lógico\n\n3. **Capacidad de aprendizaje**:\n   - Aprendizaje basado en desempeño: Mejora su rendimiento con la experiencia\n   - Adquisición de conocimiento: Incorpora nuevas creencias mediante observación\n\n4. **Proactividad**: No espera instrucciones externas para actuar; toma iniciativas basadas en sus objetivos\n\n5. **Adaptabilidad**:\n   - Individual: Ajusta su comportamiento ante cambios en el entorno\n   - Social: Aprende de otros agentes mediante comunicación\n\n6. **Explicabilidad**: Genera justificaciones comprensibles de sus decisiones\n\n7. **Comunicación efectiva**: Usa lenguaje para intercambiar información\n\n8. **Embodiment y situatedness**:\n   - Embodiment: Tiene un \"cuerpo\" (físico o virtual) que interactúa directamente\n   - Situatedness: Opera en tiempo real con interacción continua\n\n9. **Integración de métodos simbólicos y conexionistas**: Combina razonamiento lógico con aprendizaje automático\n\n10. **Consideraciones éticas**: Diseñado para operar de manera justa y segura\n\n#### Características Técnicas\n\n- **Percepción**: Crea representación del mundo para interactuar con el ambiente\n- **Control de acción**: Capacidad de llevar a cabo o interrumpir acciones\n- **Interacción o conectividad**: Comunicación entre elementos mediante lenguaje común\n- **Razonamiento deliberado y social**: Toma decisiones considerando contexto humano\n- **Aprendizaje propio**: Reduce errores y optimiza desempeño mediante experiencia\n- **Identificación**: Reconocimiento automático de información específica\n- **Protección**: Redes y comunicaciones seguras\n- **Gestión remota**: Interacción desde cualquier ubicación\n- **Experiencia de usuario (UX)**: Interfaces accesibles y ajustables\n- **Análisis de datos**: Procesamiento de grandes volúmenes de datos","title":"Introducción a Sistemas Inteligentes"},{"children":[],"contentMd":"### Arquitectura por Capas\n\nEl modelo OSI para sistemas inteligentes organiza la funcionalidad en 7 capas:\n\n**Layer 1 - Things**: Dispositivos, sensores, controladores, etc.\n**Layer 2 - Connectivity/Edge Computing**: Comunicaciones, protocolos, redes, M2M, WiFi, telecom, HW kits\n**Layer 3 - Global Infrastructure**: Infraestructura cloud (pública, privada, híbrida, gestionada)\n**Layer 4 - Data Ingestion**: Big Data, harvest y almacenamiento de datos de \"things\"\n**Layer 5 - Data Analysis**: Reporting, mining, machine learning\n**Layer 6 - Applications**: Custom apps construidas usando datos de \"things\"\n**Layer 7 - People \u0026 Process**: Toma de decisiones transformacional basada en apps y datos de \"things\"\n\n### Funcionamiento del Sistema Inteligente\n\nEl esquema básico de funcionamiento incluye:\n- **Sensores** que captan información del ambiente\n- **Núcleo de Inteligencia** que procesa y decide\n- **Actuadores** que ejecutan acciones\n- **UI** para interacción con usuarios\n- **Agentes Externos** para colaboración","title":"Modelo OSI de Sistemas Inteligentes"},{"children":[],"contentMd":"### Visión Institucional\n\nInstitución educativa particular de mayor tamaño en el país, reconocida como una de las mejores por su calidad e integridad académica, innovación, formación profesional y la competitividad de sus egresados.\n\n### Objetivo General\n\nAplicar los diferentes algoritmos de redes neuronales artificiales, los elementos de la programación lógica y los métodos de representación de conocimiento, para el desarrollo de sistemas de procesamiento y control inteligente.\n\n### Objetivos Particulares\n\n- Identificar y analizar los componentes fundamentales de un sistema inteligente, así como su estructura funcional, para comprender su rol en el procesamiento de información y la interacción con entornos dinámicos.\n- Evaluar la capacidad de los sistemas inteligentes para adaptarse a cambios, optimizar procesos y resolver problemas mediante técnicas como representación de conocimiento, lógica difusa o redes neuronales artificiales, analizando su eficacia en escenarios con restricciones de incertidumbre o datos incompletos.\n- Diseñar sistemas que integren componentes inteligentes (percepción, decisión y acción) con funcionamiento autónomos o semiautónomos, aplicando metodologías de programación y modelos de control, que aborden problemas complejos en entornos reales o simulados.\n\n### Temario\n\n1. Fundamentos de sistemas inteligentes\n2. Representación de conocimientos\n3. Agentes inteligentes\n4. Control convencional\n5. Redes neuronales","title":"Visión y Objetivos de la Materia"}],"shortDescription":"Conceptos básicos, características y funcionamiento de los sistemas inteligentes.","title":"Fundamentos de Sistemas Inteligentes"},{"children":[{"children":[],"contentMd":"### ¿Qué son los Marcos?\n\nEs una forma de organizar la información referente a un objeto, donde se describen las características, eventos, conceptos o valores. Un marco (frame) es una colección de atributos, normalmente llamados ranuras (slots), con valores asociados (y posibles restricciones entre los valores), que describe alguna entidad del mundo. Permiten almacenar procedimientos para obtener información que no está de manera explícita. Fueron propuestos por Minsky en 1975.\n\n### ¿Para qué sirven los marcos?\n\n1. **Modelar conceptos**: Capturan información típica de una categoría\n2. **Herencia de propiedades**: Se organizan en jerarquías y los frames hijos heredan propiedades de los padres\n3. **Slots con flexibilidad**: Cada frame tiene slots (atributos) que pueden organizar el conocimiento con valores por defecto, restricciones y procedimientos adjuntos\n4. **Manejo de excepciones**: Permite anular valores heredados\n5. **Relaciones contextuales**: Los slots pueden apuntar a otros frames creando redes semánticas\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### ¿Cómo se crean los marcos?\n\n1. **Concepto central o evento a modelar**\n2. **Establecer jerarquía o relación**\n3. **Definir slots** (atributos con tipos y valores)\n4. **Especificar herencia y excepciones**\n\n#### Ejemplos de Frames\n\n**Frame: Auto**\n- String marca\n- String modelo\n- Int año\n- String color\n- Motor motor\n- Características características\n\n**Frame: AutoElectrico** (hereda de Auto)\n- String tipoBateria\n- Int autonomiaKm\n\n**Frame: AutoGasolina** (hereda de Auto)\n- float capacidadTanque\n- float consumoLx100Km\n\n**Frame: Motor**\n- String tipo\n- Int potenciaHP\n\n**Frame: Características**\n- Int numeroPuertas\n- String transmision\n- bool tieneAireAcondicionado","title":"Marcos (Frames)"},{"children":[],"contentMd":"### ¿Qué son las Redes Semánticas?\n\nSon grafos orientados que constan de nodos y arcos unidireccionales que representan el conocimiento de forma estructurada y dirigida.\n\n### ¿Para qué sirven?\n\n- Representar de forma estructurada el conocimiento a partir de su relación\n- Interpretar conocimiento en un dominio específico\n- Almacenar información\n- Recuperar información\n- Inferir información\n\nFacilitan la representación del conocimiento en sistemas inteligentes, permitiendo a las máquinas \"entender\" información.\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### Componentes de las Redes Semánticas\n\n1. **Nodos**: Conceptos generalizados o entidades (objetos, atributos, características, situaciones, etc.)\n2. **Arcos**: Relaciones semánticas entre conceptos\n3. **Relaciones**: Entidades que permiten unir los conceptos entre sí\n\n#### Tipos de Relaciones\n\n| Tipo de Relación | Palabras Clave | Términos Técnicos | Ejemplo |\n|-----------------|----------------|-------------------|---------|\n| Jerarquía | es un, tipo de, subcategoría de | Hiponimia/Hiperonimia | **El perro** es un **mamífero** |\n| Parte-Todo | parte de, compuesto por, contiene | Meronimia/Holonimia | **La rueda** es parte del **coche** |\n| Funcionalidad | sirve para, función de, utilizado para | Relación funcional | **El martillo** sirve para **clavar** |\n| Causalidad | causa, provoca, genera, efecto de | Relación causal | **La lluvia** provoca **inundaciones** |\n| Asociación | relacionado con, vinculado a, asociado a | Relación semántica | **El café** asociado a **la cafeína** |\n| Atributo | propiedad de, característica de, tiene | Atribución | **El oro** tiene **brillo** |\n| Secuencia | antes de, después de, siguiente paso | Relación temporal | **Desayunar** antes de **trabajar** |\n| Similitud | similar a, como, análogo a | Analogía | **El corazón** similar a **una bomba** |\n| Contraste | diferente de, opuesto a, versus | Antonimia | **Frío** opuesto a **calor** |\n| Dependencia | requiere, depende de, necesita | Condicionalidad | **La fotosíntesis** requiere **luz** |\n\n#### Proceso de Generación\n\n1. Definir dominio y alcance\n2. Identificar nodos fundamentales\n3. Establecer relaciones jerárquicas\n4. Establecer relaciones no jerárquicas\n5. Refinar y validar conceptos","title":"Redes Semánticas"},{"children":[],"contentMd":"### ¿Qué es la Lógica Proposicional?\n\nEs una rama de la lógica clásica que estudia las variables proposicionales o sentencias lógicas, sus posibles implicaciones, evaluaciones de verdad y en algunos casos su nivel absoluto de verdad. Algunos autores también la identifican con la lógica matemática o la lógica simbólica, ya que utiliza una serie de símbolos especiales que lo acercan al lenguaje matemático.\n\n### Proposiciones\n\nUna oración que es verdadera o falsa, pero no ambas, se llama una **proposición**. Las proposiciones se enuncian en forma declarativa (y no como pregunta, orden, exclamación, etcétera).\n\n**Ejemplos de proposiciones:**\n- \"Los únicos enteros positivos que dividen a 7 son 1 y el mismo 7\"\n- \"Para todo entero positivo n, existe un número primo mayor que n\"\n- \"La Tierra es el único planeta en el universo que tiene vida\"\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### Conectores Lógicos\n\n**Conjunción (p ∧ q)**: \"p y q\"\n- Tabla de verdad: Solo verdadera cuando ambas son verdaderas\n- Conectores: y, además de, también, así como, pero, e\n\n**Disyunción Inclusiva (p ∨ q)**: \"p o q\" (pueden ser ambas)\n- Tabla de verdad: Solo falsa cuando ambas son falsas\n- Conectores: o, o bien, u\n\n**Disyunción Exclusiva (p ⊕ q)**: \"p o q\" (solo una puede ser verdadera)\n- Tabla de verdad: Falsa cuando ambas tienen el mismo valor\n- Conectores: o, o bien, u, o…o\n\n**Negación (¬p)**: \"no p\"\n- Tabla de verdad: Invierte el valor de verdad\n- Conectores: no, nunca, ni, jamás, es falso, no es cierto\n\n**Condicional (p → q)**: \"si p entonces q\"\n- Tabla de verdad: Solo falsa cuando p es verdadera y q es falsa\n- Conectores: Si…, entonces, se sigue, por tanto, se infiere\n\n**Bicondicional (p ↔ q)**: \"p si y solo si q\"\n- Tabla de verdad: Verdadera cuando ambas tienen el mismo valor\n- Conectores: si y sólo si, entonces y solo entonces, es idéntico\n\n#### Precedencia de Operadores\n\nEn orden de evaluación:\n1. ¬ (negación)\n2. ∧ (conjunción)\n3. ∨ (disyunción)\n4. → (condicional)\n5. ↔ (bicondicional)\n\n#### Reglas de Producción\n\nSon un método procedural de representación del conocimiento que representa y soporta las relaciones inferenciales de un algoritmo. Es una proposición lógica que relaciona 2 o más objetos e incluye 2 partes:\n- **Premisa**: Condición que debe cumplirse\n- **Conclusión**: Acción o resultado que se deriva\n\nSe usan en sistemas expertos para inferencia lógica, utilizando \"si\" y \"entonces\".\n\n**Ejemplo - Reglas de un Cajero:**\n- Si Tarjeta = verificada y Fecha = no expirada y NIP = correcto → Pago = autorizado\n- Si Tarjeta = no verificada → Pago = no autorizado\n- Si Fecha = expirada → Pago = no autorizado","title":"Lógica Proposicional"},{"children":[],"contentMd":"### Modelos de Representación del Conocimiento: El Cerebro de la IA\n\n#### Arquitectura I: El Sistema Experto (Enfoque Lógico)\n\n- **Base de Conocimientos**: Reglas lógicas estables y ontologías estrictas.\n- **Motor de Inferencia**: Procesa lógica deductiva (si-entonces).\n- **Interfaz / Explicador**: Provee la solución con trazabilidad total.\n\nTradicional y altamente determinista. Emula decisiones humanas mediante reglas estrictas. Ideal para diagnósticos donde la precisión, predictibilidad y trazabilidad lógica son indispensables.\n\n#### Arquitectura II: IoT y Objetos Inteligentes (Enfoque Físico)\n\nInteligencia distribuida de abajo hacia arriba. Convierte objetos cotidianos (sistemas embebidos) en nodos de una red. Utiliza arquitecturas débilmente acopladas para percibir y reaccionar descentralizadamente en el entorno físico.\n\n#### Arquitectura III: Agentes LLM (Enfoque Probabilístico)\n\nSistemas basados en grandes modelos de lenguaje que integran razonamiento, memoria y herramientas. Utilizan arquitecturas como ReAct (Reasoning + Acting) y Tree of Thoughts (ToT) para planificar y ejecutar tareas complejas.\n\n#### Matriz de Evaluación Arquitectónica\n\n| Aspecto | Sistemas Expertos | Redes IoT | Agentes LLM |\n|---------|-------------------|-----------|-------------|\n| Tipo de Razonamiento | Deductivo (Reglas Rígidas) | Reactivo y Distribuido | Probabilístico y Adaptativo |\n| Entorno Operativo | Estructurado / Estático | Físico / Tiempo Real | No Estructurado / Ambigüo |\n| Base de Conocimiento | Ontologías Inyectadas | Telemetría Dinámica | Pre-entrenamiento y Vectores |\n| Flexibilidad y Escala | Baja (Frágil fuera de dominio) | Media (Alta integración) | Alta (Composición dinámica) |\n\nNinguna arquitectura es superior por definición. La ingeniería de sistemas moderna radica en elegir el modelo mental correcto para las restricciones del entorno.\n\n#### Fases del Bucle Cognitivo\n\n- **Percepción**: Interfaces con el mundo.\n- **Procesamiento y Memoria a Largo Plazo**: El procesamiento asíncrono y la memoria dual permiten retener contexto histórico y buscar información por significado, habilitando la Generación Aumentada por Recuperación (RAG).\n\n#### Preguntas Clave sobre Arquitecturas\n\n1. ¿Cuáles son las fases del bucle cognitivo de un sistema inteligente?\n2. ¿Cuál fase del bucle cognitivo está enfocada en organizar y recordar el conocimiento?\n3. ¿Qué es la memoria episódica?\n4. ¿Qué es la memoria semántica?\n5. ¿Cuáles son las fases del patrón ReAct?\n6. ¿Qué es el razonamiento ToT?\n7. ¿Qué es una base de conocimientos en un sistema inteligente?\n8. ¿Cuál es la arquitectura de un sistema experto?\n9. ¿Qué es el motor de inferencia de un sistema inteligente?\n10. ¿Cuál es el objetivo del módulo de explicación en un sistema inteligente?\n11. ¿Por qué una arquitectura IoT es una inteligencia distribuida?\n12. ¿Qué es una arquitectura agentica?\n13. ¿Por qué el futuro de los sistemas inteligentes es ecosistémico?","title":"Arquitecturas de Sistemas Inteligentes"}],"shortDescription":"Métodos y técnicas para representar conocimiento en sistemas inteligentes.","title":"Representación del Conocimiento"},{"children":[{"children":[],"contentMd":"### Concepto de Sistema\n\nUn sistema es una colección de dispositivos, procesos o algoritmos de computadora que operan sobre un valor de entrada x(t) para producir una salida y(t) (sistema dinámico). Un sistema está integrado por una serie de elementos que actúan conjuntamente y que cumplen un cierto objetivo.\n\n### Sistema de Control\n\nLos sistemas de control están formados por un conjunto de dispositivos de diversa naturaleza (mecánicos, eléctricos, electrónicos, neumáticos, hidráulicos) cuya finalidad es controlar el funcionamiento de un proceso.\n\n**Componentes:**\n- Variables de entrada\n- Variables de salida\n- Variables de control\n- Perturbaciones\n\nEl objetivo del control es conseguir, mediante la manipulación de las variables de control, un dominio sobre las variables de salida, de modo que estas alcancen unos valores prefijados (set-point).\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### Partes de un Sistema de Control\n\n- **Actuador**: Dispositivo que ejecuta las acciones de control\n- **Sensor**: Dispositivo que mide las variables del proceso\n- **Controlador**: Elemento que toma decisiones basado en las mediciones\n- **Punto de ajuste**: Valor deseado para la variable controlada\n\n#### Tipos de Variables\n\n- **Perturbaciones**: Variables externas que afectan el sistema\n- **Variables controladas**: Variables que se desean mantener en valores específicos\n- **Variables de control**: Variables manipuladas para lograr el control\n- **Variables medidas**: Variables que se monitorean mediante sensores\n\n#### Estrategias de Control\n\n**Lazo Abierto**:\n- No utiliza retroalimentación\n- La salida no afecta la acción de control\n- Ejemplo: Tostador de pan con temporizador\n\n**Lazo Cerrado**:\n- Utiliza retroalimentación de la salida\n- La salida afecta la acción de control\n- Ejemplo: Control de temperatura con termostato\n\n#### Sensores vs Actuadores\n\n| Característica | Sensor | Actuador |\n|----------------|---------|----------|\n| Función principal | Detectar cambios físicos/químicos | Convertir señales en acción física |\n| Entrada | Magnitudes físicas (temperatura, luz) | Señales eléctricas/neumáticas/hidráulicas |\n| Salida | Señal eléctrica/digital | Movimiento, fuerza, calor, sonido |\n| Ejemplos | Termopar, fotoresistor, acelerómetro | Motor, válvula solenoide, relé |\n| Tiempo respuesta | Rápido (ms-us) | Variable (ms para eléctricos, segundos para térmicos) |","title":"Bases de Sistemas y Control"},{"children":[],"contentMd":"### Controladores Básicos\n\n**CONTROLADOR ON/OFF**: Es el tipo más elemental de sistema de control, caracterizado por su simplicidad y efectividad en aplicaciones donde la precisión no es crítica.\n\n**CONTROLADOR PROPORCIONAL (P)**: Ajusta la señal de salida en proporción directa al error para mejorar el control.\n\n**CONTROLADOR INTEGRAL (I)**: Se centra en eliminar el error en estado estacionario al integrar el error a lo largo del tiempo.\n\n**CONTROLADOR DERIVATIVO (D)**: Actúa sobre la tasa de cambio del error para estabilizar el sistema y mitigar las oscilaciones.\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### Control PID\n\nEl controlador PID combina tres acciones de control:\n\n**Término Proporcional (P)**:\n- Responde al error presente\n- Genera salida proporcional a la magnitud del error\n- Aplica acción correctiva inmediata\n\n**Término Integral (I)**:\n- Aborda errores persistentes o desviaciones a largo plazo\n- Acumula el error a lo largo del tiempo\n- Elimina errores en estado estacionario\n\n**Término Derivativo (D)**:\n- Anticipa cambios futuros en el error\n- Evalúa la tasa de cambio del error\n- Amortigua oscilaciones y estabiliza el sistema\n\n#### Funcionamiento del Control PID\n\n**Salida de Control**: Es la suma de los términos proporcional, integral y derivativo.\n\n**Ajuste de Entrada**: La salida de control se aplica como entrada al sistema que se está controlando, ajustando parámetros como posiciones de válvulas, velocidades de motores o elementos de calefacción.\n\n**Bucle de Retroalimentación**: La variable de proceso se mide continuamente y se retroalimenta al controlador, cerrando el bucle de control.\n\n#### Implementación\n\nLos controladores PID están disponibles como instrumentos dedicados, pero comúnmente se integran con **Controladores Lógicos Programables (PLC)** en sistemas de automatización y control industrial. Los PLC son dispositivos programables que controlan y monitorean procesos industriales, mientras que los controladores PID son algoritmos de control especializados.","title":"Tipos de Controladores"},{"children":[],"contentMd":"### Evolución hacia el Control Inteligente\n\nLos avances en **inteligencia artificial (IA) y aprendizaje automático (ML)** están revolucionando los sistemas de control, incluidos los controladores PID. Los algoritmos PID basados en IA pueden aprender de los datos, predecir el comportamiento del sistema y optimizar los parámetros de control en tiempo real, lo que conduce a estrategias de control más robustas y adaptativas.\n\n---\n### Contenido Adicional (versión 1.2)\n\n#### Características del Control Inteligente\n\n**Aprendizaje Adaptativo**:\n- Los sistemas aprenden de la experiencia\n- Optimizan parámetros en tiempo real\n- Se adaptan a cambios en el proceso\n\n**Predicción y Anticipación**:\n- Predicen el comportamiento futuro del sistema\n- Anticipan perturbaciones\n- Toman acciones preventivas\n\n**Integración con Redes Neuronales**:\n- Combinan control PID tradicional con redes neuronales\n- Las redes proporcionan correcciones derivativas\n- Mejoran el rendimiento en sistemas no lineales\n\n#### Arquitecturas de Sistemas de Control Distribuido (DCS)\n\nLos controladores PID están transitando hacia **Sistemas de Control Distribuido (DCS)**, donde múltiples controladores se comunican y colaboran dentro de un ecosistema en red.\n\n**Componentes típicos de DCS**:\n- **Control Room**: Centro de supervisión y control\n- **Network Interface**: Interconexión entre componentes\n- **Controller**: Unidades de control distribuidas\n- **Operator Interface**: Interfaces de operador\n- **Sensors y Actuators**: Dispositivos de campo\n\n**Ventajas de DCS**:\n- Mayor confiabilidad (fallos localizados)\n- Escalabilidad modular\n- Flexibilidad en expansión\n- Mantenimiento simplificado\n\n#### Aplicaciones de IA en Control\n\n- **Redes Neuronales Online**: Proporcionan correcciones en tiempo real\n- **Algoritmos de Optimización**: Ajustan parámetros PID automáticamente\n- **Sistemas de Predicción**: Anticipan comportamientos del proceso\n- **Control Adaptativo**: Se ajusta a cambios en las dinámicas del sistema","title":"Control Inteligente"}],"shortDescription":"Fundamentos de sistemas de control convencionales e inteligentes.","title":"Sistemas de Control"},{"children":[{"children":[],"contentMd":"### ¿Qué es inteligencia artificial?\n\nEs una rama de la ciencia enfocada en crear sistemas y dispositivos que imiten las capacidades del ser humano como la percepción, aprendizaje y el razonamiento. La IA busca imitar la inteligencia humana en los sistemas permitiéndoles aprender y razonar para que tomen decisiones autónomas mediante el análisis de datos, identificación de patrones y la aplicación de reglas que resuelvan problemas y se adapten al contexto humano.\n\n**Relación entre IA, Machine Learning y Deep Learning:**\n\n- **IA**: Combinación de algoritmos planteados con el propósito de crear máquinas que presenten las mismas capacidades que el ser humano.\n- **Machine Learning**: Rama de la Inteligencia artificial (IA) que estudia cómo dotar a las máquinas de capacidad de aprendizaje.\n- **Deep Learning**: Algoritmo automático jerárquico que emula el aprendizaje humano con el fin de obtener ciertos conocimientos.\n\n### Deep Learning\n\nEl Aprendizaje Profundo (Deep Learning) consiste en un subconjunto de algoritmos de Machine Learning utilizados para modelar abstracciones de alto nivel, por medio de arquitecturas compuestas de transformaciones no lineales. Utiliza un enfoque iterativo para revisar los datos y llegar a conclusiones. Se utiliza para tareas de procesamiento más complejas que los sistemas de aprendizaje supervisado. Las redes neuronales son los algoritmos insignia de estas técnicas de análisis de información.\n\n### Ventajas y desventajas del Deep Learning\n\n**Ventajas:**\n- Modelos robustos y tolerantes a fallas\n- Tienen una altísima plasticidad y gran adaptabilidad\n- Pueden manejar información difusa, con ruido o inconsistente\n- Procesan la información en paralelo\n- Pueden trabajar en sistemas no lineales\n- Flexibles, se ajustan a nuevos ambientes de aprendizaje\n- Aprenden de ejemplos\n\n**Limitaciones:**\n- No se puede identificar claramente el mecanismo con el cual han resuelto un problema\n- No existe una metodología para establecer tipo de red, cantidad de neuronas de capa escondida y cantidad de capas escondidas\n- Modelos pueden resultar difíciles de entender\n\n### La Neurona Biológica\n\nEl cuerpo neuronal, las dendritas y los axones. Los potenciales de acción y la transmisión sináptica. La ley del todo o nada. La bomba de sodio-potasio y la sinapsis.\n\n### La Neurona Artificial\n\nUnidad de procesamiento de la información con entradas ponderadas, sumadas y comparadas con un umbral, y una función de transferencia no lineal que proporciona una única salida. Las redes neuronales artificiales son un modelo computacional basado en neuronas biológicas que contiene un conjunto de unidades fundamentales (neuronas) conectadas entre sí para transmitir señales.\n\n**Partes de una neurona artificial:**\n- Conjunto de entradas\n- Pesos sinápticos\n- Función de activación o transferencia\n- Sesgo o error (bias)\n\n**Funciones de activación comunes:**\n\n- **ReLU**: \\( f(x) = \\max(0, x) \\)\n- **Sigmoide**: \\( f(x) = \\frac{1}{1 + e^{-x}} \\)\n- **Tanh**: \\( f(x) = \\frac{e^x - e^{-x}}{e^x + e^{-x}} \\)\n- **Escalón**: \\( f(x) = 1 \\text{ si } x \u003e 0, 0 \\text{ en otro caso} \\)\n\n**Propósito de las funciones de activación:**\n1. Permiten modelar relaciones no lineales\n2. Definen el comportamiento de las neuronas\n3. Permiten el aprendizaje con gradientes (diferenciabilidad)\n4. Controlan la salida y su interpretación según el problema\n\n**Arquitecturas comunes:**\n- Perceptrón simple\n- Perceptrón multicapa (MLP)\n- Red de base radial (RBF)\n- Red neuronal recurrente (RNN) – LSTM - Hopfield\n- Redes neuronales convolucionales (CNN)\n- Redes neuronales antagónicas (GAN)\n\n**Proceso de aprendizaje:**\n- Supervisado\n- No supervisado\n- Por refuerzo\n\n**Entrenamiento de una red neuronal:**\n1. Iniciar la red con valores aleatorios de los pesos y bias.\n2. Para cada observación de entrenamiento calcular el error que comete la red al hacer sus predicciones. Promediar los errores de todas las observaciones.\n3. Identificar la responsabilidad que ha tenido cada peso y bias en el error de la predicción.\n4. Modificar ligeramente los pesos y bias de la red (de forma proporcional a su responsabilidad en el error) en la dirección correcta para que se reduzca el error.\n5. Repetir los pasos 2, 3, y 4.\n\nEn muchas redes neuronales se requiere la combinación de múltiples métodos matemáticos para alcanzar un porcentaje adecuado de efectividad, en específico el algoritmo de backpropagation y la optimización por descenso del gradiente.","title":"Introducción a la IA y Redes Neuronales"},{"children":[],"contentMd":"### ¿Qué son las Redes de Hopfield?\n\nLas Redes de Hopfield pertenecen a un grupo especial de redes, llamadas redes recursivas o recurrentes, que se empezaron a desarrollar a principios de los 80. Son muy apropiadas para simulación de memorias asociativas. De esta forma, al introducir un patrón de entrada, la información se propaga hacia adelante y hacia atrás, produciéndose una dinámica. En algún momento, la evolución se detendrá en algún estado estable. En otros casos, es posible que la red no se detenga nunca.\n\n### Características\n\n- **Neuronalmente inspirada**: Cada neurona está conectada con todas las demás (excepto consigo misma).\n- **Pesos simétricos**: Las conexiones entre neuronas tienen pesos iguales en ambas direcciones (\\( w_{ij} = w_{ji} \\)).\n- **Recurrente**: La salida de la red puede influir en su entrada en el siguiente paso.\n- **Memoria estable**: Cada patrón almacenado es un mínimo de energía y, por tanto, un \"recuerdo\" al que la red puede regresar.\n- **Binaria**: Cada neurona tiene dos posibles estados: activada (+1) o desactivada (-1).\n\n### Arquitectura\n\nUna red de Hopfield con N neuronas tiene conexiones entre todas las neuronas (excepto autoconexiones). Los pesos son simétricos y se almacenan mediante la regla de Hebb.\n\n### Funcionamiento\n\n#### Función de energía\n\nLa red evoluciona bajando una función de energía que garantiza que el sistema llegará a un estado estable. Esta energía se define como:\n\n\\[ E = -\\frac{1}{2} \\sum_{i \\neq j} w_{ij} s_i s_j \\]\n\ndonde \\( s_i \\) y \\( s_j \\) son los estados de las neuronas i y j, y \\( w_{ij} \\) es el peso de la conexión entre ellas. La red busca automáticamente minimizar esta energía.\n\n#### Ejemplo\n\nSupón que una red aprendió la siguiente imagen binaria de 9 píxeles:\n```\n1 1 1\n1 -1 1\n1 1 1\n```\nSi luego le das una imagen con algunos errores:\n```\n1 1 1\n1 -1 -1\n1 1 1\n```\nLa red detectará la \"intención\" del patrón y corregirá el error, devolviendo la imagen original.\n\n### Aplicaciones\n\n- **Reconocimiento de patrones**: Capacidad de identificar patrones incluso si están incompletos o con ruido (como dígitos, letras o imágenes binarias).\n- **Memoria asociativa**: Se usan como un modelo de memoria en el que se puede recordar un patrón completo a partir de una parte del mismo (modelo cognitivo).\n- **Corrección de errores**: Pueden recuperar datos binarios originales (por ejemplo, en comunicaciones digitales) si estos se han corrompido levemente.\n- **Optimización combinatoria**: Se pueden aplicar a problemas como el problema del viajante (TSP), satisfaciendo restricciones mediante minimización de energía.\n- **Bioinformática**: Se han usado para resolver problemas como el alineamiento de secuencias de ADN, donde se busca la mejor coincidencia entre cadenas genéticas.\n\n### Entrenamiento\n\n- **Modo asincrónico**: Actualizas una neurona a la vez, calculando hi sólo con los estados actuales y cambiando si inmediatamente.\n- **Modo síncrono**: Calculas todo el vector H = S × W y luego actualizas simultáneamente todos los estados con la función signo.\n\n### Capacidad de almacenamiento\n\nLa red de Hopfield tiene una capacidad de almacenamiento limitada (aproximadamente 0.15 × N, donde N es el número de neuronas). Si se sobrecarga con demasiados patrones, pueden aparecer estados espurios: configuraciones que no corresponden a ningún patrón entrenado.","title":"Redes de Hopfield"},{"children":[],"contentMd":"### Algoritmo backpropagation\n\nLa retropropagación (backpropagation en inglés) es un algoritmo utilizado en las redes neuronales artificiales supervisadas. Ajusta los pesos de las conexiones entre las neuronas, con el fin de reducir el error en la predicción de un modelo. El objetivo de la retropropagación es minimizar una función de error o función de costo que mide la diferencia entre la salida real y la salida esperada.\n\nLa retropropagación funciona propagando el error hacia atrás a través de la red neuronal, comenzando por la capa de salida y retrocediendo hacia las capas ocultas. Para cada capa, se calcula la contribución relativa de cada neurona a la función de costo, y se utilizan estas contribuciones para ajustar los pesos de las conexiones.\n\n### Regla de la cadena\n\nLa retropropagación se basa en la regla de la cadena de la derivada. Permite calcular la tasa de cambio de una función compuesta en términos de las tasas de cambio de sus componentes individuales. La regla de la cadena se utiliza para calcular la contribución de cada neurona a la función de costo, en función de sus entradas y de los pesos de las conexiones que la conectan con las capas siguientes.\n\n### Pasos del algoritmo\n\n#### Propagación hacia adelante\n\n1. **Entrada de datos**: Se introduce un vector de entrada \\( \\mathbf{x} = [x_1, x_2, \\dots, x_n] \\) en la red.\n2. **Cálculo en la capa oculta**: Para cada neurona \\( j \\) en la primera capa oculta:\n   - Se calcula la entrada neta \\( (z_j) \\) como una combinación lineal de las entradas con los pesos \\( (w_{ji}) \\) y el sesgo \\( (b_j) \\):\n     \\[ z_j = \\sum_i (w_{ji} \\cdot x_i) + b_j \\]\n   - Se aplica una función de activación \\( (\\sigma) \\) a \\( z_j \\) para introducir no linealidad:\n     \\[ a_j = \\sigma(z_j) \\]\n   - Las funciones de activación comunes son ReLU, sigmoide o tanh.\n3. **Propagación a capas posteriores**: El proceso se repite para cada capa oculta subsiguiente, usando como entrada las activaciones \\( (a_j) \\) de la capa anterior.\n4. **Salida de la red (capa de salida)**: En la última capa, se calcula la salida \\( \\hat{y} \\) (predicción):\n   \\[ \\hat{y} = \\sigma_{\\text{output}}(z_{\\text{output}}) \\]\n   La función de activación de salida depende del problema: regresión lineal (identidad), clasificación binaria (sigmoide), clasificación multiclase (softmax).\n5. **Cálculo de la pérdida (loss)**: Se compara la salida \\( \\hat{y} \\) con la etiqueta verdadera \\( y \\) usando una función de pérdida \\( (L) \\):\n   - Error cuadrático medio (MSE) para regresión:\n     \\[ L = \\frac{1}{2}(y - \\hat{y})^2 \\]\n   - Entropía cruzada (Cross-Entropy) para clasificación:\n     \\[ L = -\\sum y \\log(\\hat{y}) \\]\n\n#### Propagación hacia atrás (Backpropagation)\n\n1. **Gradiente con respecto a la salida \\( \\hat{y} \\)**:\n   \\[ \\frac{\\partial L}{\\partial \\hat{y}} = \\hat{y} - y \\]\n\n2. **Derivada de \\( \\hat{y} \\) respecto a \\( z_{\\text{out}} \\)** (usando sigmoide):\n   \\[ \\frac{\\partial \\hat{y}}{\\partial z_{\\text{out}}} = \\hat{y}(1 - \\hat{y}) \\]\n\n3. **Cálculo de error en la capa de salida** (multiplicando las dos derivadas anteriores):\n   \\[ \\delta_{\\text{out}} = (\\hat{y} - y) \\cdot \\hat{y}(1 - \\hat{y}) \\]\n\n4. **Gradiente del peso en la salida**:\n   Supón que el peso \\( w_{kj} \\) conecta la neurona \\( j \\) de la capa oculta con la salida. Entonces:\n   \\[ \\frac{\\partial L}{\\partial w_{kj}} = \\delta_{\\text{out}} \\cdot a_j \\]\n\n5. **Propagar el error hacia la capa oculta**:\n   Para cada neurona oculta \\( j \\), con salida \\( a_j = \\sigma(z_j) \\):\n   \\[ \\delta_j = \\delta_{\\text{out}} \\cdot w_{kj} \\cdot \\sigma(z_j)(1 - \\sigma(z_j)) \\]\n\n6. **Gradientes de los pesos de la capa oculta**:\n   Para el peso \\( w_{ji} \\) que conecta la entrada \\( a_i \\) con la neurona oculta \\( j \\):\n   \\[ \\frac{\\partial L}{\\partial w_{ji}} = \\delta_j \\cdot a_i \\]\n\n### Actualización de pesos (Descenso del gradiente)\n\nLa regla de actualización de un peso en una red neuronal, usando descenso del gradiente, es:\n\n\\[ w_{ji} := w_{ji} - \\eta \\cdot \\frac{\\partial L}{\\partial w_{ji}} \\]\n\ndonde \\( \\eta \\) es la tasa de aprendizaje (learning rate).\n\n### Conclusiones\n\n- Backpropagation permite entrenar redes neuronales ajustando los pesos y sesgos a través del cálculo de gradientes, basándose en la regla de la cadena del cálculo diferencial.\n- Cada neurona calcula su propio error local, el cual depende de la derivada de la función de activación y del error de las capas posteriores, lo que permite una actualización personalizada de los parámetros.\n- La derivada de la función de activación es esencial, ya que modula el impacto del error sobre los pesos.\n- El algoritmo se ejecuta en múltiples ciclos (épocas), repitiendo los pasos de propagación hacia adelante y hacia atrás, hasta que la red minimiza el error de predicción sobre los datos de entrenamiento.","title":"Algoritmo de Backpropagation"},{"children":[],"contentMd":"### Entrenamiento del Perceptrón Simple\n\nEl perceptrón simple es la unidad básica de una red neuronal. Su entrenamiento consiste en ajustar los pesos y el bias para que el modelo clasifique correctamente los patrones de entrada.\n\n**Configuración inicial:**\n- Entradas: \\( x_1, x_2 \\) (y un bias \\( x_0 = 1 \\)).\n- Pesos iniciales: \\( w_0 \\) (bias), \\( w_1, w_2 \\) (aleatorios o cero).\n- Función de activación: Escalón (Step):\n  \\[ y = \\begin{cases} 1 \u0026 \\text{si } \\sum w_i x_i \\geq 0 \\\\ 0 \u0026 \\text{si } \\sum w_i x_i \u003c 0 \\end{cases} \\]\n- Tasa de aprendizaje \\( \\eta \\): Ejemplo \\( \\eta = 0.25 \\).\n\n**Algoritmo de entrenamiento:**\n1. Inicializar pesos (aleatorios o cero).\n2. Para cada época:\n   a. Para cada patrón de entrada \\( (x_1, x_2) \\):\n      - Calcular salida: \\( z = w_0 \\cdot 1 + w_1 \\cdot x_1 + w_2 \\cdot x_2 \\)\n      - Obtener \\( y = \\text{escalón}(z) \\)\n      - Calcular error: \\( e = t - y \\) (t es la salida deseada)\n      - Actualizar pesos: \\( w_i = w_i + \\eta \\cdot e \\cdot x_i \\)\n   b. Si el error total es 0 (o máximo de épocas), terminar.\n\n### Ejemplo: Compuerta AND\n\n**Entradas y salidas esperadas:**\n\n| x1 | x2 | t (AND) |\n|----|----|---------|\n| 0  | 0  | 0       |\n| 0  | 1  | 0       |\n| 1  | 0  | 0       |\n| 1  | 1  | 1       |\n\n**Pesos iniciales:** \\( w_0 = -0.5, w_1 = 0.7, w_2 = 0.2 \\), \\( \\eta = 0.25 \\).\n\n**Época 1:**\n1. (0,0) → z = -0.5 → y = 0, error = 0 → no cambia.\n2. (0,1) → z = -0.3 → y = 0, error = 0 → no cambia.\n3. (1,0) → z = 0.2 → y = 1, error = -1 → actualizar: \\( w_0 = -0.75, w_1 = 0.45, w_2 = 0.2 \\)\n4. (1,1) → z = -0.1 → y = 0, error = 1 → actualizar: \\( w_0 = -0.5, w_1 = 0.7, w_2 = 0.45 \\)\n\n**Época 2:**\n1. (0,0) → z = -0.5 → y = 0, error = 0\n2. (0,1) → z = -0.05 → y = 0, error = 0\n3. (1,0) → z = 0.2 → y = 1, error = -1 → actualizar: \\( w_0 = -0.75, w_1 = 0.45, w_2 = 0.45 \\)\n4. (1,1) → z = 0.15 → y = 1, error = 0\n\n**Época 3:**\n1. (0,0) → z = -0.75 → y = 0\n2. (0,1) → z = -0.3 → y = 0\n3. (1,0) → z = -0.3 → y = 0\n4. (1,1) → z = 0.15 → y = 1\n\n**Pesos finales:** \\( w_0 = -0.75, w_1 = 0.45, w_2 = 0.45 \\)\nEcuación: \\( z = -0.75 + 0.45 x_1 + 0.45 x_2 \\)\n\n### Observaciones sobre el perceptrón\n\n- **Bias**: Ajusta el umbral de activación haciendo posible la elección de los valores para la predicción.\n- **Linealmente separable**: Si los datos son linealmente separables, el perceptrón converge (AND, OR, NAND, NOR).\n- **Limitaciones**: No puede resolver problemas no linealmente separables (ej. XOR).\n\n### Código en Python\n\nEl perceptrón puede implementarse fácilmente en Python usando bibliotecas como NumPy para realizar los cálculos vectorizados.\n\n### Conclusiones del Perceptrón\n\n- El perceptrón es la base de las redes neuronales modernas, pero tiene limitaciones.\n- El entrenamiento depende críticamente de hiperparámetros (tasa de aprendizaje y épocas).\n- La interpretación de métricas es clave para evaluar el modelo.\n- Visualizar la frontera de decisión ayuda a entender si el modelo está aprendiendo patrones válidos.\n- Introduce conceptos fundamentales: aprendizaje supervisado, importancia del bias, gradiente descendente.","title":"Perceptrón Simple"}],"shortDescription":"Fundamentos, arquitecturas y algoritmos de redes neuronales.","title":"Redes Neuronales Artificiales"}],"name":null,"schemaVersion":2,"version":"2.0"}
