Изменил про сходимость и классификацию

This commit is contained in:
2024-12-07 11:04:14 +03:00
parent 69b920594b
commit 0a8171dee5

View File

@@ -648,32 +648,34 @@ int main()
\subsection{Сходимость} \subsection{Сходимость}
Для анализа сходимости были выбраны нулевые граничные условия и сетка размером 20 на 20 клеток. Результаты запуска автомата для пяти произвольны начальных конфигураций представлены графике, который изображён на Рис.~\ref{fig:conv_exps}. На Рис.~\ref{fig:conv_mean}, изображён график среднего значения количества живых клеток для всех пяти экспериментов. По этому графику видно, что количетсов живых клеток стабилизируется после 400 итераций на уровне 70 клеток. На Рис.~\ref{fig:conv_aprox} изображён график аппроксимирующей полиномиальной функции 10 степени для функции количества живых клеток от итераций. По нему также видно, что количество живых клеток сходится к, примерно, 70 клеткам. По таблице \ref{tbl:patters} видно, что автомат ведёт себя по разному, в зависимости от начальной конфигурации и граничных условий. В некоторых случаях автомат сходился к пустому полю, все клетки которого мертвы. В некоторых случаях он сходится к различным циклическим паттернам. А для нескольких конфигураций не удалось определить сходимость на заданном числе итераций.
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth]{img/conv_exps.png}
\caption{График количества «живых» клеток относительно номера итерации при нулевых граничных условиях для сетки размером 20 x 20 для пяти произвольных начальных конфигураций.}
\label{fig:conv_exps}
\end{figure}
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth]{img/conv_mean.png}
\caption{График среднего количества «живых» клеток относительно номера итерации при нулевых граничных условиях для сетки размером 20 x 20 по всем экспериментам.}
\label{fig:conv_mean}
\end{figure}
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth]{img/conv_aprox.png}
\caption{График полиномиальной аппроксимирующей функции (n=10) количества «живых» клеток относительно номера итерации при нулевых граничных условиях для сетки размером 20 x 20.}
\label{fig:conv_aprox}
\end{figure}
\subsection{Классификация} \subsection{Классификация}
Исходя из описания классов и визуального анализа клеточного автомата, можно сделать вывод, что он относится к классу 3, так как через некоторое время после запуска автомат образует сложые структуры, характер взаимодействия которых во многих случаях выглядит хаотическим. Результаты запуска автомата для пяти произвольных начальных конфигураций представлены на графике, который изображён на Рис.~\ref{fig:conv_exps}. На Рис.~\ref{fig:conv_mean}, изображён график среднего значения количества живых клеток для всех пяти экспериментов. По этому графику видно, что количество живых клеток стабилизируется после 400 итераций на уровне 70 клеток. На Рис.~\ref{fig:conv_aprox} изображён график аппроксимирующей функции количества живых клеток от итераций. По нему также видно, что количество живых клеток сходится к, примерно, 70 клеткам.
Исходя из описания классов и анализа паттернов клеточного автомата, можно сделать вывод, что при различных начальных конфигурациях и граничных условиях, автомат с полем 5 на 5 проявляет свойства 1 (все ячейки становятся мёртвыми) и 2 (переход к циклическим паттернам) классов. Если же увеличить размер поля до 20 клеток и задать нулевые граничные условия, то автомат перестаёт проявлять признаки этих классов и, кажется, что его можно отнести к 3 классу, так как результатом почти всех начальных условий становятся псевдо-случайные хаотические последовательности.
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth]{img/conv_exps.png}
\caption{График количества «живых» клеток относительно номера итерации при нулевых граничных условиях для сетки размером 20 x 20 для пяти произвольных начальных конфигураций.}
\label{fig:conv_exps}
\end{figure}
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth]{img/conv_mean.png}
\caption{График среднего количества «живых» клеток относительно номера итерации при нулевых граничных условиях для сетки размером 20 x 20 по всем экспериментам.}
\label{fig:conv_mean}
\end{figure}
\begin{figure}[h!]
\centering
\includegraphics[width=0.7\linewidth]{img/conv_aprox.png}
\caption{График полиномиальной аппроксимирующей функции (n=10) количества «живых» клеток относительно номера итерации при нулевых граничных условиях для сетки размером 20 x 20.}
\label{fig:conv_aprox}
\end{figure}
\newpage \newpage
\section {Результаты работы программы} \section {Результаты работы программы}
@@ -725,7 +727,7 @@ int main()
\addcontentsline{toc}{section}{Заключение} \addcontentsline{toc}{section}{Заключение}
В ходе выполнения лабораторной работы был реализован двумерный клеточный автомат в консоли с окрестностью фон Неймана в соответствии с заданным номером 109063350. Двоичное представление этого числа, дополненное ведущими нулями, соответствует вектору значений функции переходов рассматриваемого клеточного автомата. Анализ паттернов был проведён для трёх вариантов граничных условий: единичные, нулевые и тороидальные. Было обнаружено как минимум 6 различных циклических паттернов для поля размером 5 на 5. Для поля размером 20 на 20 и нулевых начальных условий был также проведён анализ сходимости и построены графики количества <<живых>> клеток для различных начальных конфигураций. Также по результатам анализа, было определено, что рассматриваемый автомат относится к третьему классу по классификации Стивена Вольфрама. В ходе выполнения лабораторной работы был реализован двумерный клеточный автомат в консоли с окрестностью фон Неймана в соответствии с заданным номером 109063350. Двоичное представление этого числа, дополненное ведущими нулями, соответствует вектору значений функции переходов рассматриваемого клеточного автомата. Анализ паттернов был проведён для трёх вариантов граничных условий: единичные, нулевые и тороидальные. Было обнаружено как минимум 6 различных циклических паттернов для поля размером 5 на 5. Для поля размером 20 на 20 и нулевых начальных условий были построены графики количества <<живых>> клеток для различных начальных конфигураций. Также по результатам анализа, было определено, что при размере поля 5 на 5 рассматриваемый автомат проявляет признаки первого и второго классов по классификации Стивена Вольфрама, однако при большем размере поля в 20 на 20 клеток он больше подходит под определение третьего класса.
Из достоинств выполнения лабораторной работы можно выделить структурирование кода за счёт использования ООП. Вся логика работы клеточного автомата вынесена в отдельный класс \texttt{CellularAutomaton}, который может быть переиспользован в других программах. Также достоинством является то, что приложение позволяет пользователю выбирать граничные условия. Из достоинств выполнения лабораторной работы можно выделить структурирование кода за счёт использования ООП. Вся логика работы клеточного автомата вынесена в отдельный класс \texttt{CellularAutomaton}, который может быть переиспользован в других программах. Также достоинством является то, что приложение позволяет пользователю выбирать граничные условия.