L’IA générative continue de transformer notre manière d'interagir avec les ordinateurs. Demander à un grand modèle de langage de résoudre un problème d'ingénierie signifie habituellement copier le code d'un point à un autre, corriger les erreurs manuellement et espérer que l'IA comprenne votre domaine. L’impact le plus important provient des systèmes d'IA capables de raisonner, d'agir et d'exécuter de manière autonome des workflows MATLAB et Simulink. L'IA agentique permet cette transition.
Ce guide vous montre comment construire des systèmes d’IA capables de proposer des solutions et de les exécuter. En connectant les LLM à MATLAB et Simulink, via le Model Context Protocol (MCP) et les nouveaux toolkits agentiques, vous pouvez créer des agents IA qui écrivent du code, créent des modèles, exécutent des simulations, analysent les résultats et effectuent des itérations jusqu'à l’obtention du résultat.
Si vous avez utilisé ChatGPT® ou Claude® pour vous aider avec du code MATLAB, vous connaissez la procédure : poser une question, obtenir du code, le coller dans MATLAB, rencontrer une erreur, revenir sur le chat, expliquer l'erreur, obtenir un nouveau code, et ainsi de suite. Cela fonctionne, mais c'est lent et frustrant.
L'IA agentique boucle cette boucle.
IA non-agentique |
IA agentique |
|
Génère des extraits de code sur demande |
→ |
Écrit du code et l’exécute directement |
Nécessite que vous copiez, colliez et exécutiez le code manuellement |
→ |
Effectue des itérations jusqu'à ce que la tâche soit terminée |
Compte sur vous pour interpréter les erreurs et poser des questions complémentaires |
→ |
Détecte les erreurs et les corrige automatiquement |
N'a pas accès à vos fichiers ou données |
→ |
Accède à votre espace de travail et à vos données |
Impossible de vérifier si le code fonctionne |
→ |
Fournit des résultats opérationnels que vous pouvez tester |
Quatre capacités qui transforment un chatbot en collègue
L'IA non-agentique, c’est comme avoir un consultant qui rédige des rapports. L'IA agentique, c’est comme avoir un collègue qui fait le travail. L'IA résout le problème, vous montre les résultats et vous demande si vous souhaitez des modifications.
| Capacité | Ce que cela signifie | Exemple MATLAB |
|---|---|---|
| Raisonnement | Décompose les problèmes complexes en étapes | « Pour optimiser ce contrôle, j'analyserai d'abord le système physique, puis je concevrai un PID, ensuite je le réglerai. » |
| Planification | Séquence des actions vers un objectif | « Étape 1 : Charger les données. Étape 2 : Entraîner le modèle. Étape 3 : Valider. Étape 4 : Exporter. » |
| Utilisation des outils | Appelle des fonctions et des API externes | Invoque les fonctions MATLAB trainnet, sim ou personnalisées |
| Adaptation | Apprend des commentaires et des erreurs | « Cela a généré une erreur ; permettez-moi de vérifier les dimensions et d'essayer de nouveau. » |
Pourquoi combiner MATLAB et Simulink avec l'IA agentique ?
MATLAB et Simulink sont particulièrement précieux pour l'IA agentique en ingénierie et en sciences car ils offrent :
- Approche Model-Based Design : Concevoir, simuler et tester des systèmes complexes avant leur déploiement.
- Capacités de simulation : Connectez-vous à Simulink pour le test et la vérification au niveau système.
- Expertise sectorielle : Plus de 100 toolboxes pour le traitement du signal, le contrôle, le Deep Learning, et bien plus encore.
- Outils professionnels : Capacités intégrées d'analyse, de visualisation et de déploiement du code.
- Calcul fiable : Les grands modèles de langage ont tendance à halluciner les mathématiques ; MATLAB les traite correctement.
Pour qu'un LLM puisse utiliser MATLAB, il doit disposer d'un moyen pour découvrir les outils disponibles, les appeler avec les bons paramètres et recevoir les résultats. Le MCP offre exactement cela : un cadre standard pour l'interaction entre l'IA et les outils. Considérez le MCP comme un port USB-C pour l’IA : tout comme l'USB-C permet à tout équipement de se connecter à n'importe quel périphérique, le MCP permet à tout modèle d'IA de se connecter à n'importe quel outil, y compris MATLAB et Simulink.
Le serveur MCP assure la traduction entre les requêtes d'IA et l'exécution MATLAB. L'agent IA décide de ce qu'il faut faire ; MATLAB effectue les calculs.
Installation
Téléchargez MATLAB MCP Server sur GitHub :
# Clone the repository git clone https://github.com/matlab/matlab-mcp-server # Follow setup instructions for your AI client # (Claude Desktop, VS Code with Copilot, Gemini CLI, etc.)
MCP Server propose la connexion fondamentale ; Simulink Agentic Toolkit l'étend avec des capacités spécifiques au modèle. Les deux, MATLAB Agentic Toolkit et Simulink Agentic Toolkit, reposent sur ce protocole.
Pour poursuivre l’exploration
MATLAB Agentic Toolkit est un package gratuit et open-source disponible sur GitHub qui offre aux agents de codage IA une connaissance experte de MATLAB ainsi qu'une connexion en direct à une session MATLAB locale. Le toolkit combine deux composants : MATLAB MCP Server et un ensemble sélectionné de compétences d'agents.
Un agent IA utilisant MATLAB Agentic Toolkit pour comparer des designs de filtres FIR dans l'application Filter Analyzer.
Deux composants : MCP Server et compétences d’agent
MATLAB MCP Server
MCP Server offre à tout agent compatible MCP un accès direct à MATLAB fonctionnant sur votre machine. Le serveur propose cinq outils intégrés :
| Outil | Ce que cela signifie |
evaluate_matlab_code |
Exécutez du code MATLAB et renvoyez la sortie de la fenêtre de commande. |
run_matlab_file |
Exécutez un fichier de programme MATLAB. |
run_matlab_test_file |
Exécutez les tests via runtests avec des résultats structurés de réussite/échec. |
check_matlab_code |
Effectuez une analyse statique à l'aide de Code Analyzer. |
detect_matlab_toolboxes |
Listez la version de MATLAB installée ainsi que les toolboxes. |
Le serveur propose également deux ressources MCP qui fonctionnent comme une documentation spécifiquement conçue pour les systèmes d'IA utilisant le serveur MCP. La ressource matlab_coding_guidelines enseigne à l'IA les bonnes pratiques de codage MATLAB, tandis que plain_text_live_code_guidelines explique à l'IA comment générer des live scripts en texte brut. L'agent IA référence automatiquement ces ressources lorsque cela est nécessaire.
Compétences d'agent
Les compétences des agents sont des fichiers d'instructions basés sur Markdown qui enseignent aux agents IA des pratiques d'ingénierie spécifiques à MATLAB. Ce ne sont pas des bibliothèques de code ; ce sont des prompts structurés qui guident le comportement de l'agent.
Les compétences peuvent être invoquées explicitement (par exemple, /creating-live-scripts dans Claude Code) ou activées passivement lorsque l'agent reconnaît une tâche pertinente.
Les compétences des agents fournissent aux agents IA des connaissances détaillées qu'ils n'ont pas acquises dans le cadre de leur formation. Ces compétences permettent à l'agent IA de résoudre des problèmes approfondis en sciences et en ingénierie de manière plus rapide, robuste et économique.
Les compétences fournies par le toolkit agentique évoluent rapidement. Vous pouvez trouver les compétences actuellement disponibles dans le Catalogue des compétences.
Installation et configuration
Configuration requise :
- MATLAB R2020b ou version ultérieure
- Un agent de codage IA supporté
- Git
Configurer le workflow :
- Clonez le dépôt MATLAB Agentic Toolkit depuis GitHub.
- Ouvrez votre agent de codage IA dans le dossier du dépôt.
- Demandez à l'agent de « configurer la toolkit ».
- La compétence d'installation gère le reste : détecter l'installation locale de MATLAB, installer le serveur MCP et l'inscrire auprès de l'agent.
Le serveur MCP reçoit des mises à jour environ toutes les deux semaines. Actualisez régulièrement le dépôt avec la dernière mise à jour pour rester à jour.
Le workflow agentique en action
Une fois le toolkit activé, l'agent peut lire, écrire, exécuter, tester et analyser du code MATLAB sans avoir à copier-coller. Workflow typique :
- Vous décrivez une tâche en langage naturel.
- L'agent rédige du code MATLAB en utilisant sa connaissance des conventions MATLAB (influencée par ses compétences et les directives de codage).
- L'agent exécute le code via le serveur MCP et lit les résultats.
- Si quelque chose échoue, l'agent effectue le débuggage, modifie et relance, en itérant jusqu'à ce que la tâche soit accomplie.
- Vous examinez le résultat final.
Workflow structuré : Recherche, Planification, Implémentation (RPI)
Pour les projets de grande envergure, une approche structurée fonctionne bien :
- Recherche : L'agent produit un document de spécifications produit (DSP) à partir de votre demande. Vous effectuez des itérations avec des questions de clarification et des documents de référence.
- Plan : L'agent génère un
PLAN.mdet unTASKS.mdphasé, décrivant l'approche d'implémentation étape par étape. - Implémenter : Exécution des tâches étape par étape, avec des pauses, pour ajuster si nécessaire avant de continuer.
Cette approche structurée transforme le codage agentique d'imprévisible en contrôlable. Les documents de planification ancrent le comportement de l'agent tout au long de longues sessions et empêchent la dérive du contexte.
Principes fondamentaux de sécurité
- Limiter l'accès de l'agent au dossier spécifique du projet.
- Utiliser Git pour assurer la transparence et faciliter le retour en arrière.
- Examiner tout le code généré, les commandes et les opérations sur les fichiers.
- Éviter de transmettre des données confidentielles ou réglementées aux agents de codage.
- Utiliser des serveurs MCP fiables et des compétences éprouvées.
Le toolkit fonctionne avec tout agent qui supporte MCP, y compris Claude Code, GitHub Copilot®, et OpenAI Codex™. La configuration est spécifique à l'agent mais suit le même schéma : pointer les paramètres MCP de l'agent vers MATLAB MCP Server. La compétence d'installation automatise cela pour chaque plateforme supportée.
Le Simulink Agentic Toolkit étend l'écosystème d'IA agentique à l'approche Model-Based Design. Alors que le MATLAB Agentic Toolkit offre aux agents un accès à l'exécution de code, le Simulink Agentic Toolkit donne aux agents un accès structuré aux modèles Simulink, y compris leur architecture, leurs signaux, leurs paramètres et leur comportement de simulation.
Simulink Agentic Toolkit est un dépôt GitHub qui s'appuie sur MATLAB MCP Server. Le toolkit ajoute des outils MCP et des compétences d'agent spécifiques à Simulink et à l'approche Model-Based Design.
Outils MCP Simulink et compétences des agents
En plus des outils disponibles dans MATLAB MCP Server, le toolkit ajoute des outils spécifiques à Simulink pour la lecture de la structure du modèle, l'édition des blocs et des connexions, l'interrogation des paramètres et l'exécution des simulations. Les outils dédiés aident un agent à naviguer dans la hiérarchie d'un modèle, à inspecter ce dont il a besoin et à effectuer des modifications ciblées.
Les compétences du toolkit utilisent ces outils pour exécuter les workflows recommandés pour les tâches courantes en utilisant l'approche Model-Based Design. Chaque compétence capture suffisamment de contexte d'ingénierie pour que l'agent suive des schémas établis pour la tâche plutôt que de devoir élaborer le workflow à partir de zéro à chaque fois.
Simulink Agentic Toolkit est mis à jour régulièrement. Pour la liste actuelle des outils et compétences, veuillez consulter le dépôt GitHub.
Installation et configuration
Pour les instructions d'installation, y compris les agents supportés et les étapes de configuration, veuillez consulter le dépôt GitHub de Simulink Agentic Toolkit.
Le fichier README du dépôt explique la configuration pour chaque agent supporté et reste à jour avec chaque version.
Gestion des exigences avec des agents IA
L'un des cas d'utilisation les plus solides du toolkit est l'ingénierie des exigences. Un agent IA peut :
- Rédiger des exigences à partir de descriptions en langage naturel ou de documentation existante
- Relier chaque exigence aux éléments du modèle qui l'implémentent
- Maintenir la traçabilité à mesure que les designs évoluent
- Générer des matrices de traçabilité montrant les lacunes de couverture
Ces capacités réduisent la charge de documentation manuelle qui ralentit souvent les projets. L'agent propose ; l'ingénieur examine et approuve.
Implémentation du design
Les agents peuvent modifier des modèles existants ou créer de nouveaux systèmes à partir de spécifications. Les types de modèles supportés incluent :
- Schémas bloc Simulink (modèles standard de flux de signaux)
- Les diagrammes Stateflow (machines à états et logique de décision)
- Modèles Simscape (systèmes physiques : thermique, électrique, mécanique, hydraulique)
- Architectures System Composer (modèles d'architecture au niveau système)
Le workflow recommandé suit un cycle en cinq étapes :
Étape |
Action |
Description |
1 |
Proposer |
L'agent rédige du contenu en langage naturel : architecture, équations, paramètres. |
2 |
Approuver |
Vous examinez et effectuez des itérations sur la proposition. |
3 |
Générer |
L'agent rédige des scripts d'implémentation en utilisant des outils spécifiques à Simulink. |
4 |
Exécuter |
Le serveur MCP exécute le code sur le modèle en direct. |
5 |
Confirmer |
Vous validez les résultats dans Simulink. |
Exemple : Simulation de freinage thermique
Dans cet article de blog sur Simulink Agentic Toolkit, Guy Rouleau explique comment construire un modèle thermique de frein à disque entièrement à travers le cycle proposer/approuver/générer/exécuter/confirmer. Il demande à l’agent : « Élabore un plan pour créer une simulation du comportement thermique des freins à disque typiques d'une voiture berline moyenne. »
L'agent produit deux documents de spécification couvrant l'architecture système, les équations de transfert de chaleur pour les plaquettes et le disque, ainsi que l'environnement, les diagrammes des composants et une liste complète des paramètres. Après trois cycles d'itération sur l'architecture (élargissant finalement la portée pour inclure un modèle longitudinal simple du véhicule), l'agent génère le modèle Simulink complet.
Pour les tests, l'agent crée à la fois des tests de sous-système au niveau composants et des scénarios de conduite en boucle fermée, implémentés dans Simulink Test Manager. L'ensemble du workflow, depuis le prompt initial jusqu'au modèle validé, suit le cycle en cinq étapes sans construction manuelle du modèle.
Simulation, test et vérification
Le toolkit supporte le cycle complet de vérification :
- Exécution de simulations, y compris gestion de la configuration et exécution parallèle
- Reproduction des problèmes signalés en élaborant des cas de test et en isolant les causes profondes
- Rédaction de tests à l'aide de Simulink Test
- Proposition de corrections et relance du test pour vérification
Les ingénieurs se concentrent sur l'interprétation des résultats plutôt que sur la gestion de la logistique de mise en place.
Model-Based Systems Engineering (MBSE)
Pour les équipes utilisant la méthodologie MBSE, le toolkit supporte l'ensemble du cadre RFLP (exigences, fonctionnel, logique et physique).
En utilisant Simulink Agentic Toolkit conjointement avec System Composer et Requirements Toolbox, un agent peut :
- Créer et gérer les exigences liées aux éléments d'architecture
- Construire des modèles d'architecture fonctionnelle, logique et physique
- Générer des dictionnaires d'interfaces et des stéréotypes
- Produire des analyses et des ensembles d'allocation
L'objectif est le prototypage rapide des artefacts initiaux du système, libérant ainsi les efforts d'ingénierie pour une résolution substantielle des problèmes plutôt que pour la configuration standard.
Maintenir les ingénieurs informés
Simulink Agentic Toolkit est conçu autour de la supervision humaine. Chaque capacité suit le même principe : l'agent propose, l'ingénieur décide.
Conseils pratiques
- Auditez les compétences personnalisées pour détecter d’éventuels conflits avec les capacités du toolkit. Des instructions qui se chevauchent peuvent amener les agents à recourir à des méthodes moins efficaces.
- Lorsqu'un agent utilise une approche sous-optimale, redirigez-le explicitement vers les outils spécifiques à Simulink.
- Demandez à l'agent de fournir les documents de planification et les spécifications de design avant l'exécution afin que les décisions de design soient prises dès le début.
- Délimitez votre travail en segments gérables qui peuvent être traités de manière plus fiable par l'agent.
Pour poursuivre l’exploration
Vous pouvez créer des agents en utilisant du code MATLAB avec des LLMs via MATLAB et le client HTTP MATLAB MCP. Les agents fournissent des fonctions MATLAB pour se connecter aux LLM (par exemple, les API compatibles OpenAI ou les modèles sur Ollama™) et pour appeler des outils MCP externes. Il existe plusieurs patterns à implémenter pour construire des workflows agentiques.
Modèle 1 : ReAct (Reasoning + Acting)
Le modèle d’agent le plus courant alterne entre la réflexion et l’action. Le LLM réfléchit à la prochaine étape à suivre, agit en conséquence, observe les résultats, puis répète ce processus.
% 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
Modèle 2 : Enchaînement d'outils
Les tâches complexes nécessitent l'utilisation séquentielle de plusieurs outils. La sortie de l'un devient l'entrée du suivant :
| Etape | Action | Objectif |
|---|---|---|
| 1 | Générer du code | L'IA écrit du code MATLAB selon votre demande. |
| 2 | Analyser le code | Vérifier les erreurs, les problèmes de style et les bugs potentiels. |
| 3 | Exécuter le code | Exécuter dans MATLAB et capturer la sortie. |
| 4 | Évaluer les résultats | L'IA examine le résultat, corrige les erreurs ou confirme le succès. |
Modèle 3 : Human-in-the-Loop
Pour les applications critiques en matière de sécurité, ajoutez des étapes d'approbation :
% 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
Conseils pratiques
Plusieurs principes directeurs constituent les clés pour garantir des agents fiables :
- Commencer simplement : faites fonctionner un seul outil avant de construire des chaînes complexes.
- Ajouter de l’observabilité : consignez chaque appel LLM et chaque exécution d’outil ; vous en aurez besoin pour le débuggage.
- Gérer les erreurs avec soin : les LLM commettent des erreurs ; mettez en place une logique de nouvelle tentative avec un retour en arrière exponentiel.
- Définir des limites : limitez les itérations, les budgets de symboles et les outils auxquels un agent peut accéder.
- Tester de manière adversariale : testez délibérément les cas limites pour mettre à l'épreuve votre agent avant qu'il n'atteigne les utilisateurs.
Ressources
MATLAB Agentic Toolkit
Proposez aux agents de codage IA une expertise avancée en MATLAB ainsi qu'une connexion en temps réel.
Ressources
Simulink Agentic Toolkit
Étendez l'IA agentique dans l'approche Model-Based Design avec Simulink.
Sélectionner un site web
Choisissez un site web pour accéder au contenu traduit dans votre langue (lorsqu'il est disponible) et voir les événements et les offres locales. D’après votre position, nous vous recommandons de sélectionner la région suivante : .
Vous pouvez également sélectionner un site web dans la liste suivante :
Comment optimiser les performances du site
Pour optimiser les performances du site, sélectionnez la région Chine (en chinois ou en anglais). Les sites de MathWorks pour les autres pays ne sont pas optimisés pour les visites provenant de votre région.
Amériques
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)