Next up is the demo app for PyDDSBB, the open-source optimization solver I developed during my Ph.D. research. PyDDSBB (Python Package for Data-Driven Spatial Branch-and-Bound) is available in the original repository).
It’s an interactive web app where you can pick a 1D or 2D black-box function (e.g., sine waves, polynomials, Gaussian bumps, Ackley function, Rosenbrock function etc), and PyDDSBB will adaptively sample it to find the global minimum (or maximum). You can tweak solver parameters like:
Domain: set the search range [x_min, x_max].
Noise: add observation noise to simulate a noisy black-box function.
Solver options: initial samples (n_init), splitting strategy, variable selection method, multifidelity toggle, and stopping tolerances.
Sense: minimize or maximize.
Resume: increase the sampling budget and keep going without starting from scratch.
You can instantly see how these choices change the sampling process and the discovered optimum, all without writing a single line of code.
What you can do in the app:
Explore how PyDDSBB adaptively samples a function to locate the optimum.
Experiment with different solver configurations and noise levels.
Compare minimization vs. maximization runs.
Resume an optimization run with a larger budget to see how the solution refines.
And this is just scratching the surface, PyDDSBB can handle much more!
Higher-dimensional problems.
Different type of underestimators.
Nonlinear constraints.
Black-box objectives from simulations or experiments.
Multifidelity optimization where evaluations vary in cost and accuracy.
This app is just a lightweight playground to visualize those concepts in action.
I recently created a small hobby project, an interactive web app where you can generate synthetic 1D data, train a neural network on it in real time, and play with architecture and training parameters to see the effect instantly. It’s a fun way to explore PyTorch and machine learning without writing code.
Here’s how I built it and hosted it for free on Streamlit Community Cloud, so anyone can use it, and how you can too.
Build steps:
Wrote the app in Python (app.py) using Streamlit for the interface and PyTorch for the model.
Listed dependencies in requirements.txt.
Pushed the project to a public GitHub repository (here is my repository).
Deployed it for free on Streamlit Community Cloud by linking my GitHub repo.
Embedded the live app here for a demo!
It’s a zero-cost way to share interactive ML demos, data visualizations, or dashboards with anyone.