RsBundle  Diff

Differences From Artifact [d0928a45a4]:

  • File src/solver.rs — part of check-in [9d2ba83f87] at 2016-09-29 06:37:51 on branch trunk — solver: Initialize subgradient with first master evaluation. (user: fifr size: 25142)

To Artifact [a9806367ff]:

  • File src/solver.rs — part of check-in [12aebdedf7] at 2016-09-29 06:38:17 on branch trunk — solver: Fix computation of `new_cutval`. (user: fifr size: 25173)

661
662
663
664
665
666
667

668
669
670
671
672
673
674
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675







+







        let nullstep_bnd = if m == 1 { self.get_nullstep_bound() } else { INFINITY };
        let relprec = if m == 1 { self.get_relative_precision() } else { 0.0 };

        try!(self.compress_bundle());

        let mut nxt_lb = 0.0;
        let mut nxt_ub = 0.0;
        self.new_cutval = 0.0;
        for fidx in 0..self.problem.num_subproblems() {
            let result = match self.problem.evaluate(fidx, &self.nxt_y, nullstep_bnd, relprec) {
                Ok(r) => r,
                Err(err) => return Err(Error::Eval(Box::new(err))),
            };

            let fun_ub = result.objective();