ModuleSet.calculateEntropy()
It's return is "-1f / total * entropySum + Mathf.Log(total);" What does this mean? Normalization? The final effect will be better if just use "-1f * entropySum" or "entropySum", the result generated by normalized version is too flat in height
This formula for entropy is a bit counter intuitive, but it can be derived like this:
That being said, you don't have to use entropy, if you get better looking results with a different formula, that's great!
So ModulePrototype.Probability is relative probability or weight. However, the entropy value is dominated by the size of p (ModuleSet.Count), those entropies should have been normalized before compare.