Simuler vos modèles et processus à l’aide de vos données et du Big data?

Par Vincent Coulombe, 26 juillet 2022

Aujourd’hui, les données et le Big data sont largement utilisés pour simuler de nouveaux modèles, systèmes ou processus. Mais est-il absolument nécessaire de procéder à des simulations dans toutes les situations? Et si oui, devrait-on le faire sur le système réel, par le biais de modèles mathématiques ou par des modèles informatiques?

L’expérience de probabilité du comte de Buffon

Pour répondre à ces questions, débutons par une anecdote très instructive. Nous sommes au 18e siècle, les Américains deviennent indépendants, la France se révolte et la Nouvelle-France tombe aux mains des Britanniques. Le tout, pendant qu’un sympathique mais excentrique personnage, le comte Georges-Louis Leclerc de Buffon, contribue à sa manière au siècle des Lumières en réalisant plusieurs expériences plus ou moins bouffonnes (oui, c’est un jeu de mots avec son nom de famille) dans le confort de son majestueux manoir.

Notamment, la fameuse expérience des aiguilles de Buffon au cours de laquelle notre comte s’est demandé quelles étaient les chances qu’une aiguille tombant sur son plancher en bois touche à exactement une craque entre les lattes. Évidemment, il s’est vite rendu compte qu’il n’existait pas d’équation mathématique simple répondant directement à son interrogation. Il entreprit donc de lancer beaucoup (trop) d’aiguilles dans l’espoir de pouvoir estimer avec confiance la probabilité qu’une aiguille touche à une craque.  

Pourquoi raconter cette anecdote? Eh bien, il se trouve que l’essentiel de l’esprit de la simulation se trouve dans l’expérience de l’aiguille de Buffon. En effet, celui-ci a réalisé plusieurs répétitions (lancé tout plein d’aiguilles) d’un procédé stochastique (elles ne rebondissent pas toutes de façon identique) dans le but d’estimer une fonction de probabilité difficile à calculer (quelle est la probabilité que l’aiguille touche à une craque).  

Système réel, modèle mathématique ou modèle de simulation?

D’ailleurs, puisque celui-ci n’a pas essayé de reproduire le comportement d’un système existant, seule la notion de modèle semble absente de l’expérimentation du comte de Buffon. Je vais donc devoir vous introduire ce terme plus formellement. En gros, un modèle est une imitation, une représentation d’un système réel. Il est donc possible d’observer le comportement d’un système réel en interagissant avec son modèle. Mais alors, pourquoi ne pas interagir directement avec le système réel au lieu de se casser la tête à le modéliser? Parce qu’il peut être coûteux, dangereux, voire impossible, d’expérimenter directement sur le système réel. À noter qu’un modèle peut être autant une miniature, des équations mathématiques, un programme informatique ou même un mélange des trois!

Les frères McDonald simulent une commande client à l’aide d’un modèle dessiné de leur cuisine afin de trouver l’enchainement d’actions optimal de l’équipe. Cette simulation permettra de créer un modèle de production révolutionnaire à l’époque, qui assurera le succès des restaurants McDonald’s. Tiré du film Le fondateur (2016).

La stratégie expérimentale du comte est exactement la même que celle que vous devriez utiliser lorsque vient le temps de décider s’il faut simuler ou non. D’abord, est-ce que je peux expérimenter directement sur mon système réel? Ensuite, est-ce qu’il est possible de créer mon modèle à l’aide d’équations mathématiques? Si vous répondez non à ces deux questions, vous êtes dans la même situation que le comte et vous allez devoir développer un modèle de simulation.

Bien qu’il soit possible d’expérimenter sur un modèle physique, à l’instar du comte de Buffon et des frères McDonald, la plupart des expérimentations modernes sont réalisées sur des modèles informatiques. Pourquoi? Parce qu’il devient alors extrêmement plus rapide d’effectuer le nombre de répétitions nécessaires à l’obtention de résultats statistiquement fiables.

De plus, les simulations informatiques ouvrent la porte à l’implantation de systèmes dits de simulation-optimisation où il devient possible d’expérimenter différents scénarios tout en optimisant différentes fonctions objectives. Ou même d’entrainer un algorithme d’apprentissage par renforcement qui apprend via interactions avec le système modélisé.

L’apprentissage par renforcement a permis, entre autres, à OpenAI [Image 1] de résoudre un cube Rubik (haut) en faisant jouer des millions de parties virtuelles à l’algorithme puis en transférant son savoir dans un robot physique et à Nvidia [Image 2] à entrainer un robot à monter et descendre des marches via la même méthodologie.

Toutefois, la simulation n’est pas une solution parfaite. En effet, il peut être extrêmement coûteux, dépendamment de sa complexité, de modéliser adéquatement un système réel. C’est pourquoi je recommande d’éviter de simuler si ce n’est pas nécessaire. Cela dit, les données et le big data sont des atouts précieux pour toute organisation. Avant d’entreprendre un projet visant l’amélioration de la performance, il est hautement souhaitable de faire appel à des experts en données et analytique dès l’amorce de la réflexion pour s’assurer d’optimiser les chances de succès et les retombées d’un projet.  

Les experts en données et analytique de Syntell accompagnent les organisations dans tous leurs projets et initiatives. Que ce soit pour un accompagnement stratégique ou technique, le bon expert au bon moment peut faire toute la différence. Nous proposons également diverses formations qui permettent un transfert d’expertise vers les équipes internes.

Références

[1] OpenAI, Ilge Akkaya, Marcin Andrychowicz, Maciek Chociej, Mateusz Litwin, Bob McGrew, Arthur Petron, Alex Paino, Matthias Plappert, Glenn Powell, Raphael Ribas, Jonas Schneider, Nikolas Tezak, Jerry Tworek, Peter Welinder, Lilian Weng, Qiming Yuan, Wojciech Zaremba, Lei Zhang. Solving Rubik’s Cube with a Robot Hand.

[2] Nikita Rudin, David Hoeller, Philipp Reist, Marco Hutter. Learning to Walk in Minutes Using Massively Parallel Deep Reinforcement Learning.