title: Maximize function: what method?
body: <p>I have a function which looks like this: <code>f(x) = min(f_1(x_1), ..., f_n(x_n))</code> where <code>n</code> is about 10 and all <code>f_i</code> are positive monotonic, smooth, and their values are almost always (for all <code>x_i</code> for all <code>f_i</code>) are different less than by a factor of ten. So they seem to be rather good for analysing.<br>
  What's the best (fast?) way to maximize it having such constrains:<br>
  - all <code>x_i</code> are integers and less than ~100<br>
  - product of all <code>x_i</code> should lie near a specified value (assume, not further than 10% from it)</p>
  
  <p>Algorithm description in any language is appreciated, but if it is in Python, then it's ten times better :)</p>
  
  <p>P.S.: earlier I've worked with genetic algorithms, and first applied them to this task. However, it doesn't seem to be the best choice: GAs are quite slow, also I couldn't think of efficient crossover operation for this problem.</p>