At our core, Decision Lab is a technology company, and we employ the best and most appropriate technologies and tools to deliver our work. We enjoy finding and using the latest and greatest , while continuing to get the best from the more established classics. Here are our favourite ten, as voted for by our staff. Check them out! We are sure you will recognise some and maybe find some new and useful:
- AnyLogic is our go-to choice for simulation model development. It allows us to use agent-based modelling, discrete event simulation and system dynamics, and any mix of them within a single model (and we do combine them). We’ve used it problems as varied as modelling 40,000 individual travellers passing through Heathrow Terminal 5 (the good old days), to millions of components within the repair and maintenance process of the British Army’s radio communications system, from GSK R&D pipeline to the logistics involved in supporting oil extraction in the Black Sea.
- Docker is a brilliant technology for building, testing and deploying applications quickly. Because the software is packaged into containers that include everything needed to run, we can make sure all dependencies are met and that it will run in any environment we deploy.
- FastAPI is a modern, open-source, fast Python web framework used for building Web APIs. It allows us to build APIs seamlessly without much effort and time.
- Github is where we store all our source code, but with its great versioning and functionality development teams need, as well as seamless integration into so many other tools, it stands head and shoulders above anything else in its class.
- Gurobi – we produce complex optimisation models and we need an advanced mathematical solver to that is fast. We believe Gurobi is currently the best on the market and we’ve used it on projects in water, infrastructure and defence. It is very, very fast.
- Python – it’s ubiquitous for a reason: it allows software to develop so rapidly and provides access to an unparalleled range of open-source libraries. We use it on our data science projects but also as the glue to link components in our optimisation work too.
- PyTorch – there are many great software libraries for machine learning, but one of our favourites it deep learning is PyTorch. It is very intuitive to use and allows us to rapidly build ML models.
- Scikit-learn is a Python library in Python that provides many unsupervised and supervised learning algorithms. It’s built upon some familiar and faithful technologies including NumPy, pandas and Matplotlib. It’s great for traditional machine learning functionality like classification, dimensionality reduction, clustering, etc.
- Slack – we’ve always embraced flexible working but to be effective it needs great in-team communication and that requires a technology such as Slack. It’s the backbone of our company’s communication and allows us to share so much.
- Unity – we started with one simulation technology and we’re finishing with another. Unity is a computer games engine, and allows us to bring in a great deal of realism (and physics) to simulations and utilise many cool libraries developed by others. We’ve been using it to create simulated environments within our deep reinforcement learning solutions. We’re now thinking about how to link it to AnyLogic, so we get the best of both. That will be very powerful.