La méthode qui sous-tend la conception et le développement logiciel chez Business2Any, appelée B-ADSc (Bucki-Analyse Décisionnelle des Systèmes complexes), est une méthode qui a fait l’objet de divers enseignements (HEC(1), Télécom ParisTech, Télécom SudParis, CNAM…). Son concepteur – Janusz Bucki - est par ailleurs Directeur scientifique de cette société.

Cette méthode est une algèbre mathématique dite « absorbante » qui s’inscrit dans les courants de pensée systémiques et cybernétiques, que l’on évoque aussi parfois, pour ces derniers, sous les termes de cognitique ou machine-learning (en informatique). Ces courants complétèrent, à la fin de la seconde guerre mondiale, les approches behavioristes (ou comportementalistes) du début du vingtième siècle, ce, dans des disciplines aussi diverses que la sociologie, la psychologie et, pour le sujet qui nous intéresse, l’automatisme.

En informatique, technique d’automatisation par excellence, les approches fonctionnelles usuelles sont d’inspiration comportementaliste : le comportement futur d’un logiciel est pensé de façon déterministe et exhaustive et tend à décrire le fonctionnement idéalisé d’une situation ou d’un processus. À des données d’entrée correspondent des transformations prédictibles qui vont produire des actions ou des données en sortie. La conception fonctionnelle informatique consiste donc à modéliser l’agencement des fonctions qui va permettre les transformations voulues et anticipées. Ce type d’approche est dominant en informatique, notamment dite « de gestion », et la quasi-totalité des formations ou cursus existants tend à l’enseigner.

Les approches cybernétiques, inspirées notamment du constructivisme, permettent au contraire de produire des logiciels dont le fonctionnement n’est pas seulement déterministe (ou inné) ; mais aussi et surtout basé sur l’acquisition de compétences nouvelles, issues de l’auto-interprétation du retour d’expérience. Ainsi, une application dite « cybernétique » sera capable d’auto-apprentissage, d’auto-adaptation, et de reconstruire en permanence sa propre compréhension de sa « réalité observable » (donc son propre fonctionnement acquis, en réaction) ; ce, en association avec l’utilisateur humain.

Parmi ces approches, diverses technologies ont été développées afin de répondre aux enjeux de l’auto-apprentissage. Elles sont toutes basées sur l’utilisation explicite ou implicite des logiques mathématiques de premier, second et troisième ordre. On peut évoquer, pour les plus répandues : les systèmes relevant de l’Intelligence Artificielle à base d’algorithmes (programmation générique, procédurale…), de l’Intelligence Artificielle à base de connaissance (systèmes experts alimentés par des bases de faits, des moteurs d’inférence…), ou encore des approches combinées tels les arbres de connaissance, les matrices à propagation de contrainte, les réseaux bayésiens ou de graphes, les modèles de la théorie des jeux…

Dans la continuité des approches évoquées ci-dessus, et afin de répondre à la réalité opérationnelle des environnements multi-acteurs ou de permettre le pilotage de situations complexes aux niveaux les plus subsidiaires qui soient, des approches distribuées ont progressivement été mises au point ces dernières années. Les systèmes multi-agents en sont la principale illustration, et sont - aujourd’hui - de plus en plus utilisés en informatique industrielle, bancaire, pour les analyses de marchés (aide à la décision), l’aide au diagnostic (médecine…), les jeux massivement multi-joueurs, les applications de réalité augmentée, … Leur principal intérêt est de prendre en compte, en temps réel, des éléments autoréférentiels de contexte, propres aux différents acteurs concernés (humains ou automates logiciels). Ils ont ainsi pour ambition de traiter autant de cas qu’il existe d’acteurs autonomes impliqués, donc de s’adapter différemment, selon les circonstances.

En France, de rares entreprises éditrices de logiciels (QOSMOS, EUROBIOS , UBIANT , TellMePlus , Business2Any…) et quelques laboratoires (CNRS-LIRIS, LIP6, INRIA…) créent de tels Systèmes Multi-Agents pour la réalisation d’applications innovantes et disruptives. Cependant, rares sont les ingénieurs en informatique(2) disposant du savoir-faire idoine pour produire du code logiciel sur la base de ce type d’approche, trop souvent confinée à de rares cours théoriques de fin de cycle d’ingénieur.

Dans ce contexte, B-ADSc est une approche extrêmement innovante permettant la réalisation de systèmes multi-agents à double boucle d’apprentissage, c’est-à-dire parmi les plus sophistiqués qui soient et disposant du potentiel évolutif le plus avéré. En effet, la plupart des autres systèmes existants sont à « simple boucle » rétroactive. De l’avis des chercheurs et experts faisant autorité dans ce domaine, seuls les systèmes à double boucle peuvent prétendre concurrencer, dans le futur, l’intelligence humaine.

Jusqu’alors, l’informatique de gestion ou les applications usuelles (Web, mobiles, etc.) ne nécessitaient pas un tel niveau d’autonomie et d’apprentissage logiciel. La complexité opérationnelle induite par l’Internet des Objets, le Big Data ou encore les défis que pose l’informatique ubiquitaire (ou pervasive) obligent progressivement - mais depuis peu - les acteurs informatiques et les entreprises utilisatrices à s’intéresser à ces technologies pourtant peu diffusées. Cela explique à la fois le manque de ressources disponibles (formations, ingénieurs) et le caractère encore confidentiel de ces approches.

Philippe GAUTIER - (c) 2015


1 - Voir : Michel Lebas, « Comptabilité analytique basée sur les activités, analyse et gestion des activités » - Revue Française de Comptabilité - septembre 1991, n°226, pp.47-63.
2 - Essentiellement des Doctorants, s’étant spécialisés à la suite des cursus usuels.