Below is the code and scripts to generate our NIPS results. Note that a lot of this was revised at the last minute and consequently very disorganized. Please contact Kui (kuitang@gmail.com; Skype: kui.tang) if you have any other questions. # Building - Untar bmatch.tgz - cd blossom/ and compile the MEX files. Compile both integer and double versions of the blossom solver (Linux, use the .linux variants). This part should be cleaner; sorry about that. - make -f Makefile - make clean - make -f Makefile.double # Running - cd into this directory in matlab, and run ap.m before to load the correct paths. - To solve the privacy problem, use experiment/gvbm.m. To use the version without annealing, use experiment/gvbm_fixed.m. - gvbm requires a *binary* feature matrix (each user is a row, each column is a feature). To convert a mixed categorical and continuous feature matrix into a binary one, use binarize.m. You supply the original feature matrix, and a list of continuous dimensions. Note that continuous dimensions simply get represented as below or above the median. - The script used to produce the results in our NIPS paper is experiment/social_script_3_par.m. - You may have to edit some paths - In general, to solve an imperfect max-weight variable b-matching, use bmatch.m.