Sudoku Programmers Forum Index

 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister   ProfileProfile   Log inLog in          Games  Calendar

Log in to check your private messagesLog in to check your private messages   

Nice Loop general
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Sudoku Programmers Forum Index -> Solving sudoku
View previous topic :: View next topic  
Author Message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Fri Mar 05, 2010 6:55 am    Post subject: Nice Loop general Reply with quote

I Like to discuss about Method Nice Loop. But first we should make a temporary Understanding, what is "The best Sudoku Solver"? Take this:

1. The Solver is using only logical Methods
2. The Solver can solve a certain Sudoku Grid, all other known Solvers NOT (without Guessing)
3. The Speed is on the third Place (within the acceptable Borders, of course)


If OK:

NOT many Solvers use the logical Nice Loop Method. If your Solver do know (use) it, you will agree, this Method is (combined with his Sisters Double- and Triple-Implication) the most powerfull one, the most demanding, but other Site - it uses only pure basic Sudoku Definition direct.


Well, this Time I would only ask you, can your Sudoku Solver solve next Grids (found on NET) without Guessing:

1.......9..7.8...6...3...5.....4.8..7....1....96........82.....5......63.6..7.4..
...7.....8.1..6.....9..54.829......3..8..39..6..2...7.9.........8...9.25.32.6.7..
8.....9...4..6..3...61....8..15....7.8..7....9....3...5....23...6.....4...86..7.5
9..7..1...2..1...7...5..6........56......32..1...5...824..813...1542...6..9.....2
7..9....6....6..83.....32..8....9....5.....3...24....1..8...6...6..1...741...5.9.
.4.3..9...7...5.2.8........6.....352..5....9...4...6.....9....8....42.7..9.16....
.6.....7.87.3..59...54..2....9.564.....9...8.2.78.....7....4..2..8...71.........9
.32..........2..4.9.7..5....1...3.98...2..6...68.1..2....53....57......3....471..
.3.....82..2.9......4..67......43....1....5..7..6.5.2..9.2....6..65....9......31.
..3.4..1....192......3....7..4.6....5...34..2.8.9.........7...67......58.29....3.
..23.....85..4....97.5.1...4.....89..2.91...3.....4..6......5.9.....5.1...7.3...8


Next time about Method WeddingRing, a simple Upgrade of Nice Loop, the same Logic - other Philosophie, wich solves all the Grids above (without Guessing).


Regards IvoC
Back to top
View user's profile Send private message
hobiwan

Joined: 11 Feb 2008
Posts: 83
:

Items
PostPosted: Fri Mar 05, 2010 7:59 am    Post subject: Re: Nice Loop general Reply with quote

ivoc wrote:
Well, this Time I would only ask you, can your Sudoku Solver solve next Grids (found on NET) without Guessing:

Yes, it can, which means that their SE rating is < 9.3 on average. If you want to try harder puzzles with your solver I would suggest looking in the Patterns Game Results thread in the Player's Forum. Try puzzles with a SE rating > 9.5
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Sun Mar 07, 2010 12:40 pm    Post subject: Re: Nice Loop general Reply with quote

hobywan,

Would you be so kind please and solve (only) one of written grids and write step by step the used methods. A "logical" solver shows it automatically if requested! Maybe I ask too much? Sorry!

However, I'll be very verry obligated to you!

Regards IvoC

P.S. Now I know! You inserted a link. Thanks, but it is why my (quoted) answer are not accepted!
Back to top
View user's profile Send private message
hobiwan

Joined: 11 Feb 2008
Posts: 83
:

Items
PostPosted: Sun Mar 07, 2010 9:00 pm    Post subject: Reply with quote

Sure, but I have to warn you, some of the steps are pretty ugly.
Code:
.6.....7.87.3..59...54..2....9.564.....9...8.2.78.....7....4..2..8...71.........9

Hidden Single: r4c2=8
Hidden Single: r4c8=2
Hidden Single: r6c7=9
Hidden Single: r9c8=4
Locked Candidates Type 1 (Pointing): 2 in b1 => r9c3<>2
Locked Candidates Type 1 (Pointing): 6 in b2 => r789c5<>6
Locked Candidates Type 1 (Pointing): 6 in b4 => r5c79<>6
Locked Candidates Type 1 (Pointing): 8 in b9 => r1c7<>8
Locked Candidates Type 2 (Claiming): 6 in c7 => r7c8,r8c9<>6
Naked Pair: 3,5 in r7c8,r8c9 => r79c7<>3
2-String Kite: 3 in r1c7,r4c1 (verbunden durch r4c9,r5c7) => r1c1<>3

.--------------------.-------------------------.---------------.
| 149    6      1234 | 125     1289     12589  | 13  7    1348 |
| 8      7      124  | 3       126     *12     | 5   9    146  |
| 139    139    5    | 4       16789    1789   | 2   36   1368 |
:--------------------+-------------------------+---------------:
| 13     8      9    | 17      5        6      | 4   2    137  |
| 13456  1345   1346 | 9      *12-347  *1237   | 13  8    1357 |
| 2      1345   7    | 8       134     *13     | 9   356  1356 |
:--------------------+-------------------------+---------------:
| 7      1359   136  | 156     1389     4      | 68  35   2    |
| 34569  23459  8    | 256     239      2359   | 7   1    35   |
| 1356   1235   136  | 12567   12378    123578 | 68  4    9    |
'--------------------'-------------------------'---------------'
Discontinuous Nice Loop: 3 r5c5 -3- r6c6 -1- r2c6 -2- r5c6 =2= r5c5 => r5c5<>3

.--------------------.------------------------.---------------.
| 149    6      1234 | 125     1289    12589  | 13  7    1348 |
| 8      7      124  | 3       126    *12     | 5   9    146  |
| 139    139    5    | 4       16789   1789   | 2   36   1368 |
:--------------------+------------------------+---------------:
| 13     8      9    | 17      5       6      | 4   2    137  |
| 13456  1345   1346 | 9      *1247   *1237   | 13  8    1357 |
| 2      1345   7    | 8      *1-34   *13     | 9   356  1356 |
:--------------------+------------------------+---------------:
| 7      1359   136  | 156     1389    4      | 68  35   2    |
| 34569  23459  8    | 256     239     2359   | 7   1    35   |
| 1356   1235   136  | 12567   12378   123578 | 68  4    9    |
'--------------------'------------------------'---------------'
Discontinuous Nice Loop: 3 r6c5 -3- r6c6 -1- r2c6 -2- r5c6 =2= r5c5 =4= r6c5 => r6c5<>3

Locked Candidates Type 1 (Pointing): 3 in b5 => r89c6<>3

.--------------------.---------------------.------------------.
| 149    6      1234 | 125    1289   12589 | 13   7     1348  |
| 8      7      124  | 3      126    12    | 5    9     146   |
| 139    139    5    | 4      16789  1789  | 2    36    1368  |
:--------------------+---------------------+------------------:
| 13     8      9    | 17     5      6     | 4    2     137   |
| 13456  1345   1346 | 9      1247   1237  | 13   8     1357  |
| 2      1345   7    | 8      14     13    | 9   *356  *1-356 |
:--------------------+---------------------+------------------:
| 7      1359   136  | 156    1389   4     | 68  *35    2     |
| 34569  23459  8    | 256    239    259   | 7    1    *35    |
| 1356   1235   136  | 12567  12378  12578 | 68   4     9     |
'--------------------'---------------------'------------------'
Discontinuous Nice Loop: 3 r6c9 -3- r8c9 -5- r7c8 =5= r6c8 =6= r6c9 => r6c9<>3

.---------------------.----------------------.------------------.
| 149    6      *1234 | 125     1289   12589 | *13   7    *1348 |
| 8      7      *124  | 3      *-1-26  12    |  5    9    *146  |
| 139    139     5    | 4      *16789  1789  |  2   *36    1368 |
:---------------------+----------------------+------------------:
| 13     8       9    | 17      5      6     |  4    2     137  |
| 13456  1345    1346 | 9       1247   1237  |  13   8     1357 |
| 2      1345    7    | 8       14     13    |  9    356   156  |
:---------------------+----------------------+------------------:
| 7      1359    136  | 156     1389   4     |  68   35    2    |
| 34569  23459   8    | 256     239    259   |  7    1     35   |
| 1356   1235    136  | 12567   12378  12578 |  68   4     9    |
'---------------------'----------------------'------------------'
Grouped Discontinuous Nice Loop: 1/2 r2c5 =6= r2c9 =4= r2c3 =2= r1c3 =3= r1c79 -3- r3c8 -6- r3c5 =6= r2c5 => r2c5<>1, r2c5<>2

Naked Single: r2c5=6

.--------------------.-----------------------.------------------.
| 149    6      1234 |  125    1289    12589 |  13   7     1348 |
| 8      7      124  |  3      6       12    |  5    9     14   |
| 139    139    5    |  4      1789    1789  |  2    36    1368 |
:--------------------+-----------------------+------------------:
| 13     8      9    | A17     5       6     |  4    2    B137  |
| 13456  1345   1346 |  9      1247    1237  | B13   8     1357 |
| 2      1345   7    |  8      14     A13    |  9   -356   156  |
:--------------------+-----------------------+------------------:
| 7      1359   136  |  156    1389    4     |  68   35    2    |
| 34569  23459  8    |  256    239     259   |  7    1     35   |
| 1356   1235   136  |  12567  12378   12578 |  68   4     9    |
'--------------------'-----------------------'------------------'
Almost Locked Set XZ-Rule: A=r4c4,r6c6 {137}, B=r4c9,r5c7 {137}, X=7, Z=3 => r6c8<>3

Empty Rectangle: 3 in b1 (r37c8) => r7c3<>3

.------------------------.-----------------------.----------------.
| B149      6      C1234 | 125     1289    12589 |  13  7    1348 |
|  8        7      C124  | 3       6       12    |  5   9    14   |
| B139      139     5    | 4       1789    1789  |  2   36   1368 |
:------------------------+-----------------------+----------------:
| B13       8       9    | 17      5       6     |  4   2    137  |
| -1-3456  A1345   A1346 | 9      A1247   A1237  | A13  8   A1357 |
|  2        1345    7    | 8       14      13    |  9   56   156  |
:------------------------+-----------------------+----------------:
|  7        1359   C16   | 156     1389    4     |  68  35   2    |
|  34569    23459   8    | 256     239     259   |  7   1    35   |
|  1356     1235   C136  | 12567   12378   12578 |  68  4    9    |
'------------------------'-----------------------'----------------'
Almost Locked Set XY-Wing: A=r5c235679 {1234567}, B=r134c1 {1349}, C=r1279c3 {12346}, X,Y=4,6, Z=1,3 => r5c1<>1, r5c1<>3

.--------------------.---------------------.--------------.
| 149    6      1234 | 125    1289   12589 | 13  7   1348 |
| 8      7      124  | 3      6      12    | 5   9   14   |
| 139    139    5    | 4      1789   1789  | 2   36  1368 |
:--------------------+---------------------+--------------:
| 13     8      9    | 17     5      6     | 4   2   137  |
| 456    1345   1346 | 9      1247   1237  | 13  8   1357 |
| 2      1345   7    | 8      14     13    | 9   56  156  |
:--------------------+---------------------+--------------:
| 7      1359   16   | 156    1389   4     | 68  35  2    |
| 34569  23459  8    | 256    239    259   | 7   1   35   |
| 1356   1235   136  | 12567  12378  12578 | 68  4   9    |
'--------------------'---------------------'--------------'
Forcing Net Verity => r1c6=5
  r7c2=5 (r8c9=5 r8c6<>5) r7c5=9 r8c6=2 (r8c4<>2) r1c4=2 r1c6=5
  r7c4=5 r1c6=5
  r7c8=5 r3c8=3 (r1c3=3 r1c3<>4) r1c7=1 r2c9=4 (r1c1=4 r8c2=4 r9c2=2 r9c4<>2) r5c3=4 r5c1=6 r8c4=6 r1c4=2 r1c6=5

.--------------------.--------------------.--------------.
| 149    6      1234 | 12     1289   5    | 13  7   1348 |
| 8      7      124  | 3      6      12   | 5   9   14   |
| 139    139    5    | 4      1789   1789 | 2   36  1368 |
:--------------------+--------------------+--------------:
| 13     8      9    | 17     5      6    | 4   2   137  |
| 456    1345   1346 | 9      1247   1237 | 13  8   1357 |
| 2      1345   7    | 8      14     13   | 9   56  156  |
:--------------------+--------------------+--------------:
| 7      1359   16   | 156    1389   4    | 68  35  2    |
| 34569  23459  8    | 256    239    29   | 7   1   35   |
| 1356   1235   136  | 12567  12378  1278 | 68  4   9    |
'--------------------'--------------------'--------------'
Forcing Net Contradiction in c2 => r1c3<>3
  r1c3=3 r3c2<>3
  r1c3=3 r5c7=3 r5c2<>3
  r1c3=3 r5c7=3 r6c6=3 r6c2<>3
  r1c3=3 (r1c3<>4) r2c3=2 r1c1=4 r1c5=9 r7c2=9 r7c2<>3
  r1c3=3 (r1c3<>4) r2c3=2 r1c1=4 r8c2=4 r8c2<>3
  r1c3=3 (r1c3<>4) r2c3=2 r1c1=4 r8c2=4 r9c2=2 r9c2<>3

Locked Candidates Type 1 (Pointing): 3 in b1 => r3c89<>3
Naked Single: r3c8=6
Naked Single: r6c8=5
Full House: r7c8=3
Naked Single: r8c9=5
Hidden Single: r6c9=6
Naked Pair: 1,2 in r1c4,r2c6 => r13c5,r3c6<>1, r1c5<>2

.------------------.--------------------.-------------.
| 149   6     124  | 12     89     5    | 13  7  1348 |
| 8     7     124  | 3      6      12   | 5   9  14   |
| 139   139   5    | 4      789    789  | 2   6  18   |
:------------------+--------------------+-------------:
| 13    8     9    | 17     5      6    | 4   2  137  |
| 456   1345  1346 | 9      1247   1237 | 13  8  137  |
| 2     134   7    | 8      14     13   | 9   5  6    |
:------------------+--------------------+-------------:
| 7     159   16   | 156    189    4    | 68  3  2    |
| 3469  2349  8    | 26     239    29   | 7   1  5    |
| 1356  1235  136  | 12567  12378  1278 | 68  4  9    |
'------------------'--------------------'-------------'
Forcing Net Verity => r5c9<>7
  r7c5=1 (r6c5=4 r6c2<>4) r7c3=6 (r8c1<>6) r5c1=6 (r5c1<>4) r5c2=5 (r8c2=4 r8c1<>4) r5c3=4 r9c3=3 r8c1=9 r3c6=9 (r3c6<>7) r9c6=8 r5c6=7 r5c9<>7
  r7c5=8 r7c7=6 r7c3=1 (r1c3<>1) r1c1=1 (r4c1=3 r4c9<>3) r3c9=1 (r3c1<>1) (r3c2<>1) (r3c1<>1) r4c9=7 r5c9<>7
  r7c5=9 (r3c6=9 r3c6<>7) (r7c5<>8) r1c5=8 r9c6=8 r5c6=7 r5c9<>7

Singles to end
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Mon Mar 08, 2010 6:07 am    Post subject: Reply with quote

Sorry, hobywan, I'm deeply sorry! I don't know, how it has happened.

Writting my solver, I have had as a "model" the best accessible sudoku solver I found on NET, named InToSudoku (BTW, now this site is "half alive" only, no forum more and mail contact adress is not valid. What a loss!).

By mistake I have written the grids - the solver InToSudoku do need guess, my solver doesn't. Of course, all this grids are pretty ugly! To solve them in addition to standard methods the logical method WeddingRing is implemented and used, a powerful upgrade of Nice Loop.

However, my solver really doesn't solve next grids without guess:

.....56....5.....76..9...3...7.....42...6.9...8.....6.1.28...9......3...3....7..5
.6.9....35....4.2.....8.4..8......5...3...7...9......1..1.5.....7.3....99....2.4.
..29......3..8....4....1.5...9.7...2.1.....3.6.....4.......3..1....6..8...72..9..

and many others, of course. From all 633 grids you have sugested my solver doesn't solve 11 without guess. Pretty good, isn't it?


Thanks for your kindness and regards IvoC
Back to top
View user's profile Send private message
hobiwan

Joined: 11 Feb 2008
Posts: 83
:

Items
PostPosted: Tue Mar 09, 2010 9:52 pm    Post subject: Reply with quote

If your solver really can solve all but 11 puzzles with SE > 9.5 from the Patterns Game then I am really impressed!

I dont understand why it cant solve the first of the three last puzzles you posted though: It doesnt even need a Forcing chain.
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Wed Mar 10, 2010 1:54 pm    Post subject: Reply with quote

hobiwan wrote:
If your solver really can solve all but 11 puzzles with SE > 9.5 from the Patterns Game then I am really impressed!

I dont understand why it cant solve the first of the three last puzzles you posted though: It doesnt even need a Forcing chain.



Thanks for the compliment!

It's true, only 11!

I have written a litle test procedure to scroll automatically through grids and only 11 have been found as guessed. I told you, the Wedding Ring is really powerful. I have NOT implemented Forcing Chains; Wedding Ring replaces all Forcing Chains, double and triple!

In case of .....56....5.....76..9...3...7.....42...6.9...8.....6.1.28...9......3...3....7..5

by me the NoLogic is used 2-times, Wedding Ring 4-times.


I'll answer you all questions - with pleasure!

Regards IvoC
Back to top
View user's profile Send private message
strmckr

Joined: 24 Apr 2009
Posts: 52
:

Items
PostPosted: Fri Mar 12, 2010 5:59 am    Post subject: Reply with quote

Quote:
Wedding Ring
show and demonstrate exactly what you are talking about as that name has not been referenced before on any of the sudoku forums.

.....56....5.....76..9...3...7.....42...6.9...8.....6.1.28...9......3...3....7..5
p.s hodoku solves this with logic only.
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Fri Mar 12, 2010 7:38 am    Post subject: Reply with quote

strmckr wrote:
Quote:
Wedding Ring
show and demonstrate exactly what you are talking about as that name has not been referenced before on any of the sudoku forums.

.....56....5.....76..9...3...7.....42...6.9...8.....6.1.28...9......3...3....7..5
p.s hodoku solves this with logic only.



My english is very poor and I don't understand you or I understand you wrong.

I have vritten:

To solve .....56....5.....76..9...3...7.....42...6.9...8.....6.1.28...9......3...3....7..5

my solver uses NoLogic (guess) 2-times and WeddingRing 4-times. If hodoku solves this grid without NoLogic (without guess, pure logic only), I give up and there is no rational reason to explain anything, I'm sorry to taking your time! (IntoSudoku solver uses Nice Loop 28-, Dual Implications 2-, Triple Implication 1- and NoLogic 3- times)

WeddingRing is my "product" never published od NET!

Regards IvoC
Back to top
View user's profile Send private message
hobiwan

Joined: 11 Feb 2008
Posts: 83
:

Items
PostPosted: Fri Mar 12, 2010 6:30 pm    Post subject: Reply with quote

Hi ivoc,

my solver (http://hodoku.sourceforge.net) uses
    1 Locked Pair
    6 Locked Candidates
    1 Naked Triple
    1 Hidden Pair
    2 Skyscraper
    2 Finned X-Wing
    2 Finned Swordfish
    1 Sue de Coq
    1 Simple Colors
    23 Nice Loops/AICs
    4 Grouped nice Loops/AICs
    1 Almost Lock Set XY-Wing

for the puzzle in question. Perhaps you could post the state of the puzzle where your solver uses NoLogic the first time?

I think what strmckr meant is, that it would be nice to get an explanation what "Wedding Ring" is (perhaps with a few examples). I at least have no idea what this technique is and how it works.
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Sat Mar 13, 2010 8:25 am    Post subject: Reply with quote

It seems, nobody but us is interested in this theme. Not to boring the others and because my solver shows the steps/situations in graphical and PDF modus only, I suggest to continue in private mail modus.


If you agree, ivo.coz@gmail.com

Regards IvoC
Back to top
View user's profile Send private message
tarek

Joined: 31 Dec 2005
Posts: 153
:
Location: London, UK

Items
PostPosted: Sat Mar 13, 2010 2:20 pm    Post subject: Reply with quote

ivoc,

if you want to conduct a private conversation then you should initiate it. There is the PM button next to each user if needed.

I have no problem with threads that have even only 1 person posting in them ... I guess if nobody else states otherwise then you should assume that everybody feels the same.

tarek
Back to top
View user's profile Send private message
hobiwan

Joined: 11 Feb 2008
Posts: 83
:

Items
PostPosted: Sat Mar 13, 2010 7:08 pm    Post subject: Reply with quote

ivoc wrote:
It seems, nobody but us is interested in this theme.

I think others (and me as well) dont know yet whether they should be interested or not.

It seems that you have developed a new method called Wedding Ring which you think is very effective. Why dont you describe your technique and give a few examples so that everybody knows what you are talking about?
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Mon Mar 15, 2010 8:04 am    Post subject: Reply with quote

Hi, hobiwan,

I will explaine, of course - no problem!

But thanks to you, I found in my solver a bug, in Unique Rectangle method, and I fixed it. Now from all 633 grids you suggested, running my solver only 7 need guess - thanks to method Wedding Ring, I hope so!

Voila:

070060900006002030020000006003100040000200008050034000900003020000700105008000000
010020300004003050060000001005700060000800002070012000400005090000400805007000000
000012300000400000105006700706000020800050003090000806008300609000008000004560000
000012300000400000506007100201000080800030007090000501008100706000008000004750000
000012300000400000401005600705000010600020007030000806003600109000001000006590000
000000000001234500020605030014000260050000010073000890040709020002413700000000000
010000020003000400000105000004060700020000080007040300000203000006000900070000010

I still think, the method Wedding Ring is a powerful method. But to "certify" my conviction I need the parallel tests. How many grids with NoLogic finds hodoku?

Would you do it using your solver, or anybody other kind person, please?

Regards IvoC
Back to top
View user's profile Send private message
ivoc

Joined: 05 Mar 2010
Posts: 18
:

Items
PostPosted: Mon Mar 15, 2010 8:13 am    Post subject: Reply with quote

*There is the PM button next to each user if needed.*

I know! But is NOT polite to send to unknown person such a message without his permission. The concrete result is evident!

Regards IvoC
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Sudoku Programmers Forum Index -> Solving sudoku All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Sudoku Programmers topic RSS feed 


Powered by phpBB © 2001, 2005 phpBB Group

Igloo Theme Version 1.0 :: Created By: Andrew Charron