This option sets how often the solver should solve local optimisation problems to find upper bounds. Small values for this option can be helpful in problems where finding feasible upper bounds is challenging.
UB_FREQUENCY = 1 will instruct the solver to calculate an upper bound on every node processed in the branch and bound algorithm, increasing the probability that a feasible solution is going to be located.
This, of course, comes with a trade-off of increased solution time, i.e. the smaller the
UB_FREQUENCY, the more time is spent every iteration solving the upper bounding problem.
The value of this option highly affects solver performance, especially in problems where a lot of time is spent solving primal heuristics.
Note that the value of this option is more of a hint for the solver of how much to focus on solving UB problems rather than a hard-coded value, as it will load balance automatically when/which primal heuristics are solved.