-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlecture6.tex
66 lines (47 loc) · 2.2 KB
/
lecture6.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
\section{Семинар 6}
Задачи будут:
\begin{enumerate}
\item Facility Location будет доступен GLPK
\item TSP
\item Car-Sequence
\end{enumerate}
\subsection{Facility Location}
Есть склады, есть люди
Для каждого склада известны $f_i$ -- стоимость открытия склада
Для каждого пользователя известны $с_{i, j}$ -- стоимость обслуживания
клиента $j$ в складе $i$.
Нужно выбрать поднмножество складов и обслужить
всех клиентов разово за минимальную стоимость
Пытаемся сделать лин прогу:
\[
\begin{cases}
x_1, x_2, \dots, x_n \in \{0, 1\}\\
y_{i, j} \in \{0, 1\}\\
\sum_{j} y_{i j} = 1\\
y_{i j} \leq x_i\\
\sum x_i f_i + \sum y_{i j} c_{i j} \to \min
\end{cases}
\]
Денис пытается сделать лин прогу
не получилось
\subsection{Car Sequencing}
Есть конвейер -- "какая та штука которая делает штуки для машинок"(с) Игнат
Для каждой ленты есть производительность, к примеру
для первой ленты размера $size$ там не более чем $capacity$ элементов
$m_1, m_2, \dots, m_n$ -- машины из $\{0, 1\}^n$
Надо найти перестановку машин корректуную удоволетворяющуюю условиям
поехали творить ЛП
$i$ -- номер конвейера
$j$ -- номер машины
$cap_i$ -- вместимость конвейера в окне
$size_i$ -- размер окна у конвейера
$x_{j k}$ -- стоит ли машина $j$ на $k$ месте
\[
\begin{cases}
\sum_{k} x_{j k} = 1\\
\sum_{j} x_{j k} = 1\\
\forall i \in \{1 \dots n\} \forall s \in \{1, \dots, m - size_i\}
\sum_{p = s}^{s + size_i - 1} \sum_{j = 1}^n x_{j p} c_{j i} \leq cap_i\\
\end{cases}
\]
Тут был рассказ про солверы