Patterns Game Strategies

Interactive on-site game threads go here

Re: Patterns Game Strategies

Postby papy999 » Fri Aug 17, 2018 6:44 am

champagen,
I'm interested to have a snapshot of your new skfr to see what problems could occur with g++ compiler on Ubuntu

Even if it's not well documented or if it's an intermediate source

Do you know other person who have tried to compile a previous version of skfr ?
User avatar
papy999
 
Posts: 690
Joined: 15 September 2010

Re: Patterns Game Strategies

Postby champagne » Fri Aug 17, 2018 7:13 am

papy999 wrote:champagen,
I'm interested to have a snapshot of your new skfr to see what problems could occur with g++ compiler on Ubuntu

Even if it's not well documented or if it's an intermediate source

Do you know other person who have tried to compile a previous version of skfr ?


I'll prepare (to-day??) a zip file with the code and the project definition used in microsoft visual studio
I'll edit this post when the file will be ready for download.
I'll try to clean most of the code not used so far to make it simpler (I am using a draft derived from a previous version, with a lot of code dedicated to others tasks)

Mladen Dobrichev has a good experience of the compatibility problems in C++{ microsoft versus Linux}. He has been a very active member of the small team working on skfr
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

Re: Patterns Game Strategies

Postby 1to9only » Fri Aug 17, 2018 12:39 pm

papy999 wrote:Do you know other person who have tried to compile a previous version of skfr ?

not long ago, i did build skfr 2.0.1 with the following noted:
- using old desktop/laptop for development!
- a few minor changes to source were required to build.
- built exe sizes were smaller, about half the size of the skfr 2.0.1 exes.
- using visual studio 2015, i did get close to the skfr 2.0.1 timings.
- with g++ (latest version), times were about twice that skfr 2.0.1 times.

os: windows 64-bit
test puzzles: 108 submitted in game 319

old desktop: AMD Phenom (visual studio build)
skfr_win32_v_2_0_1.exe: 6s 302ms
skfr_win64_v2_0_1.exe: amd cpu, no SSE3 support
vs2015 32-bit: 7s 722ms
vs2015 64-bit: 6s 489ms

old laptop: AMD Turion (command line build)
skfr_win32_v_2_0_1.exe: 12s 012ms
skfr_win64_v2_0_1.exe: amd cpu, no SSE3 support
g++ 32-bit: 27s 892ms
g++ 64-bit: 24s 226ms
User avatar
1to9only
 
Posts: 4177
Joined: 04 April 2018

Re: Patterns Game Strategies

Postby papy999 » Fri Aug 17, 2018 2:30 pm

HI 1to9only,

Your experience is very valuable for windows. I have tried either to compile some of mine software with VS 2017 versus G++ (under code blocks) on Windows 10 64 bits
I found a difference in execution but not so huge : G++ generated exe 64 bits was 10% slower than VS2017 one exe 64 bits

But skfr uses some special instruction and that is perhaps the reason : I don't know if G++ on windows copes well with these because there is a kind of multilayer sandwich
Exe generated bu G++ / mingw (that mimics Linux on windows) / windows

G++ on Linux generates pure executable for Linux and the result is better

Well as soon as i 'll get champagne software, I will inform of my tests.
User avatar
papy999
 
Posts: 690
Joined: 15 September 2010

Re: Patterns Game Strategies

Postby dobrichev » Fri Aug 17, 2018 5:47 pm

Hi 1to9only,

Could you repeat the timings for the same binaries with this runtime environment variable set?
Code: Select all
OMP_NUM_THREAS=1
dobrichev
2016 Supporter
 
Posts: 1863
Joined: 24 May 2010

Re: Patterns Game Strategies

Postby 1to9only » Fri Aug 17, 2018 8:52 pm

dobrichev wrote:Could you repeat the timings for the same binaries with this runtime environment variable set?

with set OMP_NUM_THREADS=1
old laptop: AMD Turion
skfr_win32_v_2_0_1.exe: 23s 369ms
g++ 32-bit: 27s 596ms
g++ 64-bit: 24s 102ms

Checking using the Windows clock shows the above timings are correct.

with no OMP_NUM_THREADS=1 set
old laptop: AMD Turion
skfr_win32_v_2_0_1.exe: 12s 324ms
g++ 32-bit: 28s 423ms
g++ 64-bit: 24s 102ms

Now this is strange: the Windows clock shows that about half the times shown for the g++ binaries have actually elapsed!! It appears OPENMP is doing its stuff, but the combined times for both threads is displayed!! I may look into this another time.
User avatar
1to9only
 
Posts: 4177
Joined: 04 April 2018

Re: Patterns Game Strategies

Postby 1to9only » Fri Aug 17, 2018 9:52 pm

i've added some code to dump the clock time:
Code: Select all
Version: V2.0.1 dated October 16th 2012
summary of parsing
Start@22:42:40
  End@22:42:53
total elapsed time 24s 289ms

so the skfr 2.0.1 code compiles and works, just the elapsed time displayed is incorrect, might leave it out!
User avatar
1to9only
 
Posts: 4177
Joined: 04 April 2018

Re: Patterns Game Strategies

Postby champagne » Fri Aug 17, 2018 9:58 pm

The file is available on my google drive

here

file name skmppv2_R0.zip
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

Re: Patterns Game Strategies

Postby champagne » Thu Sep 20, 2018 2:52 pm

Having discussed the release of code issue with mladen Dobrichev, I finally created a github project for the code.

the code will be available here skmpp2

This is the last status of the code.

As it is, it contains many old stuff to reuse when new rules will be coded (last steps in serate, but also exocets, rank 0 logic ....)
It contains also a lot of debugging code to keep as long as the first test period is not closed.

I'll prepare in a different way a summary of the overall process applied in the games (if anybody shows interest)

I'll add soon a stand alone brute force solver to the project using the code included in it. I just have to code commands to run files to check.
The brute force used here is derived from the code of zhouyundong_2012 see here.
It is slightly different from the version used in zjcsolve
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

Re: Patterns Game Strategies

Postby champagne » Sat Oct 06, 2018 3:13 am

In parallel I made some adjustments in the code after some oddities seen in the last game and mladen Dobrichev worked hard to have a Linux version of the code

I'll test the last version in the next game.
A Linux (source and exec ) has been put in github by mladen here

I'll do my best to finish and release comments on the strategy applied to anybody interested
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

Re: Patterns Game Strategies

Postby papy999 » Mon Oct 15, 2018 9:24 am

Hello champagne
i'm testing your new software skmppv2 version 1.1 on game 327

with -c110 I find some difference with serate like (skmppv2 rates {-2,0} /serate)
1....23...4..5..2...56....4..627.....7.8.....3....19..5....4..9.8.....1...9...6..;7.8;7.8;7.2
rating serate ED=8.0/8.0/7.2;

1....23...4..5..6...57....8..126.....8.5.....7....14..2....3..4.9.....1...6...7..;7.9;7.2;3.4
rating serate ED=8.1/7.2/3.4;

1....23...2..4..5...65....7..832.....7.4.....4....59..3....1..9.6.....8...1...6..;8.9;8.9;8.6
rating serate ED=8.9/8.9/8.9;

1....23...4..5..6...27....1..358.....6.4.....8....31..5....9..4.3.....7...8...9..;9.0;9.0;8.9
rating serate ED=9.0/9.0/9.0;

1....23...2..4..5...65....7..823.....4.6.....6....79..9....1..5.6.....8...3...7..;9.1;9.1;9.0
rating serate ED=9.1/9.1/9.1;

1....23...3..4..5...67....8..152.....7.3.....2....79..9....8..6.1.....7...4...2..;9.2;9.2;9.0
rating serate ED=9.2/9.2/9.2;

1....23...4..5..1...51....6..178.....6.2.....8....59..9....3..2.7.....4...8...5..;9.2;9.2;9.2
rating serate ED=9.3/9.3/9.3;

1....23...4..5..1...61....7..521.....7.4.....3....58..8....9..4.2.....6...9...5..;9.4;9.4;9.3
rating serate ED=9.4/9.4/9.4;

1....23...2..4..5...67....2..425.....7.8.....8....49..5....3..4.8.....1...9...6..;9.4;9.4;9.3
rating serate ED=9.5/9.5/9.5;
User avatar
papy999
 
Posts: 690
Joined: 15 September 2010

Re: Patterns Game Strategies

Postby champagne » Mon Oct 15, 2018 3:48 pm

I made efforts to be closer to serate in the UR/UL area.
In the Nishio area, (ratings 7.6 8.1) I can't figure out where is the problem in serate, so, I know that the new clone, as skfr rates below serate.
The worst example is the diamond 7.7, very often seen with the clone, and nearly impossible to catch with serate

I also noticed deviations in the multichains and later, but mostoften, the new clone rates like skfr, so I have nearly no chance to reach both a good rating speed and a limited deviation towards serate. (in case I would find where the deviation comes from)

My priority is to cover the next step (dynamic plus) reaching the bottoom part of the ratings 10.x and later only, to analyze deviations

skfr to new clone first (I have seen bugs in serate)
new clone to serate if possible.

In the version 1.1 (compared to the version 1.0)

a bug (initial value missing) in the UL search has been fixed
The search depth in the dynamic area has been exended

That's it for the game process

And my preferrred process in the game is the process c111 (quick rating and split of the output)
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

game 329 highest rating

Postby champagne » Fri Nov 02, 2018 6:36 pm

Is it chance or nice strategy in the seeds selection

After four days of intensive search in the game 329, I checked about 100 millions puzzles having a serate ED >2.3

I checked how far I was from the highest ratings produced by Robbie

diamond 10.7
pearl 10.8

I found a puzzle not too far from the diamond, but with an ED too low to be elected as seed in my strategy
For the highest, the closest was at depth 4, others at depth 5.

Nearly no chance on my side to produce them so close to the game end, with so many high ED waiting for further process.

Robbie had recent very good results in high ratings. Here it can be just chance linked to a wider selection of seeds at the start or something special !!!
I am not sure that she can tell us what were the seeds for these highest ratings (assuming she accepts to open the door)
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

Re: Patterns Game Strategies

Postby Robbie » Fri Nov 02, 2018 8:37 pm

champagne

For the highest, the closest was at depth 4, others at depth 5.

What do you mean by this ?

With 17.2 million puzzles (ed>2.0), that means I've generated about 1/6 of yours,
I have found now (all serate rating)
17 10.7
2 10.8
details are (ratingx10)
108 108 106 1
108 108 98 1
107 107 107 1
107 107 105 2
107 107 104 3
107 107 103 1
107 107 99 3
107 107 98 3
107 107 96 2
107 107 76 1

I think that there is a part of algorithm in the choice of seed and a part of pure luck
I use as seed only puzzles that are compliant with Pattern game rules (valid + minimal) and that are in the nested levels range
I don't use the symmetry of given (I tried but I've a bug in my C++ software - I should try to use yours :? )

And I'm not at the moment using your new rating software, I'm only using an old version of skfr on Windows.

I think that I'm bad in the middle range, because I generated too few puzzles and I must find the way of generating 100 millions (ED>2.0) in 3 or 4 days with a selective rating process. ;)
User avatar
Robbie
 
Posts: 1004
Joined: 06 August 2018

Re: Patterns Game Strategies

Postby champagne » Fri Nov 02, 2018 9:22 pm

Robbie wrote:champagne
For the highest, the closest was at depth 4, others at depth 5.

What do you mean by this ?


Depth is for me the number of clues to change in a vicinity search.
Considering all puzzles stored in my game data base, The minimum required to get currently your highest would have been a +-4 vicinity
if the puzzle could have been selected as seed
Looking for high ED in the highest rated puzzle, I give the priority to seed having also an High ED. I have so many of them that I could not use the seed +-3 giving the diamond 10.6.
I did not check in details for the highest, but I limit the vicinity to a +-4.




Robbie wrote:champagne
With 17.2 million puzzles (ed>2.0), that means I've generated about 1/6 of yours,
I have found now (all serate rating)
17 10.7
2 10.8
...
I think that there is a part of algorithm in the choice of seed and a part of pure luck
I use as seed only puzzles that are compliant with Pattern game rules (valid + minimal) and that are in the nested levels range


I have
1x10.8 10.8 10.8 9.3
18x10.7

And I used basically as seeds puzzles reaching at minimum the dynamic level and over
except that I also investigated the vicinity of known puzzles in the range 4.5 6.1

So it can be a part of "chance".



Robbie wrote:champagne
I don't use the symmetry of given (I tried but I've a bug in my C++ software - I should try to use yours :? )
And I'm not at the moment using your new rating software, I'm only using an old version of skfr on Windows.
I think that I'm bad in the middle range, because I generated too few puzzles and I must find the way of generating 100 millions (ED>2.0) in 3 or 4 days with a selective rating process. ;)

Apparently 1to9only intensively searched the 4.5-8.1 area.

The symmetry of given on my side has 2 properties
valid puzzles cover reasonably the field
I keep also as seeds non minimal puzzles with a minimum of 8 digits.

The version of software tested here was bugged in the "dynamic plus area" (ratings 8.7 to ...9.7) but I wanted to test other small points, hoping to have an acceptable behavior.
I finished meantime the first tests (sample file out of previous games) and updated the repository.

If the pending tests are ok, I'll create a release out of the current version of the repository.
and the comments are still in draft mode, nobody pushed me to work in this direction and the to-do list is full.
champagne
2017 Supporter
 
Posts: 7454
Joined: 02 August 2007
Location: France Brittany

PreviousNext

Return to Interactive games