Guide d’optimisation de circuits avec uSimmics (anciennement QucsStudio) [2026]

Opération de base

uSimmics (anciennement QucsStudio) intĂšgre une fonctionnalitĂ© Circuit Optimizer qui ajuste automatiquement les valeurs des composants afin d’atteindre le comportement souhaitĂ© du circuit. Ce guide prĂ©sente l’intĂ©gralitĂ© du processus d’optimisation Ă  travers un exemple concret : dĂ©terminer la valeur de rĂ©sistance de charge qui maximise la puissance dĂ©livrĂ©e par une source.


Ce que vous apprendrez dans cet article

  • PrĂ©sentation gĂ©nĂ©rale de la fonctionnalitĂ© Circuit Optimizer dans uSimmics (anciennement QucsStudio)
  • Conception du circuit cible et configuration des variables et objectifs d’optimisation
  • DĂ©finition de paramĂštres personnalisĂ©s Ă  l’aide de Insert Equation
  • Consultation des rĂ©sultats d’optimisation via le composant Tabular
  • CaractĂ©ristiques et cas d’usage des diffĂ©rents algorithmes d’optimisation (Grid Search, Steepest Descent, Nelder-Mead, Differential Evolution)

PrĂ©sentation de l’optimisation de circuits

Le Circuit Optimizer exécute des simulations de maniÚre itérative en faisant varier les variables spécifiées (telles que les valeurs des composants), puis recherche automatiquement les valeurs satisfaisant les objectifs configurés (maximiser, minimiser ou converger vers une valeur cible).


Procédure étape par étape

1. Concevoir le circuit Ă  optimiser

Cet exemple utilise le circuit suivant :

  • Une source de tension avec une impĂ©dance interne de 33 Ω connectĂ©e Ă  une rĂ©sistance de charge (R1)
  • Objectif : maximiser la puissance dissipĂ©e par la rĂ©sistance de charge R1

Remarque de conception : D’aprĂšs le thĂ©orĂšme de transfert maximal de puissance, la puissance transmise Ă  la charge est maximale lorsque la rĂ©sistance de charge est Ă©gale Ă  l’impĂ©dance interne de la source (33 Ω). Le rĂ©sultat de l’optimisation permettra de valider ce principe.

2. Placer les nƓuds de mesure et une sonde de courant

Pour dĂ©finir la « puissance » comme objectif d’optimisation, il est nĂ©cessaire de mesurer Ă  la fois la tension et le courant.

  1. Nommez le nƓud aux bornes de R1 « Voltage ».
  2. Insérez une sonde de courant en série avec R1 et nommez sa sortie « Current ».

3. Ajouter le composant Optimization

  1. SĂ©lectionnez le composant « Optimization » dans la barre d’outils de uSimmics (anciennement QucsStudio) et placez-le sur le schĂ©ma.
  2. Double-cliquez sur le composant pour ouvrir la boĂźte de dialogue de configuration.

4. Configurer les variables d’optimisation dans l’onglet Variables

Dans l’onglet Variables, dĂ©finissez les paramĂštres que l’optimiseur modifiera au cours de la recherche.

ParamĂštre Valeur exemple
Nom de la variable R_load (résistance de R1)
Valeur initiale 10 Ω
Valeur minimale 1 Ω
Valeur maximale 200 Ω

5. DĂ©finir l’objectif d’optimisation dans l’onglet Goals

Dans l’onglet Goals, dĂ©finissez ce que l’optimiseur doit atteindre. Dans cet exemple, l’objectif est de maximiser le paramĂštre « Power ».

ParamĂštre Description
Nom du paramĂštre Power
Direction Maximiser (Maximize)

6. Définir le paramÚtre personnalisé avec Insert Equation

La quantitĂ© « Power » n’Ă©tant pas native dans le schĂ©ma, elle doit ĂȘtre dĂ©finie explicitement pour que le moteur de simulation puisse l’Ă©valuer. Ajoutez un Ă©lĂ©ment Insert Equation au schĂ©ma et saisissez l’expression suivante :

Power = Voltage * Current

Cela permet au moteur d’optimisation de reconnaĂźtre « Power » comme une expression Ă©valuable.

7. Lancer la simulation DC pour dĂ©marrer l’optimisation

Une fois la configuration terminĂ©e, lancez une simulation DC. Le Circuit Optimizer dĂ©marrera automatiquement et le processus d’optimisation commencera.

8. Consulter les résultats

À l’issue de l’optimisation, placez un composant Tabular (dans le menu Diagrams) sur le schĂ©ma pour afficher les rĂ©sultats numĂ©riques.

Dans cet exemple, l’optimiseur retourne R_load = 33 Ω comme valeur maximisant la puissance dĂ©livrĂ©e.

Remarque : Les rĂ©sultats d’optimisation sont des approximations et non des solutions analytiques exactes. Un ajustement fin peut s’avĂ©rer nĂ©cessaire selon les exigences de prĂ©cision.


Choix de l’algorithme d’optimisation

uSimmics (anciennement QucsStudio) propose plusieurs algorithmes d’optimisation. Choisir celui qui convient le mieux Ă  la nature du problĂšme permet d’amĂ©liorer Ă  la fois la vitesse de calcul et la prĂ©cision des rĂ©sultats.

Grid Search (recherche par grille)

Évalue exhaustivement l’espace des variables selon un schĂ©ma de grille. Efficace lorsque le nombre de variables est faible et la plage de recherche Ă©troite, mais le temps de calcul augmente rapidement avec le nombre de variables.

Cas d’usage typique : Balayages simples Ă  une variable, comme explorer des rĂ©sistances de 0 Ă  100 Ω par pas de 1 Ω.

Steepest Descent (descente de gradient)

Suit le gradient le plus prononcé vers la valeur optimale. Converge rapidement, mais tend à rester bloqué dans des optima locaux.

Cas d’usage typique : RĂ©glage fin lorsque la valeur initiale est dĂ©jĂ  proche de l’optimum connu.

Nelder-Mead (méthode du simplexe)

Explore l’espace des solutions en manipulant simultanĂ©ment plusieurs points (un simplexe), ce qui le rend plus robuste face aux optima locaux. Ne nĂ©cessite pas d’information de gradient, ce qui le rend applicable aux fonctions objectif non diffĂ©rentiables.

Differential Evolution (évolution différentielle, DE)

Algorithme Ă©volutionnaire exploitant l’alĂ©atoire pour explorer des espaces de recherche multimodaux complexes. NĂ©cessite davantage de temps de calcul, mais peut dĂ©couvrir des solutions que les mĂ©thodes Ă  gradient ne parviennent pas Ă  trouver.

Cas d’usage typique : Optimisation globale de circuits Ă  grande Ă©chelle comprenant de nombreux transistors et composants passifs.


Conclusion

Le Circuit Optimizer de uSimmics (anciennement QucsStudio) supprime la nĂ©cessitĂ© de tĂątonnements manuels en identifiant automatiquement les valeurs optimales des composants. La clĂ© d’une optimisation efficace rĂ©side dans la configuration correcte de trois Ă©lĂ©ments : les variables, les objectifs et l’algorithme. Il est conseillĂ© de commencer par un circuit simple pour se familiariser avec le processus, puis d’appliquer cette approche Ă  des tĂąches de conception rĂ©elles.


Articles connexes

Comment

Titre et URL copiés