Assessment of the distribution of words in the grid

I create a word search and try to calculate the quality of the generated puzzles by checking that the set of words is "distributed evenly" throughout the grid. For example, placing each word sequentially, filling them in rows, is not particularly interesting, because there will be clusters, and the user will quickly notice the pattern.

How can I measure how words are "evenly distributed"?

What I would like to do is write a program that uses word search as input and outputs a rating that evaluates the “quality” of the puzzle. I am wondering if anyone saw a similar problem and if I could link to some resources. Maybe there is some kind of concept in statistics that can help? Thanks.

+5
source share
1 answer

The main problem is the distribution of lines in a square or rectangle. You can do this geometrically or use whole arrays. I will try whole arrays here.

Let M be the matrix of your puzzle,

A B C D
E F G H
I J K L
M N O P

Let the word "EFGH" is an existing word, as well as "CGKO". Then create a matrix that will contain a membership counter in fighter words in each cell:

0 0 1 0
1 1 2 1
0 0 1 0
0 0 1 0

Apply the rule: the current cell value is equal to the sum of all neighbors (4-way) and is multiplied by the original cell value if the original value is 2 or higher.

0 0 1 0      1 2 2 2
1 1 2 1  -\  1 3 8 2
0 0 1 0  -/  1 2 3 2
0 0 1 0      0 1 1 1

And summarize all the values ​​in the rows and columns:

1 2 2 2 =  7
1 3 8 2 = 14
1 2 3 2 =  8
0 1 1 1 =  3
| | | |
3 7 | 6
    14

Then calculate the throughput of both result sets:

(7 + 14 + 8 + 3) / 4 = 32 / 4 = 8
(3 + 7 + 14 + 6) / 4 = 30 / 4 = 7.5

:

3  <-> 7.5 = 4.5       7  <-> 8 = 1
7  <-> 7.5 = 0.5       14 <-> 8 = 6
14 <-> 7.5 = 6.5       8  <-> 8 = 0
6  <-> 7.5 = 1.5       3  <-> 8 = 5
             ___avg               ___avg
             3.25                 3

:

3 * 3.25 = 9.75

. , , , .

:

1 0 0 0      1 1 0 0      2
1 0 0 0  -\  2 1 0 0  -\  3         -\  C avg 2.5  -\  C avg-2-avg 0.5
1 0 0 0  -/  2 1 0 0  -/  3         -/  R avg 2.5  -/  R avg-2-avg 2.5
1 0 0 0      1 1 0 0      2                                       _____*
                           6 4 0 0                                 1.25 < score

: calc. .

+4

All Articles