Skip to content

Commit

Permalink
add exercise 1
Browse files Browse the repository at this point in the history
  • Loading branch information
RickGelhausen committed Jun 25, 2024
1 parent 4c8e0a2 commit aa0b9b2
Showing 1 changed file with 23 additions and 2 deletions.
25 changes: 23 additions & 2 deletions exercise-sheet-5.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,27 @@ Die Position eines Kreises \( s_i \) auf der Platte ist durch die Koordinaten \(
Ziel ist es, die Kreise so anzuordnen, dass der Radius \( R \) so groß wie möglich gewählt werden kann. Dabei muss sowohl sichergestellt werden, dass alle Kreise auf der Platte liegen, als auch dass sich diese nicht überschneiden.
Eine Illustration der Situation ist in Abbildung 3 gegeben.

```{r, echo=FALSE, out.width='80%', fig.align='center', fig.show='hold', fig.cap='**Abbildung 3** - Beispiel einer möglichen - aber nicht optimalen - Anordnung der Kreise.'}
```{r, echo=FALSE, out.width='50%', fig.align='center', fig.show='hold', fig.cap='**Abbildung 3** - Beispiel einer möglichen - aber nicht optimalen - Anordnung der Kreise.'}
knitr::include_graphics("figures/sheet-5/p4.png")
```
```

Wir können dies als das folgende nichtlineare Optimierungsproblem ausdrücken:

\[
\begin{aligned}
\min_{R, x_1, \ldots, x_5, y_1, \ldots, y_5} \quad & -R \\
\text{s.t.} \quad & x_i - r_i(R) \geq 0, & i = 1, \ldots, 5, \\
& x_i + r_i(R) \leq a, & i = 1, \ldots, 5, \\
& y_i - r_i(R) \geq 0, & i = 1, \ldots, 5, \\
& y_i + r_i(R) \leq a, & i = 1, \ldots, 5, \\
& (x_i - x_j)^2 + (y_i - y_j)^2 \geq (r_i + r_j)^2, & i, j = 1, \ldots, 5, i < j,
\end{aligned}
\]

mit \( r_i(R) = R \) für \( i \in \{1, 2, 3\} \) und \( r_i(R) = 2R \) für \( i \in \{4, 5\} \).

**Aufgaben:**

1. Diskutieren Sie kurz, ob das Problem konvex ist.
2. Vervollständigen Sie das bereits gestellte Template, um das Optimierungsproblem mit CasADi und IPOPT zu lösen. Wie groß ist der Radius, den Sie erhalten?
3. Im Template war bereits eine konkrete Initialisierung der Entscheidungsvariablen gegeben. Verändern Sie diese, um mindestens eine bessere Lösung zu erhalten. Was ist die beste Lösung, die Sie finden können? Ist es möglich, dass es eine noch bessere gibt?

0 comments on commit aa0b9b2

Please sign in to comment.