|
Re: FRC Match Scheduler
Quote:
Originally Posted by JamieSinn
Because I'm interested in finding out more about how the background of the FMS works, I spent a bit digging into the matchmaking algorithm and where to find it. (How on earth 1334 manages to get the first match and last match of the day almost like clockwork I have no idea)
I spent a bit working around and looking into FMS Lite, which is publicly available to download.
I found out that Tom and Cathy Saxton were the creators of the matchmaking algorithm and software, dubbed matchmaker. I found all this in the about tab of the FMS Lite, where it attributed licenses for each part of the program.
I grabbed the files linked, and started playing around with them.
I emailed Tom, asking for the source to learn about the algorithm more, I was denied but he gave me a very helpful link regarding simulated annealing.
( http://grids.ucs.indiana.edu/courses...rch%201997.htm)
With this link, and some friendly help from a few people in discord, we found the original mentioned c code
( https://web.archive.org/web/19991010.../SimAneal.html)
From this, as well as the decompiled source from the matchmaker executables, it should be possible to reconstruct the entire sourcecode and possibly improve it.
If you're interested here's the public github repo I made with the relevant information
https://github.com/JamieSinn/FRCMatchMaker/
Jamie
|
Jamie,
I think your heart is in the right place, but, just in case...
Sometimes (very often) people get annoyed if you decompile their executables, and then make use of the result.
Do(es) the executable(s)' license(s) allow you to decompile it/them, and then publish the result (along with encouraging he general public to use/modify that source code)???
Blake
__________________
Blake Ross, For emailing me, in the verizon.net domain, I am blake
VRC Team Mentor, FTC volunteer, 5th Gear Developer, Husband, Father, Triangle Fraternity Alumnus (ky 76), U Ky BSEE, Tau Beta Pi, Eta Kappa Nu, Kentucky Colonel
Words/phrases I avoid: basis, mitigate, leveraging, transitioning, impact (instead of affect/effect), facilitate, programmatic, problematic, issue (instead of problem), latency (instead of delay), dependency (instead of prerequisite), connectivity, usage & utilize (instead of use), downed, functionality, functional, power on, descore, alumni (instead of alumnus/alumna), the enterprise, methodology, nomenclature, form factor (instead of size or shape), competency, modality, provided(with), provision(ing), irregardless/irrespective, signage, colorized, pulsating, ideate
|