SN-Evolution: RND: Mehr Details + 18-SN.
authorFlorian Forster <octo@leeloo.octo.it>
Sun, 27 Feb 2011 12:53:35 +0000 (13:53 +0100)
committerFlorian Forster <octo@leeloo.octo.it>
Sun, 27 Feb 2011 12:53:35 +0000 (13:53 +0100)
diplomarbeit.tex
images/18-e1-rnd-fast.tex [new file with mode: 0644]

index 19ade54..c868412 100644 (file)
@@ -1671,11 +1671,10 @@ Leitungen & \multicolumn{2}{l|}{\textsc{SN-EV} mit \bm{n}}
 
 Bei einigen Leitungszahlen kann der Algorithmus durch die Verfügbarkeit beider
 Mischer-Netzwerke Sortiernetzwerke zurückgeben, die effizienter als die
-vorherigen Ergebnisse sind. Beispielsweise ist 19-Sortiernetzwerk in
+vorherigen Ergebnisse sind. Beispielsweise ist das 19-Sortiernetzwerk in
 Abbildung~\ref{fig:19-e1-rnd-fast} mit 92~Komparatoren effizienter als die
-19-Sortiernetzwerke, die nur mit dem \emph{bitonen Mischer}, beziehungsweise
-nur mit dem \emph{Odd-Even}-Mischer erreicht wurden
-(Abbildungen~\ref{fig:19-e1-bm-fast} und~\ref{fig:19-e1-oem-fast}).
+19-Sortiernetzwerke, die mit nur einem der beiden Mischer-Netzwerke erreicht
+wurden (Abbildungen~\ref{fig:19-e1-bm-fast} und~\ref{fig:19-e1-oem-fast}).
 
 \begin{figure}
   \begin{center}
@@ -1688,6 +1687,38 @@ nur mit dem \emph{Odd-Even}-Mischer erreicht wurden
   \label{fig:19-e1-rnd-fast}
 \end{figure}
 
+Die Ergebnisse anderer Leitungszahlen erreichen die Geschwindigkeit der
+Ergebnisse, die mit dem \emph{bitonen Mischer} erzielt wurden. Die Effizienz
+liegt zwischen den Ergebnissen, die mit dem \emph{bitonen Mischer} erzielt
+wurden, und den Ergebnissen, die mit dem \emph{Odd-Even}-Mischer erzielt
+wurden. Beispielsweise ist das 18-Sortiernetzwerk in
+Abbildung~\ref{fig:18-e1-rnd-fast} so schnell wie das Ergebnis, das mit dem
+\emph{bitonen Mischer} ausgegeben wurde. Mit 83~Komparatoren liegt die
+Effizienz des Sortiernetzwerks zwischen den Ergebnissen, die mit dem
+\emph{bitonen Mischer} (87~Komparatoren), beziehungsweise dem
+\emph{Odd-Even}-Mischer (82~Komparatoren) erreicht werden konnten.
+
+\begin{figure}
+  \begin{center}
+    \input{images/18-e1-rnd-fast.tex}
+  \end{center}
+  \caption{Sortiernetzwerk mit 18~Leitungen und 83~Komparatoren in
+    12~Schichten. Das Netzwerk wurde von dem Algorithmus \textsc{SN-Evolution}
+    unter Verwendung des \emph{bitonen Mischers} und des
+    \emph{Odd-Even}-Mischers erzeugt.}
+  \label{fig:18-e1-rnd-fast}
+\end{figure}
+
+In einigen Fällen hat \textsc{SN-Evolution} in dieser Konfiguration
+Sortiernetzwerke ausgegeben, die weniger effizient und genauso schnell wie die
+bisherigen Ergebnisse unter Verwendung des \emph{Odd-Even}-Mischers sind.
+Prinzipiell könnte der Algorithmus in jeder Iteration zufällig den
+\emph{Odd-Even}-Mischers auswählen, um die selektierten Individuen zu
+rekombinieren. Das heißt, das die Ergebnisse auch bei einer zufälligen Wahl
+des Mischer-Netzwerks theoretisch erreicht werden können. Allerdings sind
+unter Umständen mehr Iterationen notwendig, bis die gleiche Effizienz erreicht
+wird.
+
 %\input{shmoo-aequivalenz.tex}
 
 \newpage
diff --git a/images/18-e1-rnd-fast.tex b/images/18-e1-rnd-fast.tex
new file mode 100644 (file)
index 0000000..35a3cc9
--- /dev/null
@@ -0,0 +1,352 @@
+\begin{tikzpicture}[auto]
+\node[vertex] (v0) at (0.72,0.00) {};
+\node[vertex] (v1) at (0.72,0.58) {};
+\path[comp] (v0) -- (v1);
+
+\node[vertex] (v2) at (0.72,1.15) {};
+\node[vertex] (v3) at (0.72,5.19) {};
+\path[comp] (v2) -- (v3);
+
+\node[vertex] (v4) at (0.94,1.73) {};
+\node[vertex] (v5) at (0.94,7.50) {};
+\path[comp] (v4) -- (v5);
+
+\node[vertex] (v6) at (1.15,2.88) {};
+\node[vertex] (v7) at (1.15,8.65) {};
+\path[comp] (v6) -- (v7);
+
+\node[vertex] (v8) at (1.37,3.46) {};
+\node[vertex] (v9) at (1.37,5.77) {};
+\path[comp] (v8) -- (v9);
+
+\node[vertex] (v10) at (1.59,4.62) {};
+\node[vertex] (v11) at (1.59,6.92) {};
+\path[comp] (v10) -- (v11);
+
+\node[vertex] (v12) at (0.72,6.35) {};
+\node[vertex] (v13) at (0.72,9.23) {};
+\path[comp] (v12) -- (v13);
+
+\node[vertex] (v14) at (0.94,8.08) {};
+\node[vertex] (v15) at (0.94,9.81) {};
+\path[comp] (v14) -- (v15);
+
+\node[vertex] (v16) at (2.31,0.00) {};
+\node[vertex] (v17) at (2.31,5.19) {};
+\path[comp] (v16) -- (v17);
+
+\node[vertex] (v18) at (2.52,0.58) {};
+\node[vertex] (v19) at (2.52,1.15) {};
+\path[comp] (v18) -- (v19);
+
+\node[vertex] (v20) at (2.52,2.31) {};
+\node[vertex] (v21) at (2.52,6.92) {};
+\path[comp] (v20) -- (v21);
+
+\node[vertex] (v22) at (2.74,2.88) {};
+\node[vertex] (v23) at (2.74,8.08) {};
+\path[comp] (v22) -- (v23);
+
+\node[vertex] (v24) at (2.96,4.04) {};
+\node[vertex] (v25) at (2.96,6.35) {};
+\path[comp] (v24) -- (v25);
+
+\node[vertex] (v26) at (2.31,8.65) {};
+\node[vertex] (v27) at (2.31,9.81) {};
+\path[comp] (v26) -- (v27);
+
+\node[vertex] (v28) at (3.68,0.00) {};
+\node[vertex] (v29) at (3.68,0.58) {};
+\path[comp] (v28) -- (v29);
+
+\node[vertex] (v30) at (3.68,1.15) {};
+\node[vertex] (v31) at (3.68,5.19) {};
+\path[comp] (v30) -- (v31);
+
+\node[vertex] (v32) at (3.89,2.31) {};
+\node[vertex] (v33) at (3.89,4.62) {};
+\path[comp] (v32) -- (v33);
+
+\node[vertex] (v34) at (4.11,3.46) {};
+\node[vertex] (v35) at (4.11,4.04) {};
+\path[comp] (v34) -- (v35);
+
+\node[vertex] (v36) at (3.68,6.35) {};
+\node[vertex] (v37) at (3.68,9.23) {};
+\path[comp] (v36) -- (v37);
+
+\node[vertex] (v38) at (3.89,6.92) {};
+\node[vertex] (v39) at (3.89,7.50) {};
+\path[comp] (v38) -- (v39);
+
+\node[vertex] (v40) at (3.89,8.08) {};
+\node[vertex] (v41) at (3.89,8.65) {};
+\path[comp] (v40) -- (v41);
+
+\node[vertex] (v42) at (4.83,0.58) {};
+\node[vertex] (v43) at (4.83,7.50) {};
+\path[comp] (v42) -- (v43);
+
+\node[vertex] (v44) at (5.05,1.73) {};
+\node[vertex] (v45) at (5.05,4.62) {};
+\path[comp] (v44) -- (v45);
+
+\node[vertex] (v46) at (5.26,2.31) {};
+\node[vertex] (v47) at (5.26,6.92) {};
+\path[comp] (v46) -- (v47);
+
+\node[vertex] (v48) at (5.48,3.46) {};
+\node[vertex] (v49) at (5.48,8.08) {};
+\path[comp] (v48) -- (v49);
+
+\node[vertex] (v50) at (5.70,4.04) {};
+\node[vertex] (v51) at (5.70,9.23) {};
+\path[comp] (v50) -- (v51);
+
+\node[vertex] (v52) at (5.05,5.77) {};
+\node[vertex] (v53) at (5.05,6.35) {};
+\path[comp] (v52) -- (v53);
+
+\node[vertex] (v54) at (6.42,1.73) {};
+\node[vertex] (v55) at (6.42,2.31) {};
+\path[comp] (v54) -- (v55);
+
+\node[vertex] (v56) at (6.42,4.04) {};
+\node[vertex] (v57) at (6.42,5.77) {};
+\path[comp] (v56) -- (v57);
+
+\node[vertex] (v58) at (6.63,4.62) {};
+\node[vertex] (v59) at (6.63,6.92) {};
+\path[comp] (v58) -- (v59);
+
+\node[vertex] (v60) at (6.42,6.35) {};
+\node[vertex] (v61) at (6.42,9.23) {};
+\path[comp] (v60) -- (v61);
+
+\node[vertex] (v62) at (7.36,0.00) {};
+\node[vertex] (v63) at (7.36,2.31) {};
+\path[comp] (v62) -- (v63);
+
+\node[vertex] (v64) at (7.57,0.58) {};
+\node[vertex] (v65) at (7.57,1.73) {};
+\path[comp] (v64) -- (v65);
+
+\node[vertex] (v66) at (7.79,1.15) {};
+\node[vertex] (v67) at (7.79,6.92) {};
+\path[comp] (v66) -- (v67);
+
+\node[vertex] (v68) at (7.36,2.88) {};
+\node[vertex] (v69) at (7.36,4.04) {};
+\path[comp] (v68) -- (v69);
+
+\node[vertex] (v70) at (7.36,4.62) {};
+\node[vertex] (v71) at (7.36,5.19) {};
+\path[comp] (v70) -- (v71);
+
+\node[vertex] (v72) at (7.36,5.77) {};
+\node[vertex] (v73) at (7.36,9.81) {};
+\path[comp] (v72) -- (v73);
+
+\node[vertex] (v74) at (7.57,6.35) {};
+\node[vertex] (v75) at (7.57,8.65) {};
+\path[comp] (v74) -- (v75);
+
+\node[vertex] (v76) at (7.79,8.08) {};
+\node[vertex] (v77) at (7.79,9.23) {};
+\path[comp] (v76) -- (v77);
+
+\node[vertex] (v78) at (8.51,0.00) {};
+\node[vertex] (v79) at (8.51,0.58) {};
+\path[comp] (v78) -- (v79);
+
+\node[vertex] (v80) at (8.51,1.15) {};
+\node[vertex] (v81) at (8.51,2.31) {};
+\path[comp] (v80) -- (v81);
+
+\node[vertex] (v82) at (8.73,1.73) {};
+\node[vertex] (v83) at (8.73,4.62) {};
+\path[comp] (v82) -- (v83);
+
+\node[vertex] (v84) at (8.51,2.88) {};
+\node[vertex] (v85) at (8.51,3.46) {};
+\path[comp] (v84) -- (v85);
+
+\node[vertex] (v86) at (8.51,4.04) {};
+\node[vertex] (v87) at (8.51,6.35) {};
+\path[comp] (v86) -- (v87);
+
+\node[vertex] (v88) at (8.73,5.19) {};
+\node[vertex] (v89) at (8.73,7.50) {};
+\path[comp] (v88) -- (v89);
+
+\node[vertex] (v90) at (8.94,5.77) {};
+\node[vertex] (v91) at (8.94,8.08) {};
+\path[comp] (v90) -- (v91);
+
+\node[vertex] (v92) at (8.51,9.23) {};
+\node[vertex] (v93) at (8.51,9.81) {};
+\path[comp] (v92) -- (v93);
+
+\node[vertex] (v94) at (9.66,0.00) {};
+\node[vertex] (v95) at (9.66,2.88) {};
+\path[comp] (v94) -- (v95);
+
+\node[vertex] (v96) at (9.88,0.58) {};
+\node[vertex] (v97) at (9.88,3.46) {};
+\path[comp] (v96) -- (v97);
+
+\node[vertex] (v98) at (10.10,1.15) {};
+\node[vertex] (v99) at (10.10,1.73) {};
+\path[comp] (v98) -- (v99);
+
+\node[vertex] (v100) at (10.10,2.31) {};
+\node[vertex] (v101) at (10.10,4.62) {};
+\path[comp] (v100) -- (v101);
+
+\node[vertex] (v102) at (9.66,4.04) {};
+\node[vertex] (v103) at (9.66,5.77) {};
+\path[comp] (v102) -- (v103);
+
+\node[vertex] (v104) at (9.88,5.19) {};
+\node[vertex] (v105) at (9.88,6.92) {};
+\path[comp] (v104) -- (v105);
+
+\node[vertex] (v106) at (9.66,6.35) {};
+\node[vertex] (v107) at (9.66,8.08) {};
+\path[comp] (v106) -- (v107);
+
+\node[vertex] (v108) at (9.88,7.50) {};
+\node[vertex] (v109) at (9.88,9.81) {};
+\path[comp] (v108) -- (v109);
+
+\node[vertex] (v110) at (9.66,8.65) {};
+\node[vertex] (v111) at (9.66,9.23) {};
+\path[comp] (v110) -- (v111);
+
+\node[vertex] (v112) at (10.82,1.15) {};
+\node[vertex] (v113) at (10.82,4.04) {};
+\path[comp] (v112) -- (v113);
+
+\node[vertex] (v114) at (11.03,1.73) {};
+\node[vertex] (v115) at (11.03,5.77) {};
+\path[comp] (v114) -- (v115);
+
+\node[vertex] (v116) at (11.25,2.31) {};
+\node[vertex] (v117) at (11.25,6.35) {};
+\path[comp] (v116) -- (v117);
+
+\node[vertex] (v118) at (11.47,2.88) {};
+\node[vertex] (v119) at (11.47,7.50) {};
+\path[comp] (v118) -- (v119);
+
+\node[vertex] (v120) at (10.82,4.62) {};
+\node[vertex] (v121) at (10.82,8.08) {};
+\path[comp] (v120) -- (v121);
+
+\node[vertex] (v122) at (11.68,5.19) {};
+\node[vertex] (v123) at (11.68,8.65) {};
+\path[comp] (v122) -- (v123);
+
+\node[vertex] (v124) at (11.03,6.92) {};
+\node[vertex] (v125) at (11.03,9.23) {};
+\path[comp] (v124) -- (v125);
+
+\node[vertex] (v126) at (12.40,2.31) {};
+\node[vertex] (v127) at (12.40,2.88) {};
+\path[comp] (v126) -- (v127);
+
+\node[vertex] (v128) at (12.40,3.46) {};
+\node[vertex] (v129) at (12.40,4.62) {};
+\path[comp] (v128) -- (v129);
+
+\node[vertex] (v130) at (12.62,4.04) {};
+\node[vertex] (v131) at (12.62,5.19) {};
+\path[comp] (v130) -- (v131);
+
+\node[vertex] (v132) at (12.40,5.77) {};
+\node[vertex] (v133) at (12.40,6.92) {};
+\path[comp] (v132) -- (v133);
+
+\node[vertex] (v134) at (12.62,6.35) {};
+\node[vertex] (v135) at (12.62,7.50) {};
+\path[comp] (v134) -- (v135);
+
+\node[vertex] (v136) at (13.34,1.15) {};
+\node[vertex] (v137) at (13.34,2.31) {};
+\path[comp] (v136) -- (v137);
+
+\node[vertex] (v138) at (13.56,1.73) {};
+\node[vertex] (v139) at (13.56,3.46) {};
+\path[comp] (v138) -- (v139);
+
+\node[vertex] (v140) at (13.34,2.88) {};
+\node[vertex] (v141) at (13.34,4.04) {};
+\path[comp] (v140) -- (v141);
+
+\node[vertex] (v142) at (13.34,4.62) {};
+\node[vertex] (v143) at (13.34,5.77) {};
+\path[comp] (v142) -- (v143);
+
+\node[vertex] (v144) at (13.56,5.19) {};
+\node[vertex] (v145) at (13.56,6.35) {};
+\path[comp] (v144) -- (v145);
+
+\node[vertex] (v146) at (13.34,6.92) {};
+\node[vertex] (v147) at (13.34,8.08) {};
+\path[comp] (v146) -- (v147);
+
+\node[vertex] (v148) at (13.56,7.50) {};
+\node[vertex] (v149) at (13.56,8.65) {};
+\path[comp] (v148) -- (v149);
+
+\node[vertex] (v150) at (14.28,0.58) {};
+\node[vertex] (v151) at (14.28,1.15) {};
+\path[comp] (v150) -- (v151);
+
+\node[vertex] (v152) at (14.28,1.73) {};
+\node[vertex] (v153) at (14.28,2.31) {};
+\path[comp] (v152) -- (v153);
+
+\node[vertex] (v154) at (14.28,2.88) {};
+\node[vertex] (v155) at (14.28,3.46) {};
+\path[comp] (v154) -- (v155);
+
+\node[vertex] (v156) at (14.28,4.04) {};
+\node[vertex] (v157) at (14.28,4.62) {};
+\path[comp] (v156) -- (v157);
+
+\node[vertex] (v158) at (14.28,5.19) {};
+\node[vertex] (v159) at (14.28,5.77) {};
+\path[comp] (v158) -- (v159);
+
+\node[vertex] (v160) at (14.28,6.35) {};
+\node[vertex] (v161) at (14.28,6.92) {};
+\path[comp] (v160) -- (v161);
+
+\node[vertex] (v162) at (14.28,7.50) {};
+\node[vertex] (v163) at (14.28,8.08) {};
+\path[comp] (v162) -- (v163);
+
+\node[vertex] (v164) at (14.28,8.65) {};
+\node[vertex] (v165) at (14.28,9.23) {};
+\path[comp] (v164) -- (v165);
+
+\path[edge] (0,0.00) -- (15.00,0.00);
+\path[edge] (0,0.58) -- (15.00,0.58);
+\path[edge] (0,1.15) -- (15.00,1.15);
+\path[edge] (0,1.73) -- (15.00,1.73);
+\path[edge] (0,2.31) -- (15.00,2.31);
+\path[edge] (0,2.88) -- (15.00,2.88);
+\path[edge] (0,3.46) -- (15.00,3.46);
+\path[edge] (0,4.04) -- (15.00,4.04);
+\path[edge] (0,4.62) -- (15.00,4.62);
+\path[edge] (0,5.19) -- (15.00,5.19);
+\path[edge] (0,5.77) -- (15.00,5.77);
+\path[edge] (0,6.35) -- (15.00,6.35);
+\path[edge] (0,6.92) -- (15.00,6.92);
+\path[edge] (0,7.50) -- (15.00,7.50);
+\path[edge] (0,8.08) -- (15.00,8.08);
+\path[edge] (0,8.65) -- (15.00,8.65);
+\path[edge] (0,9.23) -- (15.00,9.23);
+\path[edge] (0,9.81) -- (15.00,9.81);
+\end{tikzpicture}