What is the name of this (possibly classical) combinatorial optimization problem? I have a finite number of sets $S_i$, each of the sets costing $p_i$ and containing some elements. Given the budget $b$ I want to select number of those sets to maximize $|S_{k_1} \cup S_{k_2} \dots|$ with restriction $\sum_j p_{k_j} \leq b$.   
I think it should be something classical, like knapsack problem.
 A: According to this Wikipedia article, this is called the Set-Union Knapsack Problem.
A: This seems to be the Budgeted Maximum Coverage Problem, which shares some features with SUKP but has a different kind of objective and constraint function. Both problems are NP-hard, with Budgeted Maximum Coverage being a direct reduction from Set Cover.
The data includes a finite family of finite sets $\{S_1,S_2,\ldots,S_n\}$, each with an associated nonnegative cost $p_i$ (or $c_i$ in the Wikipedia article).
The objective is to choose some of these sets, subject to the "budget constraint" that the sum of $p_i$ corresponding to that choice does not exceed $b$ (or $B$ in the Wikipedia article), in order to maximize the number of points "covered" by the selected sets, i.e. the size of their union.
Formally we can introduce $\{0,1\}$ variables $x_i$ that indicate the choice of sets $S_i$, which allows us to express the budget constraint as:
$$ \sum_{i=1}^n p_i \cdot x_i \le b $$
In order to count the number of points covered by such a choice, we first index the points contained in $E = \bigcup_{i=1}^n S_i$ so that $e_j \in E$ is a typical point, $j = 1,\ldots,m$.  Then we introduce additional $\{0,1\}$ variables $y_j$ to indicate whether $e_j$ is covered.
This allows us to write the objective function:
$$ \text{ maximize } \sum_{j=1}^m y_j $$
subject to:
$$ \begin{align*} \sum_{i=1}^n p_i \cdot x_i \le b; & \text{ (cost cannot exceed budget) } \\
\sum_{i : e_j\in S_i} x_i \ge y_j & \text{ for each } j=1,\ldots,m; \\
y_j \in \{0,1\} & \text{ for each } j=1,\ldots,m; \\
x_i \in \{0,1\} & \text{ for each } i=1,\ldots,n. \end{align*}$$
This restricts, in a roundabout way, $y_j=1$ for only those points $e_j$ contained in at least one set $S_i$ for which $x_i=1$.  The objective function is easily modified to accomodate a weighted sum of the points being covered rather than a simple count of them.
See Khuller, Moss, and Naor (1999), The Budgeted Maximum Coverage Problem, for a review of the literature and a proposed approximation scheme via improvement upon a greedy heuristic.
This Budgeted Maximum Coverage Problem differs from the Set-Union Knapsack Problem, where the constraint is based on the total weights of chosen points $e_j$ and the objective function is evaluated by summing "profits" over all the sets $S_i$ which are fully populated by that choice of points.
Nonetheless Ashwin Arulselvan (2014) has drawn a specialized connection between them:

Recently, Khuller, Moss and Naor presented a greedy algorithm for the budgeted maximum coverage problem. In this note, we observe that this algorithm also approximates a special case of a set-union knapsack problem within a constant factor. In the special case, an element is a member of less than a constant number of subsets. This guarantee naturally extends to densest k-subgraph problem on graphs of bounded degree.

