E-book

Guía de IA con agentes para MATLAB y Simulink

Introducción: IA con agentes para MATLAB y Simulink

La IA generativa continúa evolucionando la forma en que interactuamos con equipos informáticos. Solicitar a un LLM que resuelva un problema de ingeniería solía implicar copiar y pegar código, corregir errores manualmente y esperar que la IA comprendiera el dominio. Los sistemas de IA que pueden razonar, actuar y ejecutar flujos de trabajo de MATLAB y Simulink de manera autónoma generan un mayor impacto. La IA con agentes permite lograrlo.

Esta guía muestra cómo crear sistemas de IA que ofrecen soluciones y las ejecutan. Puede conectar un LLM a MATLAB y Simulink a través de Model Context Protocol (MCP) y los nuevos conjuntos de herramientas asistidos por agentes. Esto permite crear agentes de IA capaces de escribir código, crear modelos, ejecutar simulaciones, analizar resultados y realizar iteraciones hasta completar la tarea.

Tres cuadros que representan la progresión desde la IA generativa a la IA generativa más herramientas hasta la IA con agentes.

Evolución desde la IA tradicional basada en chat a la IA con agentes totalmente autónoma.


Del chat a la acción: Por qué usar IA con agentes

Si ha usado ChatGPT® o Claude® para obtener ayuda con código de MATLAB, ya sabe cómo funcionan: hace una pregunta, obtiene código, lo pega en MATLAB, encuentra un error, vuelve al chat, explica el error, obtiene código nuevo y repite el proceso. Funciona bien, pero es lento y frustrante.

La IA con agentes resuelve este problema.

IA sin agentes

 

IA con agentes

Genera fragmentos de código bajo demanda

Escribe código y lo ejecuta directamente

Requiere copiar, pegar y ejecutar código manualmente

Realiza iteraciones hasta que la tarea esté concluida

Requiere que un usuario interprete errores y formule consultas de seguimiento

Detecta errores y los corrige automáticamente

No tiene acceso a archivos o datos

Tiene acceso al área de trabajo y sus datos

No se puede verificar si el código funciona bien

Entrega resultados que se pueden probar

Características que convierten a un chatbot en su colega

La IA sin agentes funciona como un consultor que genera informes. La IA con agentes funciona como un colega que realiza tareas. La IA resuelve problemas, muestra resultados y pregunta si desea realizar cambios.

Característica Significado Ejemplo en MATLAB
Razonamiento Divide problemas complejos en pasos "Para optimizar este controlador, primero analizaré la planta, luego diseñaré un controlador PID y, finalmente, lo ajustaré".
Planificación Secuencia acciones orientadas a un objetivo "Paso 1: Cargar datos. Paso 2: Entrenar modelo. Paso 3: Validar. Paso 4: Exportar."
Uso de herramientas Llama a funciones y API externas Llama a trainnet, sim o funciones personalizadas de MATLAB
Adaptación Aprende de retroalimentación y errores "Esto generó un error; comprobaré las dimensiones e intentaré de nuevo."

Por qué combinar MATLAB, Simulink y IA con agentes

MATLAB y Simulink son excepcionalmente valiosos para la IA con agentes en ingeniería y ciencias porque ofrecen:

  • Diseño basado en modelos: Permite crear, simular y probar sistemas complejos antes de desplegarlos
  • Prestaciones de simulación: Se integra con Simulink para realizar pruebas y verificaciones en nivel de sistema
  • Conocimiento especializado: Ofrece más de 100 toolboxes para procesamiento de señales, control, Deep Learning y mucho más
  • Herramientas profesionales: Incluye funciones integradas de análisis, visualización y despliegue de código
  • Cálculo fiable: Los LLM alucinan con matemática. MATLAB realiza cálculos correctamente.

Model Context Protocol

Para que un LLM pueda usar MATLAB, necesita descubrir qué herramientas están disponibles, llamarlas con los parámetros correctos y recibir los resultados. MCP ofrece exactamente esto: un marco estándar para la interacción de IA con herramientas. Piense en MCP como un puerto USB-C para IA: así como USB-C permite que cualquier dispositivo se conecte a cualquier periférico, MCP permite que cualquier modelo de IA se conecte a cualquier herramienta, incluidos MATLAB y Simulink.

Diagrama de flujo de tres pasos que ilustra un agente de IA conectado a un servidor MCP, conectado a MATLAB.

Arquitectura de MCP: conexión entre agentes de IA y MATLAB.

El servidor MCP realiza la traducción entre las solicitudes de IA y la ejecución de MATLAB. El agente de IA decide qué hacer. MATLAB realiza el cálculo.

Instalación

Descargue MATLAB MCP Core Server desde GitHub:

# Clone the repository
git clone https://github.com/matlab/matlab-mcp-core-server

# Follow setup instructions for your AI client
# (Claude Desktop, VS Code with Copilot, Gemini CLI, etc.)

MCP Core Server proporciona la conexión básica. Simulink Agentic Toolkit la amplía con funcionalidades específicas para trabajar con modelos. Tanto MATLAB Agentic Toolkit como Simulink Agentic Toolkit sirven de base a este protocolo.


MATLAB Agentic Toolkit

MATLAB Agentic Toolkit es un paquete gratuito y de código abierto disponible en GitHub que proporciona a los agentes de codificación con IA conocimiento especializado de MATLAB y una conexión activa a una sesión local de MATLAB. El conjunto de herramientas combina dos componentes: MATLAB MCP Core Server y un conjunto de skills de agentes especialmente seleccionado.

Agente de IA que utiliza MATLAB Agentic Toolkit para comparar diseños de filtros FIR en la app Filter Analyzer.

Un agente de IA utiliza MATLAB Agentic Toolkit para comparar diseños de filtros FIR en la app Filter Analyzer.

Componentes de apps: MCP Core Server y skills de agentes

MATLAB MCP Core Server

MCP Core Server proporciona a cualquier agente compatible con MCP acceso directo a MATLAB que se ejecuta en su equipo. El servidor ofrece cinco herramientas integradas:

Herramienta

Descripción

evaluate_matlab_code

Ejecuta código de MATLAB y devuelve la salida en la ventana de comandos.

run_matlab_file

Ejecuta un archivo de programa de MATLAB.

run_matlab_test_file

Ejecuta pruebas mediante runtests y devuelve resultados estructurados de éxito/error.

check_matlab_code

Realiza un análisis estático utilizando Code Analyzer.

detect_matlab_toolboxes

Enumera la versión de MATLAB instalada y las toolboxes disponibles.

El servidor también proporciona dos recursos MCP que funcionan como documentación especialmente seleccionada para sistemas de IA que utilizan el servidor MCP. El recurso matlab_coding_guidelines enseña a la IA prácticas recomendadas de codificación en MATLAB. plain_text_live_code_guidelines explica cómo generar scripts en vivo de texto plano. El agente de IA referencia automáticamente estos recursos cuando es necesario.

Skills de agentes

Las skills de agentes son archivos de instrucciones basados en Markdown que enseñan a los agentes de IA prácticas de ingeniería específicas de MATLAB. No son librerías de código, sino prompts estructurados que guían el comportamiento del agente.

Se pueden invocar explícitamente (por ejemplo, con /creating-live-scripts en Claude Code) o activar de forma pasiva cuando el agente reconoce una tarea pertinente.

Las skills de agentes proporcionan a los agentes de IA conocimientos detallados que no han aprendido como parte de su entrenamiento. Permiten al agente de IA resolver problemas complejos de ciencias e ingeniería de manera más rápida, robusta y económica.

Las skills proporcionadas por el conjunto de herramientas para agentes están evolucionando rápidamente. Puede encontrar las skills disponibles en el catálogo de skills

Instalación y configuración

Requisitos:

  • MATLAB R2020b o posterior
  • Agente de codificación con IA compatible
  • Git

Flujo de configuración:

  1. Clone el repositorio MATLAB Agentic Toolkit desde GitHub.
  2. Abra el agente de codificación con IA en la carpeta del repositorio.
  3. Solicite al agente que "configure el conjunto de herramientas".
  4. La skill de configuración se encarga del resto: detecta la instalación local de MATLAB, instala el servidor MCP y lo registra en el agente.

El servidor MCP recibe actualizaciones aproximadamente cada dos semanas. Extraiga periódicamente la actualización más reciente del repositorio para mantenerse al día.

Flujo de trabajo con agentes

Una vez que el conjunto de herramientas está activo, el agente puede leer, escribir, ejecutar, probar y analizar código de MATLAB sin necesidad de copiar y pegar. Flujo de trabajo típico:

  1. El usuario describe una tarea en lenguaje natural.
  2. El agente escribe código de MATLAB utilizando su conocimiento de las convenciones de MATLAB (basadas en skills y directrices de codificación).
  3. El agente ejecuta código a través del servidor MCP y lee los resultados.
  4. Si se produce un error, el agente depura, modifica y vuelve a ejecutar, iterando hasta que la tarea esté concluida.
  5. El usuario revisa los resultados finales.

Flujo de trabajo estructurado: Investigar, Planificar, Implementar (RPI)

Para proyectos más amplios, un enfoque estructurado funciona mejor:

  • Investigar: El agente genera un documento de requisitos del producto (PRD) a partir de un prompt. El usuario itera mediante preguntas y material de referencia.
  • Planificar: El agente genera un plan, PLAN.md y una tarea TASKS.md, detallando el enfoque de implementación paso a paso.
  • Implementar: Las tareas se ejecutan paso a paso, haciendo una pausa para corregir el rumbo antes de continuar.

Este enfoque estructurado transforma la codificación con agentes de impredecible a controlable. Los documentos de planificación evitan la pérdida de contexto y mantienen alineado el comportamiento del agente a lo largo de sesiones prolongadas.

Conceptos básicos de seguridad

  • Limite el acceso del agente a la carpeta específica del proyecto.
  • Utilice Git para garantizar la transparencia y facilitar la reversión de cambios.
  • Revise todo el código, los comandos y las operaciones de archivo generados.
  • Evite proporcionar datos confidenciales o sujetos a normativas a los agentes de codificación.
  • Utilice servidores de MCP y skills de confianza.

El conjunto de herramientas funciona con cualquier agente que admite MCP, como Claude Code, GitHub Copilot® y OpenAI Codex™. La configuración es específica para cada agente, pero sigue el mismo patrón: apuntar la configuración MCP del agente a MATLAB MCP Core Server. La skill de configuración automatiza este proceso en cada plataforma compatible.


Simulink Agentic Toolkit

Simulink Agentic Toolkit incorpora la IA con agentes al diseño basado en modelos. Mientras que MATLAB Agentic Toolkit proporciona a los agentes acceso a la ejecución de código, Simulink Agentic Toolkit proporciona a los agentes acceso estructurado a los modelos de Simulink, su arquitectura, señales, parámetros y comportamiento de simulación.

Simulink Agentic Toolkit es un repositorio de GitHub que se basa en MATLAB MCP Core Server. El conjunto de herramientas añade herramientas de MCP y skills de agentes específicas para Simulink y el diseño basado en modelos.

Imagen del Simulink Agentic Toolkit.

Herramientas de MCP de Simulink y skills de agentes

Además de las herramientas disponibles en MATLAB MCP Core Server, el conjunto de herramientas añade herramientas específicas de Simulink para leer la estructura del modelo, editar bloques y conexiones, realizar consultas de parámetros y ejecutar simulaciones. Las herramientas específicas ayudan a un agente a examinar la jerarquía de un modelo, inspeccionar los elementos necesarios y realizar modificaciones específicas.

Las skills del conjunto de herramientas utilizan esas herramientas para ejecutar flujos de trabajo recomendados para tareas comunes utilizando el diseño basado en modelos. Cada skill incorpora suficiente contexto de ingeniería para que el agente siga patrones establecidos para la tarea en lugar de establecer el flujo de trabajo desde cero cada vez.

Simulink Agentic Toolkit se actualiza de forma regular. Para obtener una lista actualizada de herramientas y skills, consulte el repositorio de GitHub.

Instalación y configuración

Para obtener instrucciones de instalación, pasos de configuración y agentes admitidos, consulte el repositorio de GitHub de Simulink Agentic Toolkit.

El archivo README del repositorio explica la configuración de cada agente admitido y se mantiene actualizado con cada versión del producto.

Gestión de requisitos con agentes de IA

Uno de los principales usos del conjunto de herramientas es la ingeniería de requisitos. Un agente de IA puede:

  • Redactar requisitos preliminares a partir de descripciones en lenguaje natural o documentación existente
  • Vincular cada requisito con elementos del modelo que lo implementan
  • Mantener la trazabilidad a medida que los diseños evolucionan
  • Generar matrices de trazabilidad que pongan de manifiesto las deficiencias de cobertura

Estas prestaciones reducen la carga de documentación manual que a menudo ralentiza los proyectos. El agente propone; el ingeniero revisa y aprueba.

Implementación de diseños

Los agentes pueden modificar modelos existentes o crear nuevos sistemas a partir de especificaciones. Los tipos de modelos admitidos son:

  • Diagramas de bloques de Simulink (modelos estándar de flujo de señales)
  • Gráficos de Stateflow (máquinas de estados y lógica de decisión)
  • Modelos de Simscape (sistemas físicos: térmicos, eléctricos, mecánicos, hidráulicos)
  • Arquitecturas de System Composer (modelos de arquitectura en nivel de sistema)

El flujo de trabajo recomendado consta de un ciclo de cinco pasos:

Paso

Acción

Descripción

1

Proponer

El agente redacta contenido en lenguaje natural: arquitectura, ecuaciones, parámetros.

2

Aprobar

El usuario revisa y realiza iteraciones sobre la propuesta.

3

Generar

El agente escribe scripts de implementación utilizando herramientas específicas de Simulink.

4

Ejecutar

El servidor MCP ejecuta el código con el modelo en vivo.

5

Confirmar

El usuario valida los resultados en Simulink.

Ejemplo: Simulación de frenado térmico

En esta publicación en blog de Simulink Agentic Toolkit, Guy Rouleau explica cómo construir un modelo térmico de freno de disco a través del ciclo proponer/aprobar/generar/ejecutar/confirmar. Le solicita al agente: "Elabora un plan para crear una simulación del comportamiento térmico de los frenos de disco típicos en un automóvil sedán estándar".

El agente produce dos documentos de especificación que cubren la arquitectura del sistema, las ecuaciones de transferencia térmica para la almohadilla y el disco, así como el entorno, diagramas de componentes y una lista completa de parámetros. Después de tres rondas de iteración en la arquitectura (eventualmente ampliando el alcance para abarcar un modelo longitudinal simple del vehículo), el agente genera el modelo completo de Simulink.

El agente crea pruebas de subsistemas en nivel de componente y escenarios de conducción en lazo cerrado, implementados en Simulink Test Manager. El flujo de trabajo completo, desde el prompt inicial hasta el modelo validado, sigue el ciclo de cinco pasos sin necesidad de construir manualmente del modelo.

Simulación, pruebas y verificación

El conjunto de herramientas admite un ciclo completo de verificación:

  • Ejecuta simulaciones, gestiona la configuración y realiza ejecución paralela
  • Reproduce problemas detectados mediante casos de prueba e identificación de causas raíz
  • Escribe pruebas utilizando Simulink Test
  • Propone correcciones y vuelve a ejecutar la prueba para su verificación

De ese modo, los ingenieros se enfocan en interpretar resultados en lugar de gestionar la logística de la configuración.

Ingeniería de sistemas basada en modelos (MBSE)

Para los grupos de trabajo que utilizan MBSE, el conjunto de herramientas soporta el marco RFLP completo: Requisitos y arquitectura Funcional, Lógica y Física.

Con Simulink Agentic Toolkit, System Composer y Requirements Toolbox, un agente puede:

  • Crear y gestionar requisitos vinculados con elementos de arquitectura
  • Construir modelos de arquitectura funcional, lógica y física
  • Generar diccionarios de interfaces y estereotipos
  • Generar vistas analíticas y conjuntos de asignación

El objetivo es el prototipado rápido de los artefactos iniciales del sistema, liberando el esfuerzo de ingeniería para la resolución de problemas importantes en lugar de tareas de configuración rutinarias.

El ingeniero mantiene el control

Simulink Agentic Toolkit está diseñado para que ingenieros supervisen los resultados. Cada prestación sigue el mismo principio: el agente propone, el ingeniero decide.

Sugerencias prácticas

  • Audite las skills personalizadas para detectar conflictos con las prestaciones del conjunto de herramientas. Las instrucciones superpuestas pueden hacer que los agentes recurran a métodos menos eficientes.
  • Cuando un agente utiliza un enfoque no óptimo, rediríjalo explícitamente a las herramientas específicas de Simulink.
  • Solite al agente que proporcione los documentos de planificación y las especificaciones de diseño antes de la ejecución, de modo que las decisiones de diseño se establezcan con anticipación.
  • Limite el trabajo a segmentos manejables que el agente pueda gestionar de manera más fiable.

Crear agentes de IA eficaces

Puede crear agentes utilizando código de MATLAB con LLM, MATLAB y MATLAB MCP HTTP Client. Los agentes proporcionan funciones de MATLAB para conectarse a los LLM (por ejemplo, una API compatible con OpenAI o modelos en Ollama™) y llamar a herramientas de MCP externas. Existen múltiples patrones que pueden implementarse para construir flujos de trabajo con agentes.

Patrón 1: ReAct (razonar + actuar)

El patrón de agente más común alterna entre pensar y actuar. El LLM piensa sobre el siguiente paso a realizar, ejecuta una acción, observa el resultado y repite el proceso.

% ReAct loop pattern 
while ~taskComplete 
    % Thought: LLM reasons about next step 
    thought = generate(chat, [context, "What should I do next?"]); 
     
    % Action: Execute tool if needed 
    if needsTool(thought) 
        result = executeTool(thought.tool_call); 
        context = [context; result]; 
    end 
     
    % Observation: Update state based on results 
    taskComplete = checkCompletion(context); 
end 

Patrón 2: Encadenamiento de herramientas

Las tareas complejas requieren llamadas a múltiples herramientas en secuencia. La salida de una herramienta se convierte en la entrada de la siguiente.

Paso Acción Propósito
1 Generar código La IA escribe código de MATLAB en base a una solicitud.
2 Analizar código Comprueba si hay errores, problemas de estilo y posibles fallos.
3 Ejecutar código Ejecuta código en MATLAB y captura la salida.
4 Evaluar resultados La IA revisa la salida, y confirma que es correcta o corrige los errores.

Patrón 3: Human-in-the-loop

Para aplicaciones críticas en materia de seguridad, añada pasos de aprobación:

% Human-in-the-loop pattern 
proposedAction = generate(chat, query); 
 
% Display proposed action for approval 
fprintf("Proposed: %s\n", proposedAction.description); 
approval = input("Approve? (y/n): ", "s"); 
 
if strcmp(approval, "y") 
    result = executeAction(proposedAction); 
else 
    disp("Action cancelled."); 
end 

Guía práctica

Estas directrices sirven como clave para garantizar la fiabilidad de los agentes:

  • Comience de manera sencilla: Asegúrese de que una sola herramienta funcione correctamente antes de crear cadenas complejas.
  • Añada observabilidad: Registre cada llamada a LLM y ejecución de la herramienta ya que lo necesitará durante la depuración.
  • Gestione errores: Los LLM cometen errores. Implemente lógica de reintento con retroceso exponencial.
  • Establezca límites: Limite el número de iteraciones, el presupuesto de tokens y las herramientas a las que puede acceder un agente.
  • Realice pruebas de forma adversaria: Pruebe deliberadamente los casos límite para detectar fallos en el agente antes de que lleguen a usuarios.