I did construct a knapsack solver for kitchen layouts with heavy computation to check adjacency rules, and to generate every possible solution in the known universe. It needed to have its results trimmed to some 500 solutions max to not kill the webpage (I have no technical skills). After this I felt that a more thought out logical and heuristic approach would be more impactful (or at least increase my iteration time)
Here is a result from the knapsack solver:
To get a sense of just how many possible arrangements check out the first ~500
Since I like to avoid forcing the user to pick one of basically the same, perhaps we need a better method of generating a meaningful kitchen (say diffs on lengths (where my intuition is leading me).