Commits

Shlomi Fish  committed 48d3d67

Add the qualified-seed preset.

Thanks to vendu for some help in giving it a name.

This preset aims to find short solutions.

  • Participants
  • Parent commits 92006fc

Comments (0)

Files changed (7)

File fc-solve/source/NEWS.txt

 3. Add the +--flares-iters-factor+ option (or +-fif+ for short), which
 specifies a factor to multiply the flares quotas.
 
+4. Add the +-l qualified-seed+ preset (or +-l qs+ for short),
+which somewhat improves the length of the solutions of the
++-l micro-finance-improved+ preset.
+
 Version 3.14.1: (01-Nov-2012)
 -----------------------------
 

File fc-solve/source/Presets/presetrc.proto.in

 name=micro-finance-improved
 name=mfi
 command=--read-from-file 4,micro-finance-improved.sh
+name=qualified-seed
+name=qs
+command=--read-from-file 4,rin-tin-tin.sh
 name=rin-tin-tin
 name=rtt
 command=--read-from-file 4,rin-tin-tin.sh

File fc-solve/source/Presets/presets/CMakeLists.txt

         "maliciously-obscure.sh"
         "micro-finance.sh"
         "micro-finance-improved.sh"
+        "qualified-seed.sh"
         "rin-tin-tin.sh"
         "sand-stone.sh"
         "sentient-pearls.sh"

File fc-solve/source/Presets/presets/qualified-seed.sh

+freecell-solver-range-parallel-solve 1 32000 1 \
+--flare-name 1 --method soft-dfs -to 0123456789 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 2 --method soft-dfs -to 0123467 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 3 --method random-dfs -seed 2 -to 0[01][23456789] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 4 --method random-dfs -seed 1 -to 0[0123456789] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 5 --method random-dfs -seed 3 -to 0[01][23467] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 9 --method random-dfs -seed 4 -to 0[0123467] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 10 --method random-dfs -to [01][23456789] -seed 8 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 11 --method a-star -asw 0.2,0.8,0,0,0 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 12 --method random-dfs -to [01][23456789] -seed 268 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 15 --method random-dfs -to [0123456789] -seed 142 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 16 --method a-star -asw 0.2,0.3,0.5,0,0 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 17 --method random-dfs -to [01][23456789] -seed 5 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 18 --method a-star -to 0123467 -asw 0.5,0,0.3,0,0 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 19 --method soft-dfs -to 0126394875 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 20 --method random-dfs -seed 105 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 21 --method a-star -asw 0.5,0,0.5,0,0 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 22 --method soft-dfs -to 013[2456789] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 23 --method soft-dfs -to 0123456789 -dto 19,0126394875 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 24 --method random-dfs -to 0123467 -dto 16,0[123467] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 25 --method random-dfs -seed 500 -to 0123456789 -dto 36,[01][23456789] -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 26 --method a-star -asw 5,4,0,0,0 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 27 --method random-dfs -seed 37 -to [0123]456789 -dto 30,[342]0156789 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 28 --method a-star -to 01234675 -asw 40,2,40,0,40 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 29 --method a-star -to 01234675 -asw 300,1500,0,2,50000 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 30 --method a-star -to 0123467589 -asw 300,1500,0,2,60000 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name 31 --method a-star -to 0123467589 -asw 300,1500,99,2,65000 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name foo --method a-star -to 0123467589 -asw 370,0,0,2,90000 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name irrev1 --method a-star -to 0123467589 -asw 50,0,0,0,0,50 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name irrev_half --method a-star -to 0123467589 -asw 25,0,0,0,50,25 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name on_parents --method a-star -to 0123467589 -asw 0,0,0,0,0,100 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name on_parents_half --method a-star -to 0123467589 -asw 0,0,0,0,50,50 -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name quick_sand --method random-dfs -to "[01]=rand()[23456789]=rand()" -dto "13,[0123456]=asw(1)" -sp r:tf -opt -opt-to "0123456789ABCDE" \
+-nf --flare-name encrusted --method a-star -asw "1,0,0,0,1" -to 01234769 -sp r:tf -opt -opt-to 0123456789ABCDE \
+ --flares-plan "Run:6246@1,Run:2663@2,Run:6799@3,Run:7161@4,Run:3466@5,Run:3594@9,Run:6896@10,Run:7269@11,Run:7194@12,Run:6462@15,Run:7742@16,Run:7029@17,Run:3769@18,Run:5244@19,Run:7149@20,Run:8848@21,Run:6282@22,Run:5020@23,Run:2128@24,Run:6833@25,Run:7290@26,Run:6619@27,Run:3797@28,Run:10000@29,Run:10000@30,Run:3184@31,Run:3000@foo,Run:10000@irrev1,Run:10000@irrev_half,Run:10000@on_parents,Run:10000@on_parents_half,Run:10000@quick_sand,Run:10000@encrusted"

File fc-solve/source/USAGE.txt

 |+micro-finance-improved+      |a meta-moves and flare-based preset, based
 on +micro-finance+ that yields somewhat shorter solutions on average, and
 should not be slower.
+|+qualified-seed+              |a meta-moves and flare-based preset, based
+on +micro-finance-improved+ that yields somewhat shorter solutions on average,
+and should not be slower.
 |+rin-tin-tin+                 |a meta-moves preset
 |+sand-stone+                  |an atomic-moves preset that aims to
             minimise the outcome solution's length.

File fc-solve/source/t/t/compare-digests-and-lens.t

 use strict;
 use warnings;
 
-use Test::More tests => 23;
+use Test::More tests => 24;
 use File::Spec;
 use lib './t/lib';
 use File::Basename qw( dirname );
             'ms24-with-founds-0.txt'
         )
     }, "Properly handle foundations like H-0 S-0 etc.");
+
+# TEST
+verify_solution_test({
+    id => "qualified_seed_for_6240",
+    deal => 6240,
+    theme => ["-l", "qs", "-fif", "5", "--flares-choice", "fcpro",],
+    },
+    "Qualified seed test with -fif and --flares-choice fcpro",
+);
+
 # Store the changes at the end so they won't get lost.
 $verifier->end();
 

File fc-solve/source/t/t/data/digests-and-lens-storage.yml

   freecell617jgl:
     hexdigest: 34bc7c9fe871e50275975323be93c133e73f135db751a985a32f92323f1d6377
     len: 27193
+  qualified_seed_for_6240:
+    hexdigest: 13fe9b90d2743bb8d14dee53facdefe38c6f47306d2f1ce9acea8076b15220d5
+    len: 27949
   random_dfs_with_rand_parens:
     hexdigest: ea188af2dbc420480508f0a51e4ffb97ab736cc01a24d9117a578fc0caf6b4f4
     len: 44129