All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Macros Pages
Classes | Namespaces | Typedefs | Functions | Variables
budgeted_maximum_coverage.hpp File Reference
#include "paal/data_structures/fraction.hpp"
#include "paal/utils/accumulate_functors.hpp"
#include "paal/utils/algorithms/subset_backtrack.hpp"
#include "paal/utils/functors.hpp"
#include "paal/utils/type_functions.hpp"
#include <boost/heap/d_ary_heap.hpp>
#include <boost/range/adaptor/indexed.hpp>
#include <boost/range/algorithm/copy.hpp>
#include <boost/range/algorithm_ext/iota.hpp>
#include <boost/range/algorithm/fill.hpp>
#include <boost/range/algorithm/for_each.hpp>
#include <boost/range/algorithm/sort.hpp>
#include <boost/range/combine.hpp>
#include <algorithm>
#include <vector>

Go to the source code of this file.

Classes

struct  paal::greedy::detail::set_data_type< ElementWeight, SetCost >
 
class  paal::greedy::detail::selector< Budget, SetCost, SetIdToData, ElementWeight, SetIdToElements, ElementIndex, GetWeightOfElement, DecreseWeight >
 

Namespaces

 paal
 global namespace of project.
 
 paal::greedy
 Greedy namespace.
 
 paal::greedy::detail
 Detail of Greedy namespace.
 

Typedefs

template<typename SetReference , typename GetElementsOfSet , typename GetWeightOfElement >
using paal::greedy::detail::element_weight_t = pure_result_of_t< GetWeightOfElement(range_to_elem_t< pure_result_of_t< GetElementsOfSet(SetReference)>>)>
 

Functions

template<class Budget , class SetCost , class SetIdToData , class ElementWeight , class SetIdToElements , class ElementIndex , class GetWeightOfElement , typename DecreseWeight >
auto paal::greedy::detail::make_selector (const Budget budget, SetCost &cost_of_solution, SetIdToData &sets_data, const ElementWeight &weight_of_bests_solution, ElementWeight &weight_of_covered_elements, SetIdToElements set_id_to_elements, std::vector< int > &covered_by, std::vector< std::vector< int >> &sets_covering_element, ElementIndex &get_el_index, GetWeightOfElement &element_to_weight, DecreseWeight decrese_weight)
 
template<typename SetRange , class GetCostOfSet , class GetElementsOfSet , class OutputIterator , class ElementIndex , class Budget , class GetWeightOfElement = utils::return_one_functor>
auto paal::greedy::budgeted_maximum_coverage (SetRange &&sets, GetCostOfSet set_to_cost, GetElementsOfSet set_to_elements, OutputIterator result, ElementIndex get_el_index, Budget budget, GetWeightOfElement element_to_weight=GetWeightOfElement(), const unsigned int initial_set_size=3)
 detail More...
 

Variables

const int paal::greedy::detail::UNCOVERED = -1
 

Detailed Description

Author
Piotr Smulewicz
Version
1.0
Date
2014-03-18

Definition in file budgeted_maximum_coverage.hpp.