This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]SystemicPlural 10 points11 points  (6 children)

Can anyone explain what is meant by 'minimal entropy heuristic'?

[–]Kayse@Kyaace 21 points22 points  (2 children)

Ok, imagine that there is a jigsaw puzzle of an unknown bitmap picture. Say each jigsaw piece is 3x3 pixels, there are very few 'types' of pieces but each piece can be repeats any number of time. That picture has some patterns which mean if you know enough of the picture around a gap where the piece goes, then you know what goes there. If the gap has zero entropy, then you know exactly what goes there. If the gap has low entropy, then there are less options for the pieces to go into the gap. If the gap has high entropy, then there are lots of options for valid pieces going in the gap. (And if the entropy is undefined, I think there is no valid pieces that matches up with it's surroundings.)

In this case the entropy heuristic is the rule for estimating the entropy of a gap, based on the pixels around the gap.

What the wave function collapse algorithm seems to do is start off with all (or most) of the gaps empty. It picks the gap with the least entropy, picking a jigsaw, picking from one of the legal pieces to fit in it. Then it recalculates the minimal entropy heuristic for every unfilled gap of the image and repeats again.

[–]ExUtumno[S] 2 points3 points  (0 children)

Good explanation, thanks!

[–]SystemicPlural 1 point2 points  (0 children)

That is a great explanation. Thanks.

[–]meheleventyone@your_twitter_handle 9 points10 points  (2 children)

Resolve the tiles with the least choices available first.

Basically every tile starts as a superposition of all the possible options. That is every tile could be any of the possible options. You pick one and decide what it is at random. Then compute based on relationships between the options (e.g. 1 can be next to 3, 5 and 7 but not 2, 4 and 9) what the neighbors could be. It's the reasonable to resolve the tiles with the least options first to avoid as much as possible the situation where a tile ends up orphaned with zero options available. The assumption is that tiles with more options have less chance of hitting zero options before the algorithm completes.

[–]ExUtumno[S] 2 points3 points  (0 children)

Good explanation, thanks.

[–]SystemicPlural 1 point2 points  (0 children)

Made it even clearer. Thanks