5x5x5, 6x6x6, 7x7x7 or NxNxN solvers

Discussion in 'Software Area' started by dwalton76, Jan 16, 2017.

Welcome to the Speedsolving.com. You are currently viewing our boards as a guest which gives you limited access to join discussions and access our other features. By joining our free community of over 30,000 people, you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact us and we'll help you get started. We look forward to seeing you on the forums!

Already a member? Login to stop seeing this message.
  1. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    There is a bug in the screenshot, near the bottom it should read "110 steps to group edges", not 68 steps.
     
  2. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    I found this post on AvG edge pairing
    https://www.speedsolving.com/forum/threads/arnauds-5x5x5-edge-pairing-method-examples.1447/

    and loaded up the 57 move scramble. I am able to pair the edges in 72 moves so what I am doing seems pretty comparable in terms of the move count (his 'expert' number was 73 moves). I do:
    • pair the outside wings via 4x4x4 edge pairing
    • attempt to pair 3 edges on a Uw slice and pair three more on the Uw' slice back...sometimes the stars align and I can pair 4 at once on either the slice forward or slice back.
    • pair all remaining edges via https://i.imgur.com/wsTqj.png No 1, 5, 6, 7, or 8
     
  3. xyzzy

    xyzzy Member

    529
    216
    Dec 24, 2015
    AvG uses a few more moves than freeslice (as implemented on a human being, so no backtracking or deep lookahead), in exchange for having less stuff to keep track of.

    Here's two different human solves of the same scramble: [1] [2]

    First one is freeslice (67 moves), second one is freestyle chain pairing (57 moves).

    Solving the wings then matching them to the midges is necessarily significantly less efficient than most other methods that don't do that (freeslice, chain pairing, 3-cycles), although it certainly is a much simpler algorithm if we have a 4×4×4 edge pairing black box to exploit.
     
    Last edited: May 1, 2017
  4. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    57 moves is impressive
     
  5. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    First solve of a 6x6x6. This is only the last few moves, there were 239 moves total, it took the robot about 10-12 minutes.
    <iframe width="500" height="300" src="http://www.youtube.com/embed/ItGPI2HoWhI?vq=hd720&amp;iv_load_policy=3&amp;rel=0&amp;showinfo=0&amp;theme=light&amp;color=white&amp;autohide=0" frameborder="0" allowfullscreen></iframe>
     
  6. Malkom

    Malkom Member

    435
    101
    May 22, 2016
    Sweden
    WCA:
    2016ANDE17
    YouTube:
    channel/UCSCZ2BsupnT5FoxOMNOf_kQ
    it looks like 4 edges are swapped in the back, is it just the lighting?
     
    Dr_Detonation likes this.
  7. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    They are, the code that crunches the RGB values to figure out the colors got red and orange backwards on two squares. Red vs orange has been difficult I have some more work to do there. So not 100% solved but "solved" in terms of the solving algorithm and mechanics of the robot working.
     
  8. Dr_Detonation

    Dr_Detonation Member

    103
    44
    Apr 26, 2017
    Over da Rainbow
    That is awesome. Coolest thing I've seen in my life. Or at least this week
     
  9. xyzzy

    xyzzy Member

    529
    216
    Dec 24, 2015
    Would it work better with, say, a stickerless cube? (Or worse, if the detection algorithm needs to have a border around each facelet?)
     
  10. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    So there are two phases at play here
    1. Take photos of all six sides, find all of the facelets, get the mean (red, green, blue) values of each facelet. Having clear borders around the facelets def makes them easier to find here but I have it working even if there are white facelets separated by a white border. Sticker vs stickerless I don't think would matter much. Example of white on white: [​IMG]
    2. Take the RGB values for each facelet and ID each facelet as U,L,F,R,B, or D
    Phase 2 is where the red vs. orange confusion is. The way this part works is
    • ID "anchor" facelets which will act as our color point of reference for each side. For odd cubes this is easy we just take the middle facelet of each side. For even cubes we take a corner to get the first three anchors then we find the other corner that has the greatest "color distance" from our first corner, that gives us the other three anchors.
    • "color distance" is calculated by https://en.wikipedia.org/wiki/Color_difference#CIEDE2000
    • Build a list of the color combos we need for corners
    • Build lists of the color combos we need for each orbit of edges
    • Build lists of the colors we need for the various types of center facelets
    So for corners say we know we need a Green, White, Red corner, we look at all of the corner facelets and find the corner that matches the Green, White, Red anchor facelet colors with the smallest color distance. We do this same basic thing for all of the corners, then all of the edges, etc.
     
  11. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
  12. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    [​IMG]

    Can now solve a 7x7x7!!!
     
    ch_ts and sqAree like this.
  13. dwalton76

    dwalton76 Member

    31
    12
    Jan 2, 2017
    Misc update
    • For 5x5x5 edge pairing I am no longer starting out by using 4x4x4 edge pairing to pair all of the outside edges. This dropped the average number of moves for pairing 5x5x5 edges by about 20 moves.
    • I had an IDA bug that led me to building my lookup tables much larger than they needed to be. With that IDA bug fixed all of my lookup tables are now small enough to include in the repo on github. The repo is about 700M though so the git clone takes a few minutes and takes a bit of RAM. This is big news because now anyone can just git clone the repo and use the solver, they no longer need to download massive tables from dropbox.
    • Lots of performance improvements
      • 4x4x4 takes ~200ms to solve
      • 5x5x5 about 5s
      • 6x6x6 about 7s
      • 7x7x7 about 7s
    • Move counts are down
      • 4x4x4 averages 65 moves
      • 5x5x5 averages 119 moves
      • 6x6x6 averages 214 moves
      • 7x7x7 averages 304 moves
    • I've started working on NxNxN even support by trying to solve a 14x14x14...not working yet
    • A few other people have started using the solver, filing bugs, etc
     

Share This Page