Comment Windsketch a conçu un modèle tarifaire agnostique pour un marché fragmenté
Comment Windsketch a conçu un modèle tarifaire agnostique pour un marché fragmenté

Chez Windsketch, notre équipe de développement a relevé l’un de ses plus grands défis techniques : créer un modèle agnostique de calcul des prix capable de s’adapter à un marché où chaque fabricant suit sa propre logique, souvent imprévisible et même contradictoire.
Le problème : un puzzle sans modèle commun
Le calcul des prix dans ce secteur est loin d’être uniforme :
- Certains fabricants accordent plus d’importance à un seul axe, hauteur ou largeur, qu’à la surface totale.
- D’autres appliquent des majorations en pourcentage sur une dimension de base, puis ajustent selon les caractéristiques supplémentaires.
- Dans certains cas, les prix reposent sur les pouces carrés ; dans d’autres, sur les pieds carrés.
- Et le plus difficile : les prix ne sont pas toujours linéaires. Parfois, les unités les plus grandes étaient moins chères que les petites, selon des courbes de prix irrégulières et difficiles à anticiper.
C’était un environnement sans règle commune, où les méthodes traditionnelles ne parvenaient pas à généraliser efficacement.
Les premiers essais : des modèles standards
Pour résoudre le problème, l’équipe a commencé par concevoir plusieurs modèles de calcul statiques, qui permettaient de couvrir une grande partie des fabricants aux prix plus réguliers :
- Des formules fondées sur la surface totale.
- Des modèles utilisant les pouces carrés ou les pieds carrés.
- Des systèmes par « tranches », avec des plages tarifaires prédéfinies selon les dimensions.
- Des variantes hybrides combinant pourcentages et dimensions.
Ces approches ont résolu de nombreux cas. Mais certains fabricants présentaient encore des courbes de prix très irrégulières et non linéaires qui ne correspondaient à aucune règle standard.
Explorer l’IA : ce qui a fonctionné et ce qui n’a pas fonctionné
Notre équipe a aussi expérimenté différentes approches d’intelligence artificielle et des modèles mathématiques :
- Réseaux neuronaux profonds, qui avaient tendance au surapprentissage et coûtaient cher à maintenir.
- Régressions linéaires et polynomiales simples, qui ne captaient pas la complexité des courbes.
- Interpolations par splines, qui introduisaient des oscillations indésirables.
- Segmentation par « coude » dans le jeu de données : nous avons essayé de diviser les données en petits groupes à forte variance pour entraîner des régressions locales. L’idée avait du potentiel, mais était trop complexe à maintenir en production.
Chaque essai a apporté des enseignements précieux, mais aucun n’a atteint l’équilibre entre précision, simplicité et performance dont nous avions besoin.
La solution finale : un modèle de précision hybride, adaptatif et segmenté
Le tournant est venu lorsque nous avons accepté une vérité inconfortable : aucune fonction unique ne peut représenter le comportement de tout le marché. La diversité des fabricants, des matériaux et des règles tarifaires internes rendait irréalisable une approche purement globale.
Cela a conduit à notre solution définitive : un modèle hybride, fondé sur une segmentation adaptative (par morceaux), combinée à des régressions polynomiales locales et à des mécanismes de contrôle de l’erreur.
Segmentation du comportement et contrôle de l’erreur
Au lieu de chercher une seule courbe pour généraliser tous les comportements, le système a commencé à analyser les variations de prix dans les ensembles de dimensions, en repérant les changements brusques ou les incohérences. Ces points d’inflexion servaient de limites naturelles des intervalles, dans lesquels une fonction polynomiale pouvait être ajustée avec plus de précision.
Chaque segment ou intervalle est évalué avec :
- Une régression polynomiale d’ordre flexible (généralement du second ordre).
- Une borne d’erreur acceptable (erreur quadratique moyenne).
Si l’erreur dépasse le seuil défini, le système :
- Subdivise automatiquement l’ensemble de dimensions en intervalles plus petits.
- Ajuste une nouvelle fonction propre à ce sous-groupe.
- Associe ce modèle à la plage correspondante.

Cela permet au moteur tarifaire de détecter et isoler précisément les zones où les règles du fabricant changent ou se comportent de façon non linéaire, sans affecter les intervalles voisins. Le système reste ainsi précis et stable, même face à des catalogues aux courbes de prix abruptes, en paliers ou inversées.
Un modèle qui s’adapte à toute dimension tarifaire
Le cœur de notre moteur ne se limite pas aux surfaces ou aux dimensions planes. Chez Windsketch, nous combinons plusieurs approches de calcul, qui coexistent de manière modulaire et transparente :
- Tarification à la surface.
- Tarification par tranches de dimensions prédéfinies.
- Tarification par élément (type de verre, cadres, couleurs, teinte, trempe, croisillons, etc.).
- Prix fixes et formules en pourcentage lorsque cela s’applique.
- Fonctions par morceaux avec régressions polynomiales par segment pour les fabricants aux logiques non linéaires ou irrégulières.
Cette combinaison de règles, soutenue par un modèle mathématique qui évolue et se corrige à la volée, permet à Windsketch d’exploiter un moteur tarifaire qui s’adapte à :
- Tout fabricant, aussi particulière que soit sa structure.
- Tout produit de l’écosystème des fenêtres et des portes.
- Tout matériau ou composant influant sur la logique tarifaire : verre, aluminium, accessoires, traitements spéciaux, etc.
Un système vivant, interprétable et extensible
Au-delà de la précision, le modèle a été conçu pour être :
- Interprétable : Chaque plage possède sa propre fonction et peut être auditée facilement.
- Auto-ajustable : Si de nouvelles données rompent le modèle, une nouvelle fonction est calculée sans intervention humaine.
- Évolutif : L’architecture permet de stocker chaque ensemble de coefficients, de l’associer aux fabricants, matériaux ou produits et d’effectuer des calculs en temps réel sans perte de performance.
Le défi de l’intégration à Django
Résoudre l’aspect mathématique ne représentait que la moitié du défi. L’équipe a aussi dû intégrer cette logique dans un système de production, en relevant des défis comme :
- Sérialiser et stocker de façon sécurisée les coefficients mathématiques.
- Exécuter les calculs en temps réel sans sacrifier les performances.
- Concevoir un modèle de données souple et extensible pour prendre en charge la logique tarifaire de tout fabricant.
Ce défi a fait appel à la fois à la science des données et à l’ingénierie logicielle.
Ce que nous avons appris
Le résultat a été un moteur tarifaire robuste qui combine des modèles standards pour les fabricants aux règles traditionnelles et un modèle mathématique avancé pour ceux aux schémas irréguliers. Cette solution a permis à Windsketch de construire un système véritablement agnostique, capable de s’adapter à un marché fragmenté et complexe.
La leçon la plus précieuse pour notre équipe : il n’est pas toujours nécessaire de choisir entre l’intelligence artificielle et les mathématiques classiques. Parfois, la meilleure solution vient de l’hybridation des approches et de l’application d’une ingénierie pragmatique, pour atteindre un équilibre entre précision, simplicité et évolutivité.


