Matching training with Neural Network
I would suggest you use linear regression, or simply grid search (you can search over all possible number of points for each category, from 1..20; that's only $2^{13}$ possibilities, all of which can be easily tested one-by-one).

Make sure to use cross-validation: split the data set into training and test, and use the training data to derive the best parameters, then evaluate it on the test part.