GithubHelp home page GithubHelp logo

kdeldycke / chessboard Goto Github PK

View Code? Open in Web Editor NEW
8.0 8.0 4.0 1.64 MB

:game_die: CLI to solve combinatoric chess puzzles.

Home Page: https://chessboard.readthedocs.io

License: GNU General Public License v2.0

Python 100.00%
benchmark boilerplate chess cli conda numpy pandas python seaborn

chessboard's Introduction

My name is Kevin Deldycke, I'm a high-tech Engineering Manager.

Short Bio

I've held various positions in several industries and sectors as VP, Product Manager, Founding Engineer and Consultant.

After 15+ years of relevant engineering work, and 3+ years of hands-on management experience, I now build teams from scratch with self-sustaining culture, and my intent is to keep doing so.

Enabling engineers, leading managers, and make them feel productive is the most impactful thing I can bring to the table. So I'm always on the lookout for a high-tech management position, at a fast growing start-up with ambitious vision.

My most relevant experience was in growing a team from 0 to 12 at a world-class cloud computing provider. We built up the whole IAM ecosystem, as well as the Billing and Payment stack.

Achievements

More

Metrics

chessboard's People

Contributors

kdeldycke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

chessboard's Issues

Plug-in logger facilities

To help debug, add proper logging facilities from the Python module of the same name. Will provide extended configurability.

Exploit symetries

All pieces are moveable in the same fashion in the 4 quadrants. Exploit vertical and horizontal symmetries to reduce the search space.

Cut-short rotten branches

The current tree() iterator produce a cartesian product. It should instead explore branches of the tree and abandon them as soon as one doesn't fit our criterion.

Use lighter datastructure

For the sake of simplicity and readability, I used natural types like lists of strings and booleans to materialize intermediate data.

To speed things up, replace these data structures with lower-level ones like bytearray and such.

Deduplicate permutations of same-type pieces

Group permutations are pre-computed by the grouped_permutations() method, introduced in commit 7fa785a. Some permutations produced are already invalid. We can prune those from our sets before running the brute force cartesian product tree() method.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.