La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.
Modélisation boîte noire
Sélection de la structure et de l’ordre des modèles boîte noire
La modélisation boîte noire est utile lorsque votre intérêt principal est de vous ajuster aux données, indépendamment d’une structure mathématique particulière du modèle. La toolbox propose plusieurs structures de modèle boîte noire linéaire et non linéaire qui sont habituellement utiles pour représenter des systèmes dynamiques. La complexité de ces structures de modèle varie en fonction de la flexibilité dont vous avez besoin pour représenter la dynamique et le bruit dans votre système. Vous pouvez choisir l’une de ces structures et calculer ses paramètres pour correspondre aux données de réponse mesurées.
La modélisation boîte noire est habituellement un processus par approximations successives consistant à estimer les paramètres de différentes structures et comparer les résultats. Généralement, vous commencez par la structure de modèle linéaire simple et progressez vers des structures plus complexes. Vous pouvez également choisir une structure de modèle parce que vous connaissez mieux cette structure ou parce que vous avez des besoins applicatifs spécifiques.
Les structures de modèle boîte noire linéaire les plus simples sont celles qui exigent de configurer le moins d’options :
Fonction de transfert, avec un nombre donné de pôles et de zéros
Modèle ARX linéaire, qui est le modèle polynomial d’entrée-sortie le plus simple
Modèle de représentation d'état, que vous pouvez estimer en spécifiant le nombre d’états du modèle
L’estimation de certaines de ces structures utilise également des algorithmes d’estimation non itératifs, ce qui réduit encore leur complexité.
Vous pouvez configurer une structure de modèle à l’aide de l’ordre du modèle. La définition de l’ordre du modèle dépend du type de modèle que vous sélectionnez. Par exemple, si vous choisissez une représentation par une fonction de transfert, l’ordre du modèle est lié au nombre de pôles et de zéros. Pour une représentation d’état, l’ordre du modèle correspond au nombre d’états. Dans certains cas, comme les structures de modèle ARX linéaire et de représentation d’état, vous pouvez estimer l’ordre du modèle à partir des données.
Si les structures de modèle simples n'offrent pas de bons modèles, vous pouvez sélectionner des structures de modèle plus complexes en :
Spécifiant un ordre de modèle plus élevé pour la même structure de modèle linéaire. Un ordre de modèle plus élevé augmente la flexibilité du modèle pour rendre compte de phénomènes complexes. Cependant, un ordre inutilement élevé peut rendre le modèle moins fiable.
Modélisant explicitement le bruit en incluant le terme He(t) comme le montre l’équation suivante.
y(t) = Gu(t) + He(t)
Ici, H modélise la perturbation additionnelle en la traitant comme la sortie d’un système linéaire piloté par une source de bruit blanc e(t).
L’utilisation d’une structure de modèle qui modélise explicitement la perturbation additionnelle peut aider à améliorer la précision du composant G mesuré. En outre, cette structure de modèle est utile lorsque votre intérêt principal est d’utiliser le modèle pour prédire des valeurs de réponse futures.
Utilisant une structure de modèle linéaire différente.
Consultez Linear Model Structures.
Utilisant une structure de modèle non linéaire.
Les modèles non linéaires sont plus flexibles que les modèles linéaires d’ordres similaires pour capturer des phénomènes complexes. Consultez Nonlinear Model Structures.
En fin de compte, il vous faut choisir la structure de modèle la plus simple correspondant le mieux à vos données mesurées. Pour plus d’informations, consultez Estimer des modèles linéaires avec Quick Start.
Indépendamment de la structure que vous choisissez pour l’estimation, vous pouvez simplifier le modèle en fonction des besoins de votre application. Par exemple, vous pouvez séparer la dynamique mesurée (G) de la dynamique du bruit (H) pour obtenir un modèle plus simple qui représente uniquement la relation entre y et u. Vous pouvez également linéariser un modèle non linéaire autour d’un point de fonctionnement.
Dans quels contextes utiliser des structures de modèle non linéaire ?
Un modèle linéaire suffit souvent pour décrire avec précision la dynamique du système et, dans la plupart des cas, il est préférable d’essayer d’abord des modèles linéaires. Si la sortie du modèle linéaire ne reproduit pas de manière adéquate la sortie mesurée, vous devriez peut-être utiliser un modèle non linéaire.
Vous pouvez évaluer la nécessité d’utiliser une structure de modèle non linéaire en traçant la réponse du système en fonction d’une entrée. Si vous remarquez que les réponses sont différentes selon le niveau ou le signe de l’entrée, essayez d’utiliser un modèle non linéaire. Par exemple, si la réponse en sortie, à une augmentation en entrée, est plus rapide que la réponse à une diminution, vous avez peut-être besoin d’un modèle non linéaire.
Avant de construire un modèle non linéaire pour un système que vous savez non linéaire, essayez de transformer les variables d’entrée et de sortie de sorte que la relation entre les variables transformées soit linéaire. Par exemple, considérons un système ayant comme entrée le courant et la tension d’un thermoplongeur et comme sortie la température du liquide chauffé. La sortie dépend des entrées par le biais de la puissance du thermoplongeur, qui est égale au produit du courant et de la tension. Au lieu de construire un modèle non linéaire pour ce système à deux entrées et une sortie, vous pouvez créer une nouvelle variable en prenant le produit du courant et de la tension et en construisant un modèle linéaire décrivant la relation entre la puissance et la température.
Si vous ne pouvez pas déterminer de transformations de variables créant une relation linéaire entre des variables d’entrée et de sortie, vous pouvez utiliser des structures de modèle non linéaire comme des modèles ARX ou Hammerstein-Wiener non linéaires. Pour connaître la liste des structures de modèle non linéaire supportées et savoir comment les utiliser, consultez Nonlinear Model Structures.
Exemple d’estimation boîte noire
Vous pouvez utiliser l’application System Identification ou des commandes pour estimer des modèles linéaires et non linéaires de différentes structures. Dans la plupart des cas, vous choisissez une structure de modèle et estimez les paramètres du modèle à l’aide d’une seule commande.
Considérons le système masse-ressort-amortisseur décrit dans Systèmes dynamiques et modèles. Si vous ne connaissez pas l’équation de mouvement de ce système, vous pouvez utiliser une approche de modélisation boîte noire pour construire un modèle. Par exemple, vous pouvez estimer des fonctions de transfert ou des modèles de représentation d’état en spécifiant les ordres de ces structures de modèle.
Une fonction de transfert est un rapport de polynômes :
Pour le système masse-ressort-amortisseur, la fonction de transfert est
qui est un système sans zéro et avec 2 pôles.
En temps discret, la fonction de transfert du système masse-ressort-amortisseur peut être
où les ordres du modèle correspondent au nombre de coefficients du numérateur et du dénominateur (nb = 1 et nf = 2) et le retard entrée-sortie est égal à l’exposant d’ordre le plus faible z–1 dans le numérateur (nk = 1).
En temps continu, vous pouvez construire un modèle de fonction de transfert linéaire avec la commande tfest.
m = tfest(data,2,0)
Ici, data représentent vos données d’entrée-sortie mesurées, représentées sous la forme d’un objet iddata, et l’ordre du modèle est un ensemble consistué du nombre de pôles (2) et du nombre de zéros (0).
De même, vous pouvez construire une structure d’erreur de sortie pour un modèle en temps discret avec la commande oe.
m = oe(data,[1 2 1])
L’ordre du modèle est [nb nf nk] = [1 2 1]. Habituellement, on ne connait pas les ordres du modèle à l’avance. Essayez plusieurs valeurs d’ordre du modèle jusqu’à trouver les ordres produisant un modèle acceptable.
Sinon, vous pouvez choisir une structure de représentation d’état pour représenter le système masse-ressort-amortisseur et estimer les paramètres du modèle avec la commande ssest ou n4sid.
m = ssest(data,2)
Ici, le deuxième argument 2 représente l’ordre ou le nombre d’états dans le modèle.
Dans la modélisation boîte noire, vous n’avez pas besoin de l’équation de mouvement du système, seulement d’une estimation des ordres du modèle.
Pour plus d'informations sur la construction de modèles, consultez Steps for Using the System Identification App et Model Estimation Commands.