Integer programming formulation: which algorithms I have a complex problem that I have simplified coming to a simple integer linear programming formulation.

Given the scalar $K &gt; 0$, the vectors $v(t) \in R^n$ and $b_i \in R^n, \forall i=1,\ldots,K$ are known. In particular $v(t)$  is the measured value (ex: every 10 minutes) while the $b_i$ are fixed (computed ones, previously).
Consider that I have: $$K &gt;&gt; n,$$ 
i.e., I have to identify the presence of $K$ (ex: $K=20$) elements, each one of dimension $n$ (ex: $n=2$).

So, for every fixed $t$, the problem that I have to solve has the following formulation:

$$ \newcommand\norm[1]{\left\lVert#1\right\rVert}
\begin{equation*}\begin{aligned}
&amp; \underset{x_i}{\text{minimize}}
&amp; &amp; \norm{v - \sum_{i=1}^{K} b_i x_i}_{2} \\
&amp; \text{subject to}
&amp; &amp; x_i \in \{0,1\},\ \forall i = 1, \ldots, K.
\end{aligned} \end{equation*}$$

Do you know which algorithms solve that formulation? In particular I am looking for an algorithm implemented in Python.
You may reparameterize $x_i$ as $x_i = sigmoid(\alpha \cdot z_i), z_i \in \mathbb{R}$, with $\alpha$ being a constant such that $\alpha \gg 1$, and then proceed with your favorite optimization method for finding $z_i$, and from there $x_i$.

This, of course, may present problems, as $x_i$ are no longer bounded in $\{0, 1\}$, but may suffice your use case.