{
xbt_assert(max_iteration_ > 0,
"Invalid number of iterations for BMF solver. Please check your \"bmf/max-iterations\" configuration.");
- xbt_assert(A_.cols() == maxA_.cols(), "Invalid number of cols in matrix A (%ld) or maxA (%ld)", A_.cols(),
+ xbt_assert(A_.cols() == maxA_.cols(), "Invalid number of cols in matrix A (%td) or maxA (%td)", A_.cols(),
maxA_.cols());
- xbt_assert(A_.cols() == static_cast<long>(phi_.size()), "Invalid size of phi vector (%ld)", phi_.size());
+ xbt_assert(A_.cols() == phi_.size(), "Invalid size of phi vector (%td)", phi_.size());
xbt_assert(static_cast<long>(C_shared_.size()) == C_.size(), "Invalid size param shared (%zu)", C_shared_.size());
}
#define SURF_BMF_HPP
#include "src/kernel/lmm/maxmin.hpp"
-#include <boost/container_hash/hash.hpp>
#include <eigen3/Eigen/Dense>
#include <unordered_set>
std::vector<bool> C_shared_; //!< shared_j Resource j is shared or not
Eigen::VectorXd phi_; //!< phi_i bound for each player
- std::unordered_set<std::vector<int>, boost::hash<std::vector<int>>> allocations_;
+ std::set<std::vector<int>> allocations_; //!< set of already tested allocations, since last identified loop
AllocationGenerator gen_;
std::vector<int> allocations_age_;
static constexpr int NO_RESOURCE = -1; //!< flag to indicate player has selected no resource