Eine Quick & Dirty Lösung:
Code:
\documentclass{article}
\usepackage{caption,subcaption}
\usepackage{amsmath}
\usepackage{amssymb}
\newlength{\OptProblemTemp}
\newcommand{\OProb}[3]{
\ensuremath{
\setlength{\arraycolsep}{2pt}
\begin{array}{cl}
#1 & #2 \\
\operatorname{s.t.} & #3
\end{array}
\setlength{\arraycolsep}{\OptProblemTemp}
}
}
\newcommand{\ZZ}{\mathbb{Z}}
\begin{document}
TextText
\begin{figure*}[htb]%
\centering
\captionsetup[sub]{singlelinecheck=off}
\begin{subfigure}[b][2.5cm]{4.5cm}
\OProb{\min}{x_1+x_2}{
\begin{array}[t]{rccccccl}
2x_1 & + & 3x_2 & \leq & 2\\
x_1 & + & 2x_2 & \leq & 2\\
x_1 &&& \geq &0
\end{array}
}\vfill
\caption{Lineares Programm}%
\end{subfigure}
\qquad
\begin{subfigure}[b][2.5cm]{4.5cm}
\OProb{\min}{x_1+x_2}{
\begin{array}[t]{rccccccl}
2x_1 & + & 3x_2 & \leq & 2\\
x_1 & + & 2x_2 & \leq & 2\\
x_1 &&& \geq &0\\
& &x_2 & \in & \ZZ
\end{array}
}\vfill
\caption{Mixed Integer Programm}%
\end{subfigure}
\par\vspace{20pt}% vertikaler Abstand
\begin{subfigure}[b][2.5cm]{4.5cm}
\OProb{\min}{x_1+x_2}{
\begin{array}[t]{rccccccl}
2x_1 & + & 3x_2 & \leq & 2\\
x_1 & + & 2x_2 & \leq & 2\\
x_1 &&& \geq &0\\
&&x_1, x_2 & \in & \ZZ
\end{array}
}\vfill
\caption{Integer Programm}%
\end{subfigure}
\qquad
\begin{subfigure}[b][2.5cm]{4.5cm}
\OProb{\min}{x_1+x_2}{
\begin{array}[t]{rccccccl}
2x_1 & + & 3x_2 & \leq & 2\\
x_1 & + & 2x_2 & \leq & 2\\
&&x_1, x_2 & \in & \{0,1\}
\end{array}
}\vfill
\caption{Binary Programm}%
\end{subfigure}
\end{figure*}
TextText
\end{document}
Eleganter geht das sicherlich irgendwie mit dem floatrow-Paket, einfach mal in der Dokumentation ab Kapitel 6 "The floatrow Package and The caption Package" lesen.
Liebe Grüße,
Axel
Lesezeichen