Publiée 25 juin 2026
Engineer F/H: Development of a Software Architecture for discovery of structure in complex systems
Inria
Talence, Nouvelle-Aquitaine 33400, France
CDI
Contexte et atouts du poste
Traditionally physical science operates under two fundamental assumptions: one, that the universe may be reduced to a set of consistent parts and fundamental laws that govern their behavior; two, that the universe and its phenomena may then be reconstructed from this set of fundamental laws. And yet many natural phenomena possess emergent properties that are difficult or even mathematically impossible to deduce even from a complete microscopic description [1, 2].The existence of irreducibly complex systems presents a challenge: to build a science of model discovery beyond the traditional reductionist-constructionist paradigm.
There are important questions: what is the meaning of structure , divorced from a domain-specific physical context? Can we mathematically define it and detect it? How does one build a consistent mathematical language to describe things as disparate as bird flocking behavior and the formation of galaxies? Why do patterns emerge in physical systems over time? Can we predict when 'something new' will emerge, and can we detect it once it has emerged [3]? What counts as something new ?
At Inria we take a dual-pronged approach of tackling both these questions on both a theoretical level, by developing the aforementioned mathematical tools, and on a practical level, by applying these tools to real world systems in collaboration with domain scientists.
Our primary focus is causal state and structure discovery from time series. Our method takes in time series of observations and returns a set of inferred causal states of the system-sets of predictively equivalent observations-with an interpretable geometry [4, 5]. This is a stochastic parallel to deterministic attractor reconstruction in nonlinear dynamics. The inferred causal state set can be analyzed for insights into the intrinsic complexity and mechanistic drivers of the underlying system. When paired with inference of the governing equations of motion, it can also be used as the state set of an inherently interpretable, optimally predictive model [6, 7].
We are developing a software package based on existing code that implements our inference algorithm using kernel embedding of conditional probability distributions [4, 8]. The algorithm takes in arbitrary time series (including observations from multiple sources or heterogeneous data) and returns the inferred causal state set in the form of similarity matrices, which are then dimension reduced for visualization and analysis [8]. This software package is to be disseminated to the public. It is also to be used in the framework of a partnership between Inria and Inrae to improve modeling of carbon flux dynamics in ecosystems.
[1] P.W. Anderson. More is different. Science, 177(4047):393-396, August 1972.
[2] M. Gu, C. Weedbrook, A. Perales, and M. Nielsen. More really is different. Physica D, 238(9-10):835-839, May 2009.
[3] James P. Crutchfield. The calculi of emergence: Computation, dynamics, and induction. Physica D, 75:11-54, 1994.
[4] Nicolas Brodu and James P. Crutchfield. Discovering causal structure with reproducing-kernel Hilbert space epsilon-machines. Chaos: An Interdisciplinary Journal of Nonlinear Science, 32(2):023103, 02 2022.
[5] Samuel P. Loomis and James P. Crutchfield. Topology, convergence, and reconstruction of predictive states. Physica D: Nonlinear Phenomena, 445:133621, 2023
[6] C. R. Shalizi. Causal Architecture, Complexity and Self-Organization in Time Series and Cellular Automata. PhD thesis, University of Wisconsin, Madison, Wisconsin, 2001.
[7] S.L. Brunton, J.L. Proctor, & J.N. Kutz, Discovering governing equations from data by sparse identification of nonlinear dynamical systems, Proc. Natl. Acad. Sci. U.S.A. 113 (15) 3932-3937, https://doi.org/10.1073/pnas.1517384113 (2016).
[8] Alexandra M. Jurgens, Nicolas Brodu; Inferring kernel -machines: Discovering structure in complex systems. Chaos 1 March 2025; 35 (3): 033162. https://doi.org/10.1063/5.0242981
Mission confiée
With the help of Alexandra Jurgens (Inria) and a to-be-recruited postdoctoral researcher (Inria), the recruited engineer will work to analyze an existing code base and identify the relevant code to be incorporated into a package appropriate for broad dissemination. The requirements for the package will be formalized in discussion with the team, but at minimum this package will perform kernel embedding of conditional distributions on arbitrary time series input, perform dimension reduction, and produce basic visualization. Additional goals for this position are to perform iterative improvements to the package, including but not limited to: the ability for end users to select hyper-parameters 'on the fly', an advanced visualization suite, and the integration of new mathematical methods (for instance, calculation of new statistical descriptors) as developed together with the team.
The principal place of work will be the Inria center at the University of Bordeaux.
Responsibilities : The person recruited will be responsible for software development and will adopt best practices from the team including continuous integration and reproducibility.
Principales activités
Main Activities
Additional activities:
Compétences
Technical skills: A major activity of this work is software development and publishing in Python. Knowledge of (or interest in learning) software engineering best practices is required. The best candidate would be excited to play an active role in identifying new technologies to improve the software package during development.
Interdisciplinary skills: Ability to communicate with colleagues from mathematics, physics, and ecology will be necessary. In particular, interest in physics-especially in complexity, chaos, information theory, and/or stochastic thermodynamics-or nonlinear dynamics would be an advantage.
Languages: Candidates must be at ease in scientific English and eager to publish their results in scientific journals. The team uses English.
Avantages
Rémunération
Based on experience, between €2,692 and €2,765 gross per month.
Traditionally physical science operates under two fundamental assumptions: one, that the universe may be reduced to a set of consistent parts and fundamental laws that govern their behavior; two, that the universe and its phenomena may then be reconstructed from this set of fundamental laws. And yet many natural phenomena possess emergent properties that are difficult or even mathematically impossible to deduce even from a complete microscopic description [1, 2].The existence of irreducibly complex systems presents a challenge: to build a science of model discovery beyond the traditional reductionist-constructionist paradigm.
There are important questions: what is the meaning of structure , divorced from a domain-specific physical context? Can we mathematically define it and detect it? How does one build a consistent mathematical language to describe things as disparate as bird flocking behavior and the formation of galaxies? Why do patterns emerge in physical systems over time? Can we predict when 'something new' will emerge, and can we detect it once it has emerged [3]? What counts as something new ?
At Inria we take a dual-pronged approach of tackling both these questions on both a theoretical level, by developing the aforementioned mathematical tools, and on a practical level, by applying these tools to real world systems in collaboration with domain scientists.
Our primary focus is causal state and structure discovery from time series. Our method takes in time series of observations and returns a set of inferred causal states of the system-sets of predictively equivalent observations-with an interpretable geometry [4, 5]. This is a stochastic parallel to deterministic attractor reconstruction in nonlinear dynamics. The inferred causal state set can be analyzed for insights into the intrinsic complexity and mechanistic drivers of the underlying system. When paired with inference of the governing equations of motion, it can also be used as the state set of an inherently interpretable, optimally predictive model [6, 7].
We are developing a software package based on existing code that implements our inference algorithm using kernel embedding of conditional probability distributions [4, 8]. The algorithm takes in arbitrary time series (including observations from multiple sources or heterogeneous data) and returns the inferred causal state set in the form of similarity matrices, which are then dimension reduced for visualization and analysis [8]. This software package is to be disseminated to the public. It is also to be used in the framework of a partnership between Inria and Inrae to improve modeling of carbon flux dynamics in ecosystems.
[1] P.W. Anderson. More is different. Science, 177(4047):393-396, August 1972.
[2] M. Gu, C. Weedbrook, A. Perales, and M. Nielsen. More really is different. Physica D, 238(9-10):835-839, May 2009.
[3] James P. Crutchfield. The calculi of emergence: Computation, dynamics, and induction. Physica D, 75:11-54, 1994.
[4] Nicolas Brodu and James P. Crutchfield. Discovering causal structure with reproducing-kernel Hilbert space epsilon-machines. Chaos: An Interdisciplinary Journal of Nonlinear Science, 32(2):023103, 02 2022.
[5] Samuel P. Loomis and James P. Crutchfield. Topology, convergence, and reconstruction of predictive states. Physica D: Nonlinear Phenomena, 445:133621, 2023
[6] C. R. Shalizi. Causal Architecture, Complexity and Self-Organization in Time Series and Cellular Automata. PhD thesis, University of Wisconsin, Madison, Wisconsin, 2001.
[7] S.L. Brunton, J.L. Proctor, & J.N. Kutz, Discovering governing equations from data by sparse identification of nonlinear dynamical systems, Proc. Natl. Acad. Sci. U.S.A. 113 (15) 3932-3937, https://doi.org/10.1073/pnas.1517384113 (2016).
[8] Alexandra M. Jurgens, Nicolas Brodu; Inferring kernel -machines: Discovering structure in complex systems. Chaos 1 March 2025; 35 (3): 033162. https://doi.org/10.1063/5.0242981
Mission confiée
With the help of Alexandra Jurgens (Inria) and a to-be-recruited postdoctoral researcher (Inria), the recruited engineer will work to analyze an existing code base and identify the relevant code to be incorporated into a package appropriate for broad dissemination. The requirements for the package will be formalized in discussion with the team, but at minimum this package will perform kernel embedding of conditional distributions on arbitrary time series input, perform dimension reduction, and produce basic visualization. Additional goals for this position are to perform iterative improvements to the package, including but not limited to: the ability for end users to select hyper-parameters 'on the fly', an advanced visualization suite, and the integration of new mathematical methods (for instance, calculation of new statistical descriptors) as developed together with the team.
The principal place of work will be the Inria center at the University of Bordeaux.
Responsibilities : The person recruited will be responsible for software development and will adopt best practices from the team including continuous integration and reproducibility.
Principales activités
Main Activities
- Document use cases and define test cases based on interviews and conversations with team
- Analyze existing code and identify code to be incorporated into the package
- Define and implement a software package that meets required use cases and is validated on test cases, with appropriate documentation
- Disseminating as a package on a PyPi
- Iteratively improve package based on new methods developed in discussion with the rest of the team
Additional activities:
- Present progress of ongoing work to colleagues and partners
- Suggest new directions for package improvements based on technical knowledge
- Discuss with scientific collaborators
Compétences
Technical skills: A major activity of this work is software development and publishing in Python. Knowledge of (or interest in learning) software engineering best practices is required. The best candidate would be excited to play an active role in identifying new technologies to improve the software package during development.
Interdisciplinary skills: Ability to communicate with colleagues from mathematics, physics, and ecology will be necessary. In particular, interest in physics-especially in complexity, chaos, information theory, and/or stochastic thermodynamics-or nonlinear dynamics would be an advantage.
Languages: Candidates must be at ease in scientific English and eager to publish their results in scientific journals. The team uses English.
Avantages
- Subsidized meals
- Partial reimbursement of public transport costs
- Possibility of teleworking and flexible organization of working hours
- Professional equipment available (videoconferencing, loan of computer equipment, etc.)
- Social, cultural and sports events and activities
- Access to vocational training
- Social security coverage
Rémunération
Based on experience, between €2,692 and €2,765 gross per month.