I am interested in the following question:

For which sets ${m_1,\ldots m_k}$ of positive integers do there exist bipartite graphs having exactly $m_i$ matchings of size $i$ for each $1\leq i \leq k$, and no matchings larger than $k$?

Ideally I would like to find a complete classification of such sets, or else an algorithm which, given a set of numbers, will (theoretically) construct a bipartite graph with the desired properties if one exists. However, I realise that this is highly unlikely! In which case, I would like to know as much as possible about the restrictions on such sets.

For example, assume that our desired graph consists of two disjoint sets $A$ and $B$ of vertices with edges between them, such that $|A|\leq |B|$, and such that there are no completely unconnected vertices. Then $|A|=k$. As $m_1$ is simply the number of edges of the graph, we must have $m_1\geq k$ and $m_i\leq {m_1 \choose i}$ for all $i$.

This is just off the top of my head; I'm sure there are many more restrictions which can be easily found. Does anyone know to what extent this problem has been studied? I'd be grateful for any information or references.