(I will not be surprised if this problem has been solved and/or has a trivial solution – I just do not know the right terminology to google for it.)

So the problem is as follows. I have an $m \times n$ matrix consisting of zeroes and ones. I treat the rows $\mathbf r_1, \mathbf r_2, \dotsc, \mathbf r_m$ of the matrix as vectors in $\mathbb R^n$ (or, to be more precise, in $\mathbb R_{\geq 0}^n$) and want to generate linear combinations that give vectors with non-negative entries:

$$ \alpha_1 \mathbf r_1 + \alpha_2 \mathbf r_2 + \dotsb \alpha_m \mathbf r_m = \mathbf h = (h_1, h_2, \dotsc, h_n) \in \mathbb R_{\geq 0}^n \,, $$ where the coefficients of the combination can be bothe positive, zeroes, and negative: $\alpha_1, \alpha_2, \dotsc, \alpha_m \in \mathbb R$.

In other words, I want to find many vectors from $\operatorname{span} \{\mathbf r_1, \mathbf r_2, \dotsc, \mathbf r_m\}$ that have non-negative entries. It goes without saying, that number of such vectors is infinite. But I am paricularly interested in generating vectors *with different supports* — this requires that some of $\alpha_1, \alpha_2, \dotsc, \alpha_m$ are sometimes negative. The routine can be (or should be?) randomised, and for my real task $n$ is usually around 100–500.

P.S. The support of the vector is a set of non-zero positions: $$ \operatorname{supp} (\mathbf h) = \{ i : h_i \neq 0 \} \,. $$