I played with this a bit. The code is here:
https://github.com/rrenaud/dominionstats/tree/master/card_rankerI've just been using the scipy generic optimization function that doesn't use any gradient information, and it has seemed to do okay. I've just been using it to try to minimize pairwise inversions against Qvists list. But doing something smarter with a proxy loss on the accuracy so that I can get a smooth derivative might be worthwhile.
If you have a statsy bend, I can make this painless to play around with for R or something. It's really just a small couple data files (one for the card stats, one for the rankings).
With just one feature (win rate given any avail), I get 86% of the pairings correct. This is kind of suspicious, and sort of leads me to believe the serpent is eating its tail, that is, QVist's rankings might be pretty biased towards CR's ratings itself.
With some small weight on the frequency a card is gained, I get it to 87%.
Adding is_vp, num_plus_actions, and is_reaction gets the accuracy to 90%, but is perhaps dangerously overfit.
The currently induced rankings:
*0 Bag of Gold,Princess,Diadem,Trusty Steed,Followers
2 Secret Chamber,Herbalist,Duchess,Native Village,Pearl Diver,Cellar,
Embargo,Moat,Courtyard,Pawn,Haven,Hamlet,Estate,Crossroads,
Fool's Gold,Lighthouse,Chapel
3 Chancellor,Workshop,Smugglers,Woodcutter,Develop,Fortune Teller,Oracle,Black Market,
Wishing Well,Great Hall,Lookout,Oasis,Village,Watchtower,Shanty Town,Trade Route,
Scheme,Silver,Tunnel,Loan,Swindler,Steward,Warehouse,Fishing Village,
Menagerie,Masquerade,Ambassador
4 Thief,Coppersmith,Bureaucrat,Pirate Ship,Talisman,
Scout,Noble Brigand,Navigator,Treasure Map,Feast,Ironworks,Potion,Nomad Camp,
Spy,Baron,Remodel,Quarry,Gardens,Silk Road,Walled Village,Throne Room,
Trader,Cutpurse,Smithy,Mining Village,Envoy,Bridge,Worker's Village,Island,
Farming Village,Horse Traders,Moneylender,
Conspirator,Spice Merchant,Militia,Monument,Remake,
Jack of All Trades,Salvager,Bishop,Caravan,Young Witch,Sea Hag,Tournament
5 Counting House,Saboteur,Contraband,Cache,Duke,Mandarin,Outpost,Stash,Explorer,
Tribute,Harvest,Mine,Horn of Plenty,Royal Seal,Inn,Library,Council Room,Merchant Ship,
Duchy,Archivist,Treasury,City,Trading Post,Mint,Rabble,Cartographer,
Jester,Haggler,Highway,Festival,Upgrade,Bazaar,Market,Embassy,Vault,Apprentice,
Governor,Venture,Tactician,Stables,Minion,Laboratory,Margrave,Torturer,Ghost Ship,
Ill-Gotten Gains,Hunting Party,Wharf,Witch,Mountebank
6 Adventurer,Farmland,Harem,Fairgrounds,Nobles,Gold,Hoard,
Border Village,Grand Market,Goons
7 Forge,Expand,Bank,King's Court