New expert strategy page

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
New expert strategy page
Hi everyone... Just want to let you know, I've created a new strategy page for Minesweeper experts: http://computronium.org/minesweeper/
It contains lots of rules of thumb I've come up with after years of playing. I think a lot of the rules may be previously undiscovered; some I even found through a computer search. The site assumes you have a basic understanding of the game, and has only one page of basics to lay the groundwork before jumping into more advanced stuff. I've also tended towards usefulness over completeness.
It's still a work in progress; I have some new rules I'll be adding soon, so keep watching. And please pass along any corrections or feedback!
It contains lots of rules of thumb I've come up with after years of playing. I think a lot of the rules may be previously undiscovered; some I even found through a computer search. The site assumes you have a basic understanding of the game, and has only one page of basics to lay the groundwork before jumping into more advanced stuff. I've also tended towards usefulness over completeness.
It's still a work in progress; I have some new rules I'll be adding soon, so keep watching. And please pass along any corrections or feedback!

 Posts: 410
 Joined: Sun Nov 30, 2008 11:50 pm
Re: New expert strategy page
a nice idea. i've been asked quite a few times by beginners whether there is any collection of minesweeper patterns. this is a good start. make sure to take a look at the strategy page in the minesweeper wiki. damien did a really good job there.
some remarks (i've only looked through the patterns and skipped most of the text):
only use blank squares where they make sense/use correct patterns. use letters or something else to indicate that there are usually numbers on the edges of openings
leave out redundant patterns. maybe make an extra page called 'reduction', where you explain that 25 can be reduced to 14 in certain situations. the patterns themselves are usually simple enough that there is no need for more than 1 example and being able to reduce complex patterns to more simple ones is a strategy in itself
leave out these yellow squares. instead, if possible, make an extra image and an extra pattern
leave out patterns in which all mines are already flagged. these are too simple. knowing that these usually require other squares to be safe is basically the second step, right after understanding what the numbers mean
some remarks (i've only looked through the patterns and skipped most of the text):
only use blank squares where they make sense/use correct patterns. use letters or something else to indicate that there are usually numbers on the edges of openings
leave out redundant patterns. maybe make an extra page called 'reduction', where you explain that 25 can be reduced to 14 in certain situations. the patterns themselves are usually simple enough that there is no need for more than 1 example and being able to reduce complex patterns to more simple ones is a strategy in itself
leave out these yellow squares. instead, if possible, make an extra image and an extra pattern
leave out patterns in which all mines are already flagged. these are too simple. knowing that these usually require other squares to be safe is basically the second step, right after understanding what the numbers mean
„Das perlt jetzt aber richtig über, ma sagn. Mach ma' noch'n Bier! Wie heißt das? Biddä! Bidddää! Biddddäää! Reiner Weltladen!“
Re: New expert strategy page
Long feedback post inbound as soon as I have time. For now: excellent work! Keep it up!
Don't anthropomorphize computers  they don't like it.
Re: New expert strategy page
Looking forward to Tommy's response, I think I know some of what it will contain.
I agree, very good work, keep it up. It would be nice if perhaps these patterns had some "exercises" afterwards, with an interactive thing perhaps where you have a collection of scenarios for the user to solve which use the patterns above. (We would be happy in helping you compose such exercises if you were to do the dirtywork of programming your site)
These are a nice collection of patterns. There weren't any I didn't already know, or wouldn't be able to work out in a couple of seconds, however you would be right in thinking that sometimes strong players don't know some relatively simple patterns.
I'm interested to know more about your computer analysis, could you provide some more details on what you did exactly?
Meanwhile I'd recommend checking out the puzzles I posted in this thread. A lot of the puzzles there require more difficult patterns and observations than the ones you've listed already, so it would be good for you to study these for ideas of further computer analysis/etc.
I found some of your pattern categories a little bizarre. Let me see. For example, triangles. You have situations like this
What is the purpose of the opensquare I labelled "a"? The logic works whether anything is known about it or not. The logic holds, providing that the squares I labelled "x" contain no mines, they could be any open/safe squares.
Another example is this one.
What is the purpose of the squares I've labelled "o" as being open/safe? It is irrelevant, the logic works providing only that the squares I've marked "x" are safe and that ?=?. I wonder if newbies reading these examples will be scrutinizing their minesweeper games to make sure that there is a pattern of 3 open/safe squares like you've labelled when they don't need to.
There is one last thing I'd like to add. You appear to have done all this work on your own without talking to anybody. I'd fully recommend starting threadtopics on your various computer analyses, patterns you think are interesting, and this sort of thing. There aren't enough people posting such things. Don't worry about being uninteresting, if anything you can have infinitely many conversations with me on the topic of patterns
 Aradesh
I agree, very good work, keep it up. It would be nice if perhaps these patterns had some "exercises" afterwards, with an interactive thing perhaps where you have a collection of scenarios for the user to solve which use the patterns above. (We would be happy in helping you compose such exercises if you were to do the dirtywork of programming your site)
These are a nice collection of patterns. There weren't any I didn't already know, or wouldn't be able to work out in a couple of seconds, however you would be right in thinking that sometimes strong players don't know some relatively simple patterns.
I'm interested to know more about your computer analysis, could you provide some more details on what you did exactly?
Meanwhile I'd recommend checking out the puzzles I posted in this thread. A lot of the puzzles there require more difficult patterns and observations than the ones you've listed already, so it would be good for you to study these for ideas of further computer analysis/etc.
I found some of your pattern categories a little bizarre. Let me see. For example, triangles. You have situations like this
What is the purpose of the opensquare I labelled "a"? The logic works whether anything is known about it or not. The logic holds, providing that the squares I labelled "x" contain no mines, they could be any open/safe squares.
Another example is this one.
What is the purpose of the squares I've labelled "o" as being open/safe? It is irrelevant, the logic works providing only that the squares I've marked "x" are safe and that ?=?. I wonder if newbies reading these examples will be scrutinizing their minesweeper games to make sure that there is a pattern of 3 open/safe squares like you've labelled when they don't need to.
There is one last thing I'd like to add. You appear to have done all this work on your own without talking to anybody. I'd fully recommend starting threadtopics on your various computer analyses, patterns you think are interesting, and this sort of thing. There aren't enough people posting such things. Don't worry about being uninteresting, if anything you can have infinitely many conversations with me on the topic of patterns
 Aradesh
Re: New expert strategy page
Definitely some interesting stuff here. The patterns are all obvious when thinking in terms of logic (okay, except for that embedded 121, that one's clever ) but it's really nice to have them shown graphically like that. I think your page would be a great resource for newer players.
A lot of your patterns in the first few sections can be reduced down to the concept of having two squares next to each other and using the difference in their values to determine squares. For example, look at your 14/25/36 examples; the four squares in the center are shared by both numbers, so the difference must be entirely accommodated in the 3 squares on each side. Here we have 3 and 3 squares, so there must be 0 and 3 mines on the sides. In the basic 12 wall pattern you have 1 and 1 squares, so there must be 0 and 1 mines on the sides. In the "triangular" 11/22/33 patterns you have 0 and 3 squares, so there must be 0 and 0 mines on the sides. And so on. Having specific examples of this pattern is great for beginners, but explaining it as a more general idea would also be useful.
You should also add a section somewhere explaining the idea of reducing squares  for instance, how the 121 pattern at a wall often appears in other guises (e.g. 233) depending on the mines around it. The idea is not too complicated but it is very useful to fully understand it, and know that you can recognize the same old pattern in many situations.
PS: I don't mean to brag, but I think my javascript minesweeper is pretty nice for a free online one There are many possible settings, the graphics match the classic minesweeper, and you can play very large games (it has a scrollbar if the game is too big).
A lot of your patterns in the first few sections can be reduced down to the concept of having two squares next to each other and using the difference in their values to determine squares. For example, look at your 14/25/36 examples; the four squares in the center are shared by both numbers, so the difference must be entirely accommodated in the 3 squares on each side. Here we have 3 and 3 squares, so there must be 0 and 3 mines on the sides. In the basic 12 wall pattern you have 1 and 1 squares, so there must be 0 and 1 mines on the sides. In the "triangular" 11/22/33 patterns you have 0 and 3 squares, so there must be 0 and 0 mines on the sides. And so on. Having specific examples of this pattern is great for beginners, but explaining it as a more general idea would also be useful.
You should also add a section somewhere explaining the idea of reducing squares  for instance, how the 121 pattern at a wall often appears in other guises (e.g. 233) depending on the mines around it. The idea is not too complicated but it is very useful to fully understand it, and know that you can recognize the same old pattern in many situations.
PS: I don't mean to brag, but I think my javascript minesweeper is pretty nice for a free online one There are many possible settings, the graphics match the classic minesweeper, and you can play very large games (it has a scrollbar if the game is too big).
NF player. Best scores 11039.
Re: New expert strategy page
OK. My promised long post shall be written and testing shall begin in 3... 2... 1 (am actually listening to portal 2 soundtrack while writing this ).
First of all, thank you for taking the time to do this! It's always great to see people contributing to this community, and you created an awesome website that I will most likely link to very often in the future
While I think that you really need to know how to actually solve patterns to be any good at the game, I also know that there are many people out there who are too lazy to learn to do so just like that, on their own  things like this could significantly lower the barrier of entry into this community. I guess that this project could be to minesweeper what the beginner method is to speedcubing  it will make it far easier to get people into the game. And maybe provide the mental groundwork to make actual logicbased pattern solving accessible to more people.
Still  I cannot emphasize enough that the ability to apply logic is an essential part of this game, and feel like your page does not really reflect that. I understand that you want learning patterns, not logic to be the primary focus, and that material explaining the logic of the game already exists, but stating that somewhere would be really nice.
I'd suggest adding a logic section near the end that explains the following two "generalized patterns":
 Areas with fixed mine numbers.
 Two open squares surrounded by unknown squares.
Repeated application of these two patterns will do almost everything for you, including being sufficient to understand why every pattern (except for one, which is surprising considering how simple it is) (and whioch one is left as an exercise to the reader!) you have on your site so far works.
Areas with fixed mine numbers
Areas are sets of squares that are known to contain a certain number of mines. Every number defines an area, namely the one of all adjacent squares. But more interesting are areas that are 1xn in shape, for n<=3  because such areas can be a subset of the squares adjacent to multiple squares.
Note that simply filling up numbers n that have only n unopened surrounding squares is a corollary of this rule.
An additional, more complex example, that probably shows the power of this rule better, would be the second part of http://computronium.org/minesweeper/holes.html.
Two open squares surrounded by unknown squares
If there were one thing I would teach people about minesweeper logic, it would be this. It is a bit complicated, but well worth learning if you are interested in minesweeper solving at all. This is also what qqwref posted, as I noticed too late  I'm going to keep mine nonetheless since it is more detailed.
Consider, in general, the following situation: And define areas a,b,c like so: a belongs only to A, b belongs only to B, c is shared by both numbers.
We will refer to the number of mines in a,b,c by the letters of their respective area. IE, if a contains 3 mines, we say that a=3.
Obviously, a+c=A and b+c=B.
So the following equation holds:
AB=ab
Or, in words: The difference between adjacent numbers is equal to the difference of their respective exclusive (those not shared between the two numbers) areas.
In general, this isn't of much use. The patterns in http://computronium.org/minesweeper/combos.html don't happen that often.
Mostly, special cases of this pattern are interesting, which make it a bit hard to spot for inexperienced sweepers:
 An edge where a would be gives a=0.
 If we know a,b or c, we also know the other two.
 In particular, if this gives us a=0 or c=0, we get all of those squares to clear. This is the reason for the existence of so many patterns that allow you to open three squares in a row.
 If A=B, then a=b. Combined with a=0, this gives us the so called "third square rule", which is basically the first 11 from http://computronium.org/minesweeper/basics.html generalized to other numbers, and happens pretty often, even though this is a really special case.
 Sometimes, limited sizes of the areas rule out certain constellations. For example, 63 will always have a=3,b=0.
 If only one "side" of c has unopened squares, c will be an awesome area to use for other considerations.
This rule may sound complicated, but really isn't, once you get the hang of it. And it alone can solve all but 2 of the patterns on your site, unless I missed one. Finding them would be a great exercise, by the way
I also understand that you probably want a more practical approach here. So, basically, the following are rules of thumb for when to apply a rule:
Two open squares surrounded by unknown squares:
Look for edges, and two adjacent numbers leading from them into uncharted territory. Edges need not be the physical edges of the board; They can also be the edge of the solved part of the board.
Look for adjacent numbers with large differences in dense areas. This will usually limit a and b pretty strongly. In less dense areas, the difference need not be large, because a and b are likely to be constrained already.
Areas with fixed mine numbers:
Apart from trivial stuff  if the other rule doesn't quite cut it, try to use the information you now have in context with your surroundings. Maybe a=2 and there is a 2 on the other side?
Look for squares with one square distance to the solved part of the board, where numbers on both sides are equal.
It would be far more complete, I think, to also add rules for taking sub/supsets of areas and working with their possible mine ranges as opposed to fixed mine counts. But that gets complicated and abstract really quickly, however, I would be glad to explain that in detail as well.
Other suggestions:
I agree that using placeholders instead of blanks is a good idea. If you don't want to divert attention from the relevant squares, maybe give them very subtle, backgroundish colors.
Also: It would be really awesome if you added a "fundamentals" section that explains the rules of the game, and the fact that numbers with just as many adjacent squares as themselves only have mines surrounding them. Your post leads me to believe that you left them out because they were not within the intended scope of the page  however, if that were there, your page could function as a pretty comprehensive, groundup tutorial that people could just provide a single link to!
OK. I think this post is long enough already; Thanks to everyone who made it through. And thanks again for creating that website! I realize that most of this post is actually just my explanation of those two rules  feel free to reuse parts of it, if necessary.
First of all, thank you for taking the time to do this! It's always great to see people contributing to this community, and you created an awesome website that I will most likely link to very often in the future
While I think that you really need to know how to actually solve patterns to be any good at the game, I also know that there are many people out there who are too lazy to learn to do so just like that, on their own  things like this could significantly lower the barrier of entry into this community. I guess that this project could be to minesweeper what the beginner method is to speedcubing  it will make it far easier to get people into the game. And maybe provide the mental groundwork to make actual logicbased pattern solving accessible to more people.
Still  I cannot emphasize enough that the ability to apply logic is an essential part of this game, and feel like your page does not really reflect that. I understand that you want learning patterns, not logic to be the primary focus, and that material explaining the logic of the game already exists, but stating that somewhere would be really nice.
I'd suggest adding a logic section near the end that explains the following two "generalized patterns":
 Areas with fixed mine numbers.
 Two open squares surrounded by unknown squares.
Repeated application of these two patterns will do almost everything for you, including being sufficient to understand why every pattern (except for one, which is surprising considering how simple it is) (and whioch one is left as an exercise to the reader!) you have on your site so far works.
Areas with fixed mine numbers
Areas are sets of squares that are known to contain a certain number of mines. Every number defines an area, namely the one of all adjacent squares. But more interesting are areas that are 1xn in shape, for n<=3  because such areas can be a subset of the squares adjacent to multiple squares.
Note that simply filling up numbers n that have only n unopened surrounding squares is a corollary of this rule.
An additional, more complex example, that probably shows the power of this rule better, would be the second part of http://computronium.org/minesweeper/holes.html.
Two open squares surrounded by unknown squares
If there were one thing I would teach people about minesweeper logic, it would be this. It is a bit complicated, but well worth learning if you are interested in minesweeper solving at all. This is also what qqwref posted, as I noticed too late  I'm going to keep mine nonetheless since it is more detailed.
Consider, in general, the following situation: And define areas a,b,c like so: a belongs only to A, b belongs only to B, c is shared by both numbers.
We will refer to the number of mines in a,b,c by the letters of their respective area. IE, if a contains 3 mines, we say that a=3.
Obviously, a+c=A and b+c=B.
So the following equation holds:
AB=ab
Or, in words: The difference between adjacent numbers is equal to the difference of their respective exclusive (those not shared between the two numbers) areas.
In general, this isn't of much use. The patterns in http://computronium.org/minesweeper/combos.html don't happen that often.
Mostly, special cases of this pattern are interesting, which make it a bit hard to spot for inexperienced sweepers:
 An edge where a would be gives a=0.
 If we know a,b or c, we also know the other two.
 In particular, if this gives us a=0 or c=0, we get all of those squares to clear. This is the reason for the existence of so many patterns that allow you to open three squares in a row.
 If A=B, then a=b. Combined with a=0, this gives us the so called "third square rule", which is basically the first 11 from http://computronium.org/minesweeper/basics.html generalized to other numbers, and happens pretty often, even though this is a really special case.
 Sometimes, limited sizes of the areas rule out certain constellations. For example, 63 will always have a=3,b=0.
 If only one "side" of c has unopened squares, c will be an awesome area to use for other considerations.
This rule may sound complicated, but really isn't, once you get the hang of it. And it alone can solve all but 2 of the patterns on your site, unless I missed one. Finding them would be a great exercise, by the way
I also understand that you probably want a more practical approach here. So, basically, the following are rules of thumb for when to apply a rule:
Two open squares surrounded by unknown squares:
Look for edges, and two adjacent numbers leading from them into uncharted territory. Edges need not be the physical edges of the board; They can also be the edge of the solved part of the board.
Look for adjacent numbers with large differences in dense areas. This will usually limit a and b pretty strongly. In less dense areas, the difference need not be large, because a and b are likely to be constrained already.
Areas with fixed mine numbers:
Apart from trivial stuff  if the other rule doesn't quite cut it, try to use the information you now have in context with your surroundings. Maybe a=2 and there is a 2 on the other side?
Look for squares with one square distance to the solved part of the board, where numbers on both sides are equal.
It would be far more complete, I think, to also add rules for taking sub/supsets of areas and working with their possible mine ranges as opposed to fixed mine counts. But that gets complicated and abstract really quickly, however, I would be glad to explain that in detail as well.
Other suggestions:
I agree that using placeholders instead of blanks is a good idea. If you don't want to divert attention from the relevant squares, maybe give them very subtle, backgroundish colors.
Also: It would be really awesome if you added a "fundamentals" section that explains the rules of the game, and the fact that numbers with just as many adjacent squares as themselves only have mines surrounding them. Your post leads me to believe that you left them out because they were not within the intended scope of the page  however, if that were there, your page could function as a pretty comprehensive, groundup tutorial that people could just provide a single link to!
OK. I think this post is long enough already; Thanks to everyone who made it through. And thanks again for creating that website! I realize that most of this post is actually just my explanation of those two rules  feel free to reuse parts of it, if necessary.
Don't anthropomorphize computers  they don't like it.

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
Re: New expert strategy page
I had a feeling I'd get some great feedback here, and I wasn't disappointed!
I am already working on improvements based on suggestions. I'm just commenting in general for the moment but will respond to everyone in turn and let you know what changes I've made based on your posts. First and foremost I think will be making things more clear, since I think there were some things that I didn't bring across  and I really think if all the people here who know the game so well were not understanding, then the fault lies with me.
(The biggest failing I think was to choose the flag symbol as "a square that can be marked as a mine" whereas it appears some quite naturally assumed it meant "a square that has already been marked as a mine". Especially bad since on at least one page I use them interchangeably.)
Though this is just a general response, I will answer this specific bit quickly:
>I'm interested to know more about your computer analysis, could you provide some more details on what you did exactly?
Just a quick bit of Java code that analyses small grids that I feed into it, such as this (which generated the 12 rule image on the Basics page):
It tries every permutation of mines in squares marked "U" and computes what numbers end up in the ? squares. Collating all these results tells me where bombs and clearable squares are for every number combination. (I have it spit out html for every combination, so I can take interesting ones and paste them into my pages. The lowercase u's generate html output but are not considered in permutations. As I've inadvertently uploaded one of these pages, you can see an example here.) So it's still very much driven by what a human would think is an interesting configuration to analyse  I can't just tell it to "find me interesting things". Anyway I will probably put it up on github at some point but it could probably stand to be a little better commented first
Again, thanks for all the great feedback, and watch for more detailed responses in the coming days...
I am already working on improvements based on suggestions. I'm just commenting in general for the moment but will respond to everyone in turn and let you know what changes I've made based on your posts. First and foremost I think will be making things more clear, since I think there were some things that I didn't bring across  and I really think if all the people here who know the game so well were not understanding, then the fault lies with me.
(The biggest failing I think was to choose the flag symbol as "a square that can be marked as a mine" whereas it appears some quite naturally assumed it meant "a square that has already been marked as a mine". Especially bad since on at least one page I use them interchangeably.)
Though this is just a general response, I will answer this specific bit quickly:
>I'm interested to know more about your computer analysis, could you provide some more details on what you did exactly?
Just a quick bit of Java code that analyses small grids that I feed into it, such as this (which generated the 12 rule image on the Basics page):
Code: Select all
??
uUUUUu
uuuuuu
Again, thanks for all the great feedback, and watch for more detailed responses in the coming days...
Re: New expert strategy page
I tried to make a comprehensive list of all patterns of the form qqwref and tkolar were talking about. It's not quite comprehensive, but I've written down far more than most people would bother to.
Some notation. On the left is the pattern. "x" means any safe square, this could be an edge, another number, an opening, etc etc. Mine means a known mine. Left drawing is what you see, right is what you do in response.
Knowing all these patterns is good, but sometimes you can use the same logic without having all the info I gave above. In the scenarios where there is say one mine on the right, and then we deduce some things. If we don't know the precise location of this one mine, but are able to determine that there is exactly one mine in those 3 squares via other means, we can still perform the rest of what we were able to determine. For example:
At the top I have an example I listed already, and underneath is a corresponding example which uses the fact I know there is just 1 mine touching the 2, and then deduce the location of some other mines.
Some notation. On the left is the pattern. "x" means any safe square, this could be an edge, another number, an opening, etc etc. Mine means a known mine. Left drawing is what you see, right is what you do in response.
Knowing all these patterns is good, but sometimes you can use the same logic without having all the info I gave above. In the scenarios where there is say one mine on the right, and then we deduce some things. If we don't know the precise location of this one mine, but are able to determine that there is exactly one mine in those 3 squares via other means, we can still perform the rest of what we were able to determine. For example:
At the top I have an example I listed already, and underneath is a corresponding example which uses the fact I know there is just 1 mine touching the 2, and then deduce the location of some other mines.
Re: New expert strategy page
I missed some cases. (Not been as thorough this time) Think I've covered all kinds of cases now.

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
Re: New expert strategy page
I'm in the process of a number of changes to the website based on suggestions  first and foremost, clearer diagrams and examples, as per suggestions. The stumbling block here is of course my lack of design and html skills, but I'm forging on.
I'll work through the responses piecemeal 
Next update will definitely address this.
More responses tomorrow hopefully...
I'll work through the responses piecemeal 
Yep, the quality of that page is the main reason I felt okay leaving most of the introductory stuff off of mine. I'm planning to link to it on my intro page.EWQMinesweeper wrote:a nice idea. i've been asked quite a few times by beginners whether there is any collection of minesweeper patterns. this is a good start. make sure to take a look at the strategy page in the minesweeper wiki. damien did a really good job there.
Yep, will be doing that. It's a fine line balancing making it clear enough and not letting it get too cluttered.EWQMinesweeper wrote:some remarks (i've only looked through the patterns and skipped most of the text):
only use blank squares where they make sense/use correct patterns. use letters or something else to indicate that there are usually numbers on the edges of openings
I don't agree that 25 is a reduction of 14. The 25 is an automatic rule in its own right; it doesn't depend on you flagging one of squares adjacent to both or anything. The moment you see a 25 anywhere you can immediately flag three squares and clear another three.EWQMinesweeper wrote:leave out redundant patterns. maybe make an extra page called 'reduction', where you explain that 25 can be reduced to 14 in certain situations. the patterns themselves are usually simple enough that there is no need for more than 1 example and being able to reduce complex patterns to more simple ones is a strategy in itself
I think I agree with you on this, and have tried a draft or two this way but am still wrangling with the CSS. The next draft may still have yellow but I think your suggestion is the way it will ultimately go.EWQMinesweeper wrote:leave out these yellow squares. instead, if possible, make an extra image and an extra pattern
Yah, this is a misunderstanding caused by my using flags inconsistently. Only one image on the Basics page and the two on the final Advanced page actually have preflagged mines  in all other cases, the flags indicate places where you can deduce mines from the configuration.EWQMinesweeper wrote:leave out patterns in which all mines are already flagged. these are too simple. knowing that these usually require other squares to be safe is basically the second step, right after understanding what the numbers mean
Next update will definitely address this.
More responses tomorrow hopefully...

 Posts: 410
 Joined: Sun Nov 30, 2008 11:50 pm
Re: New expert strategy page
stumbled upon this pattern today and thought you might like it.
 Attachments

 inamethisfilecaterpillar.JPG (5.43 KiB) Viewed 7119 times
„Das perlt jetzt aber richtig über, ma sagn. Mach ma' noch'n Bier! Wie heißt das? Biddä! Bidddää! Biddddäää! Reiner Weltladen!“

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
Re: New expert strategy page
Interesting... I think it's solvable; the 4 on the middle right indicates that two of the three uncleared squares to its left are mines. Whichever two it is, the 5 to the left of them is satisfied, so the square above the 5 can be cleared. This means the square to the right of that is a bomb, to satisfy the 4 above it. The number behind the square you cleared initially should tell you then whether the square below that is a mine, and the rest should clear from there.
Hard to imagine any pattern rule being applied there; you'd have to reason it out. I'm curious if anyone would reason that out differently...?
Hard to imagine any pattern rule being applied there; you'd have to reason it out. I'm curious if anyone would reason that out differently...?
Re: New expert strategy page
The 4 and 5 form a similar kind of combination to the two numbers next to each other. Each number has 5 squares that it doesn't share with the other number, and the difference in the number of mines in those 5 squares must be the same as the difference in the actual clues. So in this case we know the 4 has 2 mines in its 5 squares so the 5 must have 3, and then the rest falls apart. The same kind of principle is at work when you look at the second square in a 1Hole or 2Hole, although there it's a little more obvious.
You can also have two diagonal squares (they each have 2 shared squares and 5 unshared), two squares a knight's move away from each other (2 shared squares and 6 unshared), and two squares two diagonal units away (1 shared square and 7 unshared). Of course these are a lot less likely to be useful... but they may still pop up in certain logic puzzles and tricky situations from time to time.
You can also have two diagonal squares (they each have 2 shared squares and 5 unshared), two squares a knight's move away from each other (2 shared squares and 6 unshared), and two squares two diagonal units away (1 shared square and 7 unshared). Of course these are a lot less likely to be useful... but they may still pop up in certain logic puzzles and tricky situations from time to time.
NF player. Best scores 11039.
Re: New expert strategy page
As qqwref says, this is indeed a pattern you already have outlined on your site. On the "holes" page the case where you have the two "?" symbols. When ? = 2, the 5 and 4 reduces to that case.computronium wrote:Hard to imagine any pattern rule being applied there; you'd have to reason it out. I'm curious if anyone would reason that out differently...?
The top is the ?=2 case, the bottom is with extra mines added and the 2's incremented accordingly. See how the bottom example reduces to the top one with removal of mines.
Re: New expert strategy page
Or, in terms of the two rules I posted: Let a be the area shared by the 4 and 5 in the same row. Because of the 4, a contains exactly two mines, fully satisfying the 5.aradesh wrote:As qqwref says, this is indeed a pattern you already have outlined on your site. On the "holes" page the case where you have the two "?" symbols. When ? = 2, the 5 and 4 reduces to that case.computronium wrote:Hard to imagine any pattern rule being applied there; you'd have to reason it out. I'm curious if anyone would reason that out differently...?
The top is the ?=2 case, the bottom is with extra mines added and the 2's incremented accordingly. See how the bottom example reduces to the top one with removal of mines.
I should have added one thing there: If a,b are disjoint areas, and c is their union, then a+b=c, therefore, if we know a and c,´we also know that b=ca. Trivial though this may be, I should have written it down ^^
If only I had more time... It just occurred to me that building support for minesweeper patterns into LaTeX would be awesome for discussions like this.
Don't anthropomorphize computers  they don't like it.

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
Re: New expert strategy page
(Slowly making my way through all the responses...)
Thanks for the kudos. I agree, some exercises would be nice, and I have had some hazy thoughts on how to work them in. The site is still very much a work in progress and unfortunately I need to do a bit of overhaul before I start adding new features. I'm starting in on it tonight but am heading off to a nice warm tropical island this weekend so unless it rains a whole lot I'm not going to have a lot of time to work on itaradesh wrote:I agree, very good work, keep it up. It would be nice if perhaps these patterns had some "exercises" afterwards, with an interactive thing perhaps where you have a collection of scenarios for the user to solve which use the patterns above. (We would be happy in helping you compose such exercises if you were to do the dirtywork of programming your site)
aradesh wrote:Meanwhile I'd recommend checking out the puzzles I posted in this thread. A lot of the puzzles there require more difficult patterns and observations than the ones you've listed already, so it would be good for you to study these for ideas of further computer analysis/etc.
Yep, it wasn't terribly clear. (Besides the site overhaul I've got some better ideas for explaining the patterns.) I meant for square "a" to be a cleared square, but I agree that the logic holds whether that square is cleared or not. However, the emphasis on my site is on patterns that are a) relatively common, b) relatively easy to recognize, c) useful for clearing or flagging squares. I'm not targeting completeness whatsoever  I've already encountered a number of perfectly logical rules via computer analysis, that don't meet the criteria. The case where that "a" square doesn't seem to pop up very frequently in the course of normal play (at least in the order I clear squares  which is definitely a sort of bias that I'm at least aware of). I will also be scouring the other forums for other patterns as well  I built the site without knowing that resource even existed! Thanks for the pointer.aradesh wrote:I found some of your pattern categories a little bizarre. Let me see. For example, triangles. You have situations like this
What is the purpose of the opensquare I labelled "a"? The logic works whether anything is known about it or not. The logic holds, providing that the squares I labelled "x" contain no mines, they could be any open/safe squares.
Yep, agreed again on the clarity issues  though I suppose the more experienced players I'm aiming at would figure it out eventually, even for them, better diagrams and explanation can only help.aradesh wrote:Another example is this one.
What is the purpose of the squares I've labelled "o" as being open/safe? It is irrelevant, the logic works providing only that the squares I've marked "x" are safe and that ?=?. I wonder if newbies reading these examples will be scrutinizing their minesweeper games to make sure that there is a pattern of 3 open/safe squares like you've labelled when they don't need to.
I do plead ignorance that this forum even existed when I started the page. I did basically google "minesweeper strategy" and found a number of pages but didn't follow through to any forums. Still, my pages were designed to address an area I perceived as lacking in the pages I found, and I think it has some value as an independent perspective. That said, I'm a member now, and still playing the game obsessively, so you'll find me haunting the forums a lot more.aradesh wrote:There is one last thing I'd like to add. You appear to have done all this work on your own without talking to anybody. I'd fully recommend starting threadtopics on your various computer analyses, patterns you think are interesting, and this sort of thing. There aren't enough people posting such things. Don't worry about being uninteresting, if anything you can have infinitely many conversations with me on the topic of patterns

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
Re: New expert strategy page
Hi all  back from my awesome holiday (Fiji) where I even did a bit of work on the website while sitting around the pool drinking a mojito I've had some ideas on how to present things better that will require a bit of work but I'm making good progress. Taking a break to continue working through all the great responses...
Thanks! Yeah, I'm still pondering the scope a bit  it does have some stuff for newer players, but mostly that's there just to lay down some basic groundwork for the more advanced patterns. As Tommy points out in a later post, though, having the foundation to figure out the logic is the more important bit; my site kind of assumes (without really making the point clear) that you already have some ability in this area. I've called it an "Expert" page for that reason but... well, I'll address that more in response to your other comments qqwref wrote:Definitely some interesting stuff here. The patterns are all obvious when thinking in terms of logic (okay, except for that embedded 121, that one's clever ) but it's really nice to have them shown graphically like that. I think your page would be a great resource for newer players.
I guess here's where I'm assuming the ability to figure out the "why" the rules I list work out. The logical reasons why the 14/25/36 work out is certainly interesting, but not necessary think about when you encounter one, and in fact would only slow you down (though obviously, the *ability* to figure this sort of situation out serves you well in those situations where there's no rule of thumb). Still, with my next revision of the site I should have more room for explanations of the sort you mention, and will probably include a fair bit more. But I've been shaving seconds off my best scores (after twenty years of playing) by using these newly discovered (new to me, at least) rules without pausing to consider the "why" of how they work. Also, some (like the 132) I don't think I could have even reasoned out without computer analysis (the 132 is probably my favorite, by the way  I definitely recommend working it into your repertoire if it's not there already!).qqwref wrote:A lot of your patterns in the first few sections can be reduced down to the concept of having two squares next to each other and using the difference in their values to determine squares. For example, look at your 14/25/36 examples; the four squares in the center are shared by both numbers, so the difference must be entirely accommodated in the 3 squares on each side. Here we have 3 and 3 squares, so there must be 0 and 3 mines on the sides. In the basic 12 wall pattern you have 1 and 1 squares, so there must be 0 and 1 mines on the sides. In the "triangular" 11/22/33 patterns you have 0 and 3 squares, so there must be 0 and 0 mines on the sides. And so on. Having specific examples of this pattern is great for beginners, but explaining it as a more general idea would also be useful.
Good call. The next site revision will in fact have more room for such examples; it's looking like each pattern is going to get its own page, so I will likely include unreduced examples for each.qqwref wrote:You should also add a section somewhere explaining the idea of reducing squares  for instance, how the 121 pattern at a wall often appears in other guises (e.g. 233) depending on the mines around it. The idea is not too complicated but it is very useful to fully understand it, and know that you can recognize the same old pattern in many situations.
Very nice  hope you don't mind, I've added a link off of my Links page!qqwref wrote:PS: I don't mean to brag, but I think my javascript minesweeper is pretty nice for a free online one There are many possible settings, the graphics match the classic minesweeper, and you can play very large games (it has a scrollbar if the game is too big).

 Posts: 23
 Joined: Thu Oct 11, 2012 8:32 am
 Location: Melbourne, Australia
 Contact:
Re: New expert strategy page
Long delay on responding to this I know  my apologies. It was a lot to take in and I wanted to do it justice.
(I just remembered that later you say about the second generalized pattern that "In general, this isn't of much use." I think it maybe could be, in some otherwise hardtoquicklyresolve situations.)
This is indeed something that I considered, and am considering still. I have in fact been making good progress on a revamped version of the page, which narrows the focus of it in some respects  this module of it at least will be just a minesweeper patterns page, and things will hopefully be a lot clearer, but at the same will emphasize that learning the patterns is not a substitute for knowing basic solving techniques  the mental groundwork you speak of. It would probably be a better page if it started with the mental groundwork, but that feels like ground that has been covered well on several of the pages linked to from minesweeper.info, and the patterns are what's interesting to me right now.Tommy wrote:OK. My promised long post shall be written and testing shall begin in 3... 2... 1 (am actually listening to portal 2 soundtrack while writing this ).
First of all, thank you for taking the time to do this! It's always great to see people contributing to this community, and you created an awesome website that I will most likely link to very often in the future
While I think that you really need to know how to actually solve patterns to be any good at the game, I also know that there are many people out there who are too lazy to learn to do so just like that, on their own  things like this could significantly lower the barrier of entry into this community. I guess that this project could be to minesweeper what the beginner method is to speedcubing  it will make it far easier to get people into the game. And maybe provide the mental groundwork to make actual logicbased pattern solving accessible to more people.
Still  I cannot emphasize enough that the ability to apply logic is an essential part of this game, and feel like your page does not really reflect that. I understand that you want learning patterns, not logic to be the primary focus, and that material explaining the logic of the game already exists, but stating that somewhere would be really nice.
I find these fascinating  seriously  because they seem to be a different way to formulate the various decisions required when solving a minesweeper board. They are almost like axioms. The first seems inherent to my play, but the second seems almost alien to me. Not that that's wrong in any way; it's just that my page was an effort to capture some techniques that I'd started actively thinking about when playing, which have shaved considerable time off my best scores. Can I ask if you actively apply the second one to your thought process in the course of a typical game? I've even tried a few times but it seems to just slow me down. It may just be a question of familiarity.Tommy wrote:I'd suggest adding a logic section near the end that explains the following two "generalized patterns":
 Areas with fixed mine numbers.
 Two open squares surrounded by unknown squares.
Repeated application of these two patterns will do almost everything for you, including being sufficient to understand why every pattern (except for one, which is surprising considering how simple it is) (and whioch one is left as an exercise to the reader!) you have on your site so far works.
(I just remembered that later you say about the second generalized pattern that "In general, this isn't of much use." I think it maybe could be, in some otherwise hardtoquicklyresolve situations.)
This is a thing of beauty, and an approach that I don't know if I ever would have considered. It reminds me of how physicists often use alternate formulations of the same phenomena to gain new insights. And it's interesting how many patterns on my page it can explain, especially when combined with the Areas With Fixed Mine Numbers pattern. Still  for good or ill, my page has a bias towards utility. E.g. if you see this pattern, then these cells will be mines and these others will be clear. There's not a whole lot of "why" to it  on the assumption that a sufficiently advanced player could figure out the why if they want. And, as these axioms show, there might be a number of different ways in which they could do that!Tommy wrote:Two open squares surrounded by unknown squares
If there were one thing I would teach people about minesweeper logic, it would be this. It is a bit complicated, but well worth learning if you are interested in minesweeper solving at all. This is also what qqwref posted, as I noticed too late  I'm going to keep mine nonetheless since it is more detailed.
Consider, in general, the following situation:
...
And define areas a,b,c like so:
...
a belongs only to A, b belongs only to B, c is shared by both numbers. ...etc...
I would estimate I use the patterns on the combos page a good six or seven times a game. The To Do list for my page includes letting you sort the patterns by frequency of occurrence (determined by repeated experiments), but that's low in priority at the moment.Tommy wrote: ... The patterns in http://computronium.org/minesweeper/combos.html don't happen that often.
It's definitely still bouncing around my brain and may well transform my solving technique before long!Tommy wrote:This rule may sound complicated, but really isn't, once you get the hang of it. And it alone can solve all but 2 of the patterns on your site, unless I missed one. Finding them would be a great exercise, by the way
These seem a lot closer to my thought processes while solving. I said I was leaving the basic solving techniques off my page for now because others have covered it, but this stuff  both the practical summary here and the detailed descriptions of it above  don't seem to be covered anywhere else. I see basic solving techniques as a separate module to the patterns  maybe a horse that should be put before the cart, but I'm going to leave it on the To Do list until my thoughts on it have gelled a bit more.Tommy wrote:I also understand that you probably want a more practical approach here. So, basically, the following are rules of thumb for when to apply a rule:
...
Yep, this is happening in the revampTommy wrote:Other suggestions:
I agree that using placeholders instead of blanks is a good idea. If you don't want to divert attention from the relevant squares, maybe give them very subtle, backgroundish colors.
Thanks a ton for all the feedback and insight! Yeah, I envision it eventually becoming a more wellrounded page, with more fundamentals and such, but it will take time. (After the patterns section is done, I'm planning an assault on guessing strategies, as is being discussed in the Math and Theory section.) The feedback from everyone on this site has been invaluable so far and I will keep plugging away...Tommy wrote:Also: It would be really awesome if you added a "fundamentals" section that explains the rules of the game, and the fact that numbers with just as many adjacent squares as themselves only have mines surrounding them. Your post leads me to believe that you left them out because they were not within the intended scope of the page  however, if that were there, your page could function as a pretty comprehensive, groundup tutorial that people could just provide a single link to!
OK. I think this post is long enough already; Thanks to everyone who made it through. And thanks again for creating that website! I realize that most of this post is actually just my explanation of those two rules  feel free to reuse parts of it, if necessary.
Re: New expert strategy page
Wow, this is one beast of a discussion . How have I been missing out on all the fun?
Let me then not waste any more time! This post is just gonna share how I understand deductive patterns, and thus will be all about our old friend, constraints. If you know what I'm gonna be talking about, then you can skim this post without much loss. If, however, you don't know what I'm talking about, feel free to read all about constraints in Raphael Collet's article, Playing the Minesweeper with Constraints. If you're lazy, don't worry, I'll be giving a brief intro to constraint and what they are in what's to follow.
A constraint is a linear equation relating a revealed number with the minestates of the squares surrounding it. In other words, if we were to label a number (n) and the squares around it (x1x8), like this
then we could formulate a linear equation from it like this
where x1x8 can take on the values 0 and 1, and n's value is the number given.
How does this help us? Well, in the trivial cases we'll find that (upon taking the solved squares in x1x8 into account) the constraints reduces either to one where the number of terms on the left equals the number on the right (not number of terms, there's always one on the right), or to one where the number on the right is 0 (and there are still unsolved squares on the left). In the former case all the elements on the left then become identically 1 (i.e., they must all be mines), while in the former they all become identically 0 (i.e., they must all be safe). An example of the former is a 3 with three closed squares around it, and an example of the latter is a 2 with four unsolved squares around it and two flagged (i.e., found/solved for) mines (meaning we can just open the four closed squares.
Most of the deductions we make during the course of the game are to some extent summed up in these two scenarios. They aren't, as you might have guesses, the whole story. At some point in a game like exp, it becomes necessary to start making deductions using multiple constraints simultaneously, like the classic 21 type pattern. Most of the patterns talked about above are examples of two constraints being employed simultaneously to arrive at a deductive result. How do we do these kinds of deductions in a constraint framework?
Well we first need to tinker a bit with how we build constraints. The key thing to notice about multiconstraint deductions (i.e., deductions using multiple constraints simultaneously), is that they work by considering groups of squares as well as individual squares. Keeping this in mind we can rewrite the constraint above into this
Here we've now written it in terms of the three horizontal 'layers' of the 3x3 region around the number n. We could also have done this with the vertical 'layers', yielding a third constraint (remember, the initial one still counts). It's easy to see that we can come up with quite a large number of constraints from just the one initial one. I'm not, however gonna elaborate on those others here, as this type of grouped constraint is useful enough for this discussion.
Consider now the scenario where we have two numbers right next to each other, surrounded by unsolved squares:
where I've labelled the squares sneakily. Squares a1a3 form group A, and analogously we ge groups B and C. Squares n1 and n2 are, of course, the two numbers/clues. From this position we can generate the following constraints (similar to how we generated the constraints earlier)
which allow us to do all sorts of cool things. First, however, it is important to note that while in the initial constraint case the terms on the left had an implied constraint on which values they could have, i.e., 0 or 1 (or e.g., x1 <= 1), this implied constraint doesn't hold for the group terms. For the group terms the analogous implied constraint is that [the group term's value] <= [the number of members in the group] (or e.g., A <= 3, in the case above).
Ok, so now to apply this formulation to an example. Let's consider the case where n1 = n2, and we know something about A. Basically it comes down to the two groups A and C containing equal numbers of mines due to the identity of B, and the equality of the numbers n1 and n2. We usually have some info on the squares contained in A and C, though, and it's this extra knowledge that generates the multitude of different patterns. Oh, that, and the case where the numbers n1 and n2 aren't equal.
So, we see that large numbers of patterns can be distilled into a single kind of construction in the constraints framework. After you understand what makes these classes of deductions different on a basic constraint level, it's just a matter of grinding out the different ways in which a certain situation can manifest itself. This also reveals the basis of socalled 'reduced patterns'. They are literally patterns who's constraints reduce to familiar forms.
Just for completeness I'll note here that there are cases in which you need to utilise more than two constraints simultaneously to obtain a deductive result, but I'm not gonna go into those situations (coz I haven't really given them much thought ). As an aside, as well, I wanna touch on when a situation can be said to contain a forced guess. Let's say you list all the constraints (including group constraints) corresponding to a certain position, and that a group variable (like A) counts as a seperate variable. Then, if you have the same number of unknown variables as constraints you can make deductive progress, but if there are more unknown variables than constraints, then you have to make a guess. As far as I've been able to tell it really is that simple. How you might employ this in practise to identify places where you have to guess, is look for closed groups of constraints, i.e., a subset of all the constraints generateable from a particular board state, containing no unknown variable contained in any constraint outside the subset. Then apply the above reasoning (about the number of unknown variables and constraints) to that subset.
Ok, that's about that, and I really need to get going, so enjoy this little morsel of a contribution
Let me then not waste any more time! This post is just gonna share how I understand deductive patterns, and thus will be all about our old friend, constraints. If you know what I'm gonna be talking about, then you can skim this post without much loss. If, however, you don't know what I'm talking about, feel free to read all about constraints in Raphael Collet's article, Playing the Minesweeper with Constraints. If you're lazy, don't worry, I'll be giving a brief intro to constraint and what they are in what's to follow.
A constraint is a linear equation relating a revealed number with the minestates of the squares surrounding it. In other words, if we were to label a number (n) and the squares around it (x1x8), like this
Code: Select all
x1 x2 x3
x4 n x5
x6 x7 x8
Code: Select all
x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 = n
How does this help us? Well, in the trivial cases we'll find that (upon taking the solved squares in x1x8 into account) the constraints reduces either to one where the number of terms on the left equals the number on the right (not number of terms, there's always one on the right), or to one where the number on the right is 0 (and there are still unsolved squares on the left). In the former case all the elements on the left then become identically 1 (i.e., they must all be mines), while in the former they all become identically 0 (i.e., they must all be safe). An example of the former is a 3 with three closed squares around it, and an example of the latter is a 2 with four unsolved squares around it and two flagged (i.e., found/solved for) mines (meaning we can just open the four closed squares.
Most of the deductions we make during the course of the game are to some extent summed up in these two scenarios. They aren't, as you might have guesses, the whole story. At some point in a game like exp, it becomes necessary to start making deductions using multiple constraints simultaneously, like the classic 21 type pattern. Most of the patterns talked about above are examples of two constraints being employed simultaneously to arrive at a deductive result. How do we do these kinds of deductions in a constraint framework?
Well we first need to tinker a bit with how we build constraints. The key thing to notice about multiconstraint deductions (i.e., deductions using multiple constraints simultaneously), is that they work by considering groups of squares as well as individual squares. Keeping this in mind we can rewrite the constraint above into this
Code: Select all
{x1,x2,x3} + {x4,x5} + {x6,x7,x8} = n
Consider now the scenario where we have two numbers right next to each other, surrounded by unsolved squares:
Code: Select all
a1 b1 b2 c1
a2 n1 n2 c2
a3 b3 b4 c3
Code: Select all
a1 + a2 + a3 + b1 + b2 + b3 + b4 = n1,
c1 + c2 + c3 + b1 + b2 + b3 + b4 = n2,
{a1,a2,a3} + {b1,b2,b3,b4} = A + B = n1, and
{c1,c2,c3} + {b1,b2,b3,b4} = C + B = n2
Ok, so now to apply this formulation to an example. Let's consider the case where n1 = n2, and we know something about A. Basically it comes down to the two groups A and C containing equal numbers of mines due to the identity of B, and the equality of the numbers n1 and n2. We usually have some info on the squares contained in A and C, though, and it's this extra knowledge that generates the multitude of different patterns. Oh, that, and the case where the numbers n1 and n2 aren't equal.
So, we see that large numbers of patterns can be distilled into a single kind of construction in the constraints framework. After you understand what makes these classes of deductions different on a basic constraint level, it's just a matter of grinding out the different ways in which a certain situation can manifest itself. This also reveals the basis of socalled 'reduced patterns'. They are literally patterns who's constraints reduce to familiar forms.
Just for completeness I'll note here that there are cases in which you need to utilise more than two constraints simultaneously to obtain a deductive result, but I'm not gonna go into those situations (coz I haven't really given them much thought ). As an aside, as well, I wanna touch on when a situation can be said to contain a forced guess. Let's say you list all the constraints (including group constraints) corresponding to a certain position, and that a group variable (like A) counts as a seperate variable. Then, if you have the same number of unknown variables as constraints you can make deductive progress, but if there are more unknown variables than constraints, then you have to make a guess. As far as I've been able to tell it really is that simple. How you might employ this in practise to identify places where you have to guess, is look for closed groups of constraints, i.e., a subset of all the constraints generateable from a particular board state, containing no unknown variable contained in any constraint outside the subset. Then apply the above reasoning (about the number of unknown variables and constraints) to that subset.
Ok, that's about that, and I really need to get going, so enjoy this little morsel of a contribution
The number of minesweeper boards:
Exp: 140055249834355336357264746443955277014822625680974475320364702381803619892657792049596418323789908370400 (1.4e104)
Int: 13115156192346373485000211099954895788134532256 (1.3e46) &
Beg: 18934455246 (1.9e10)
Exp: 140055249834355336357264746443955277014822625680974475320364702381803619892657792049596418323789908370400 (1.4e104)
Int: 13115156192346373485000211099954895788134532256 (1.3e46) &
Beg: 18934455246 (1.9e10)