About Tristan
Skills
- C++ has been my language of choice since I was 16, used mainly for my thesis, my entrepreneurial project and for my open-source libraries/contributions.
- CMake, a tool that I've used extensively, to build, test and deploy my cross-platform projects. I also build an open-source CMake module to reduce boilerplate
- Python, with the publication of an open-source tool downloaded more than 30,000 times and maintained for 2 years.
- CI / CD to ensure cross-platform operation of my libraries & on different configurations, deployment of technical and user documentation, as well as various deliverables, e.g. almagation.
- My knowledge of data structures. I'm working on my own knowledge database in the form of graphs, represented by sparse adjacency matrices and using linear algebra for extremely high-performance queries.
- My autonomy, rigour, sense of responsibility and organisational skills, values acquired during my thesis, my entrepreneurial project and my personal projects.
- My ability to analyse and synthesise, combined with my capacity to learn new tools quickly, enable me to adapt to technological developments.
- My ability to listen and work as part of a team, which I put to good use on a DGA RAPID project to find solutions between military operators, development teams and our research needs. In particular, I had to understand the various jobs of air command & control centre to simulate operators.
French
Native or bilingual
English
Fluent
Experience
- Personal projectCross-platform C++ library to simulate virtual cognitive charactersVIDEO GAMES AND ANIMATIONJanuary 2023 - March 2025 (2 years and 2 months)Versailles, France
Overview
This C++ library allows to build & simulate NPC's state of mind & body and reflect it through behaviours in your application.- NPC's state and behaviours are fully customizable & composable, even at runtime. Use data and behaviours relevant to and/or provided by your application. Adapt/detail NPC's behaviours when needed, e.g. deactivate some behaviours for far-away NPCs.
- Make your NPCs perceive the world around them using senses.
- Make your NPCs reason about their known world and state, the way you want using flows and operations.
- Make your NPCs behave accordingly through actions and/or actuators.
The main motivation behind this was threefold:- a toolbox to quickly experiments different behaviours for NPC's, including cognitive ones,
- make NPC's behaviour moddable,
- and ultimately, to build, share and reuse behaviours across application.
Skills / Concepts
- A custom DSL using a register-based VM to interact and query the simulation's state.
- Multi-agent systems and AI
- Custom knowledge graph database using sparse matrices and linear algebra.
- Custom cross-platform (w/ web using Emscripten) game engine
- Data-oriented Design
Tech Stack
The library is divided into two parts : the core and a visualisation engine. Both were made with:* C++ 20 and CMake- Benchmarking was done with Google Benchmark
- Tests were done with Catch2
- Profiling/Tracing with TracyProfiler
The core library was built around Flecs, a fast and lightweight Entity Component SystemThe visualisation engine was built with :- Rendering : Sokol, minimal cross-platform standalone C headers
- UI: Dear ImGui
- NoneDeep-Tech EntrepreneurshipJanuary 2023 - March 2025 (2 years and 2 months)Versailles, FranceIn 2023, I obtained my PhD in computer science on the production of human behaviour. My work was based on multi-agent systems and on a formalisation to facilitate the implementation of human reasoning models.In view of the experimental results, I decided to embark on an entrepreneurial adventure to valorise my research work. I became a Sorbonne University's MyStartupProgram laureate. Later on, SCAI - the Sorbonne Center for Artificial Intelligence - also supported the project.Our aim was to propose an innovative simulator with a dynamic simulation (player profile, adaptive scenario, cognitive agents), an immersive virtual environment, and with the support and monitoring of psychological experts for stress management. The aim is to improve the performance of learners under stress.Dynamic simulation is based on three components:1. Establishing and updating a psychological, physiological and skills profile of the learner in correlation with the teaching situations.2. A scenario engine that adapts the simulation in real time according to the educational objectives of the trainers.3. Cognitive characters that simulate the behaviour of business operators and the variability of behaviour expressed in the field.After 2 years, despite several presentations, notably with the army, the project has not been able to secure any commercial outlets or short-term partners to move the project on to the industrial phase.
- Heudiasyc - UTCDGA RAPIDJanuary 2020 - January 2023 (3 years)Compiègne, FranceThe aim was to prototype a training simulator for air command and control.Four partners were involved :
- The Army,
- A software company specialising in the construction of 3D virtual reality environments,
- Thales,
- and a research laboratory (Heudiasyc).
My tasks consisted of :- Observe, discuss and exchange with the customer, trainers and experts to understand the different professions, their needs and the behaviours to be simulated.
- Writing the scenarios, use cases, explanations of the different professions and technical specifications.
- Formalise, implement and test an engine to simulate the behaviour of business operators.
Recommendations
Be the first to recommend Tristan
Help this freelancer shine by sharing your experience working together.
These freelancer profiles also match your criteria
Agatha Frydrych
Backend Java Software Engineer
4.7
(3)
2
Baptiste Duhen
Fullstack developer
4.6
(4)
5
Amed Hamou
Senior Lead Developer
4
(2)
7
Audrey Champion
Web developer
4.3
(3)
4
Education
- PhD. in Computer ScienceUniversité de technologie de Compiègne2023“Generation of variable behaviours induced by modular cognitive models, applied to a virtual team during crisis situation in a training context.” Thesis defended on 29 March 2023 Publications: WACAI 2020, CSCWD 2022 (Best student paper), JFSMA 2022, ROIA 2024 (journal article)
- Master's degree in AISorbonne Université2019Distributed Agents, Robotics, Interaction, Decision, Operational Research Qualification: Very Good
Certifications
- C++ (Q Expert 214)PluralSight2021