A branch-and-bound algorithm for the proactive resource-constrained project scheduling problem with a robustness maximization objective