diff --git a/lib/blt b/lib/blt index 558ed1e..68f6a0a 160000 --- a/lib/blt +++ b/lib/blt @@ -1 +1 @@ -Subproject commit 558ed1e0fdc147551d004891dda6dd3b24f61aa2 +Subproject commit 68f6a0af44fe8ba5044a7f37b8bac9809ab709f1 diff --git a/report/template_Report.aux b/report/template_Report.aux index bc51119..6ea946a 100644 --- a/report/template_Report.aux +++ b/report/template_Report.aux @@ -2,16 +2,19 @@ \providecommand\hyper@newdestlabel[2]{} \providecommand\HyField@AuxAddToFields[1]{} \providecommand\HyField@AuxAddToCoFields[2]{} -\@writefile{toc}{\contentsline {section}{\numberline {1}Symbolic regression}{2}{section.0.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {1.1}Introduction}{2}{subsection.0.1.1}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {1.2}Parameter Table}{2}{subsection.0.1.2}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3}Fitness Evaluation}{2}{subsection.0.1.3}\protected@file@percent } -\@writefile{toc}{\contentsline {subsection}{\numberline {1.4}Fitness Plots}{3}{subsection.0.1.4}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {1}Introduction}{2}{section.0.1}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {2}Symbolic regression}{2}{section.0.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.1}Introduction}{2}{subsection.0.2.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.2}Parameter Table}{2}{subsection.0.2.2}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.3}Fitness Evaluation}{2}{subsection.0.2.3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {2.4}Fitness Plots}{3}{subsection.0.2.4}\protected@file@percent } \@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces 2 Elites, 10 Runs Averaged}}{3}{figure.0.1}\protected@file@percent } \newlabel{fig:fp4}{{1}{3}{2 Elites, 10 Runs Averaged}{figure.0.1}{}} \@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces }}{3}{figure.0.2}\protected@file@percent } \newlabel{fig:fp2}{{2}{3}{}{figure.0.2}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.5}Analysis And Conclusion}{4}{subsection.0.1.5}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {2}Rice Classification}{4}{section.0.2}\protected@file@percent } -\@writefile{toc}{\contentsline {section}{\numberline {3}Compiling / Executing}{4}{section.0.3}\protected@file@percent } -\gdef \@abspage@last{5} +\@writefile{toc}{\contentsline {subsection}{\numberline {2.5}Analysis And Conclusion}{4}{subsection.0.2.5}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {3}Rice Classification}{4}{section.0.3}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.1}Introduction}{4}{subsection.0.3.1}\protected@file@percent } +\@writefile{toc}{\contentsline {subsection}{\numberline {3.2}Parameter Table}{4}{subsection.0.3.2}\protected@file@percent } +\@writefile{toc}{\contentsline {section}{\numberline {4}Compiling / Executing}{4}{section.0.4}\protected@file@percent } +\gdef \@abspage@last{6} diff --git a/report/template_Report.log b/report/template_Report.log index 9ff56ae..daec661 100644 --- a/report/template_Report.log +++ b/report/template_Report.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2024.1.7) 15 FEB 2024 23:58 +This is pdfTeX, Version 3.141592653-2.6-1.40.25 (TeX Live 2023/Debian) (preloaded format=pdflatex 2024.1.7) 16 FEB 2024 00:32 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -730,7 +730,7 @@ File: lstlang1.sty 2023/02/27 1.9 listings language file (/usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty File: lstmisc.sty 2023/02/27 1.9 (Carsten Heinz) ) -Package Listings Info: Made $ a short reference for \lstinline on input line 47 +Package Listings Info: Made | a short reference for \lstinline on input line 47 . (/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdftex.def @@ -805,44 +805,46 @@ pdfTeX warning (ext4): destination with the same identifier (name{page.1}) has been already used, duplicate ignored \relax -l.122 \end{center} +l.124 \end{center} [1 ] - + File: fp5.png Graphic file (type png) -Package pdftex.def Info: fp5.png used on input line 130. +Package pdftex.def Info: fp5.png used on input line 132. (pdftex.def) Requested size: 345.0pt x 202.1484pt. - + File: fp3.png Graphic file (type png) -Package pdftex.def Info: fp3.png used on input line 136. +Package pdftex.def Info: fp3.png used on input line 138. (pdftex.def) Requested size: 345.0pt x 207.5856pt. [2] [3 <./fp5.png (PNG copy)> <./fp3.png (PNG copy)>] -[4] (./template_Report.aux) +[4] [5] (./template_Report.aux) *********** LaTeX2e <2023-11-01> L3 programming layer <2023-11-09> *********** Package rerunfilecheck Info: File `template_Report.out' has not changed. -(rerunfilecheck) Checksum: B132A1D91FA2A1CBFF289A6E2527B401;1167. +(rerunfilecheck) Checksum: 88B3055B850BBFE4735D34A8B2B55A9E;1534. ) Here is how much of TeX's memory you used: - 26768 strings out of 476151 - 541590 string characters out of 5795190 - 1937555 words of memory out of 5000000 - 48287 multiletter control sequences out of 15000+600000 - 564163 words of font info for 58 fonts, out of 8000000 for 9000 + 27180 strings out of 476151 + 545257 string characters out of 5795190 + 1952555 words of memory out of 5000000 + 48686 multiletter control sequences out of 15000+600000 + 564797 words of font info for 61 fonts, out of 8000000 for 9000 59 hyphenation exceptions out of 8191 - 93i,8n,99p,428b,506s stack positions out of 10000i,1000n,20000p,200000b,200000s + 93i,8n,99p,428b,1242s stack positions out of 10000i,1000n,20000p,200000b,200000s -Output written on template_Report.pdf (5 pages, 227966 bytes). +/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmr12.pfb> +Output written on template_Report.pdf (6 pages, 253086 bytes). PDF statistics: - 131 PDF objects out of 1000 (max. 8388607) - 91 compressed objects within 1 object stream - 16 named destinations out of 1000 (max. 500000) - 231 words of extra memory for PDF output out of 10000 (max. 10000000) + 169 PDF objects out of 1000 (max. 8388607) + 123 compressed objects within 2 object streams + 26 named destinations out of 1000 (max. 500000) + 255 words of extra memory for PDF output out of 10000 (max. 10000000) diff --git a/report/template_Report.out b/report/template_Report.out index a9473d8..5ec7d95 100644 --- a/report/template_Report.out +++ b/report/template_Report.out @@ -1,8 +1,11 @@ -\BOOKMARK [1][-]{section.0.1}{\376\377\000S\000y\000m\000b\000o\000l\000i\000c\000\040\000r\000e\000g\000r\000e\000s\000s\000i\000o\000n}{}% 1 -\BOOKMARK [2][-]{subsection.0.1.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n}{section.0.1}% 2 -\BOOKMARK [2][-]{subsection.0.1.2}{\376\377\000P\000a\000r\000a\000m\000e\000t\000e\000r\000\040\000T\000a\000b\000l\000e}{section.0.1}% 3 -\BOOKMARK [2][-]{subsection.0.1.3}{\376\377\000F\000i\000t\000n\000e\000s\000s\000\040\000E\000v\000a\000l\000u\000a\000t\000i\000o\000n}{section.0.1}% 4 -\BOOKMARK [2][-]{subsection.0.1.4}{\376\377\000F\000i\000t\000n\000e\000s\000s\000\040\000P\000l\000o\000t\000s}{section.0.1}% 5 -\BOOKMARK [2][-]{subsection.0.1.5}{\376\377\000A\000n\000a\000l\000y\000s\000i\000s\000\040\000A\000n\000d\000\040\000C\000o\000n\000c\000l\000u\000s\000i\000o\000n}{section.0.1}% 6 -\BOOKMARK [1][-]{section.0.2}{\376\377\000R\000i\000c\000e\000\040\000C\000l\000a\000s\000s\000i\000f\000i\000c\000a\000t\000i\000o\000n}{}% 7 -\BOOKMARK [1][-]{section.0.3}{\376\377\000C\000o\000m\000p\000i\000l\000i\000n\000g\000\040\000/\000\040\000E\000x\000e\000c\000u\000t\000i\000n\000g}{}% 8 +\BOOKMARK [1][-]{section.0.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n}{}% 1 +\BOOKMARK [1][-]{section.0.2}{\376\377\000S\000y\000m\000b\000o\000l\000i\000c\000\040\000r\000e\000g\000r\000e\000s\000s\000i\000o\000n}{}% 2 +\BOOKMARK [2][-]{subsection.0.2.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n}{section.0.2}% 3 +\BOOKMARK [2][-]{subsection.0.2.2}{\376\377\000P\000a\000r\000a\000m\000e\000t\000e\000r\000\040\000T\000a\000b\000l\000e}{section.0.2}% 4 +\BOOKMARK [2][-]{subsection.0.2.3}{\376\377\000F\000i\000t\000n\000e\000s\000s\000\040\000E\000v\000a\000l\000u\000a\000t\000i\000o\000n}{section.0.2}% 5 +\BOOKMARK [2][-]{subsection.0.2.4}{\376\377\000F\000i\000t\000n\000e\000s\000s\000\040\000P\000l\000o\000t\000s}{section.0.2}% 6 +\BOOKMARK [2][-]{subsection.0.2.5}{\376\377\000A\000n\000a\000l\000y\000s\000i\000s\000\040\000A\000n\000d\000\040\000C\000o\000n\000c\000l\000u\000s\000i\000o\000n}{section.0.2}% 7 +\BOOKMARK [1][-]{section.0.3}{\376\377\000R\000i\000c\000e\000\040\000C\000l\000a\000s\000s\000i\000f\000i\000c\000a\000t\000i\000o\000n}{}% 8 +\BOOKMARK [2][-]{subsection.0.3.1}{\376\377\000I\000n\000t\000r\000o\000d\000u\000c\000t\000i\000o\000n}{section.0.3}% 9 +\BOOKMARK [2][-]{subsection.0.3.2}{\376\377\000P\000a\000r\000a\000m\000e\000t\000e\000r\000\040\000T\000a\000b\000l\000e}{section.0.3}% 10 +\BOOKMARK [1][-]{section.0.4}{\376\377\000C\000o\000m\000p\000i\000l\000i\000n\000g\000\040\000/\000\040\000E\000x\000e\000c\000u\000t\000i\000n\000g}{}% 11 diff --git a/report/template_Report.pdf b/report/template_Report.pdf index 29163b7..d04f32d 100644 Binary files a/report/template_Report.pdf and b/report/template_Report.pdf differ diff --git a/report/template_Report.synctex.gz b/report/template_Report.synctex.gz index 6592824..8b7a2ff 100644 Binary files a/report/template_Report.synctex.gz and b/report/template_Report.synctex.gz differ diff --git a/report/template_Report.tex b/report/template_Report.tex index a910fa6..3bf2fdd 100644 --- a/report/template_Report.tex +++ b/report/template_Report.tex @@ -44,7 +44,7 @@ title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title columns=fixed % Using fixed column width (for e.g. nice alignment) } -\lstMakeShortInline$ +\lstMakeShortInline| \newtcolorbox{answerbox}[2][]{% attach boxed title to top center @@ -190,7 +190,16 @@ The best average fitness of all the tests was 0.19384 using 0.9 crossover and 0. \end{center} \section{Compiling / Executing} - +This assignment was made for linux using GCC 13.2.0, however any C++17 compliant compiler should work. +The minimum GCC version appears to be 8.5, meaning this assignment can be built on sandcastle. +\begin{lstlisting} + cd your_path_to_this_source/ + mkdir build + cd build + cmake ../ + make -j 32 +\end{lstlisting} +The actual assignment executable is called |Assignment_1| while the automatic run system is called |Assignment_1_RUNNER|. |Assignment_1_RUNNER| has a help menu with options but the defaults will work assuming you run from the build directory and are using part b only. If you want to build for Part A run |cmake -DPART_B=OFF| and run |Assignment_1_RUNNER| with |-b| \end{document} diff --git a/report/template_Report.toc b/report/template_Report.toc index 4edb8e7..e19afde 100644 --- a/report/template_Report.toc +++ b/report/template_Report.toc @@ -1,8 +1,11 @@ -\contentsline {section}{\numberline {1}Symbolic regression}{2}{section.0.1}% -\contentsline {subsection}{\numberline {1.1}Introduction}{2}{subsection.0.1.1}% -\contentsline {subsection}{\numberline {1.2}Parameter Table}{2}{subsection.0.1.2}% -\contentsline {subsection}{\numberline {1.3}Fitness Evaluation}{2}{subsection.0.1.3}% -\contentsline {subsection}{\numberline {1.4}Fitness Plots}{3}{subsection.0.1.4}% -\contentsline {subsection}{\numberline {1.5}Analysis And Conclusion}{4}{subsection.0.1.5}% -\contentsline {section}{\numberline {2}Rice Classification}{4}{section.0.2}% -\contentsline {section}{\numberline {3}Compiling / Executing}{4}{section.0.3}% +\contentsline {section}{\numberline {1}Introduction}{2}{section.0.1}% +\contentsline {section}{\numberline {2}Symbolic regression}{2}{section.0.2}% +\contentsline {subsection}{\numberline {2.1}Introduction}{2}{subsection.0.2.1}% +\contentsline {subsection}{\numberline {2.2}Parameter Table}{2}{subsection.0.2.2}% +\contentsline {subsection}{\numberline {2.3}Fitness Evaluation}{2}{subsection.0.2.3}% +\contentsline {subsection}{\numberline {2.4}Fitness Plots}{3}{subsection.0.2.4}% +\contentsline {subsection}{\numberline {2.5}Analysis And Conclusion}{4}{subsection.0.2.5}% +\contentsline {section}{\numberline {3}Rice Classification}{4}{section.0.3}% +\contentsline {subsection}{\numberline {3.1}Introduction}{4}{subsection.0.3.1}% +\contentsline {subsection}{\numberline {3.2}Parameter Table}{4}{subsection.0.3.2}% +\contentsline {section}{\numberline {4}Compiling / Executing}{4}{section.0.4}% diff --git a/src/program/app.cpp b/src/program/app.cpp index 37174fb..dcd5851 100644 --- a/src/program/app.cpp +++ b/src/program/app.cpp @@ -411,13 +411,13 @@ extern "C" int app_initialize(int startfromcheckpoint) app_fitness_cases[5] = (double*) MALLOC(fitness_cases * sizeof(double)); app_fitness_cases[6] = (double*) MALLOC(fitness_cases * sizeof(double)); app_fitness_cases[7] = (double*) MALLOC(fitness_cases * sizeof(double)); + auto data = rice_data.getTrainingSet(fitness_cases); #else app_fitness_cases[0] = (double*) MALLOC(fitness_cases * sizeof(double)); app_fitness_cases[1] = (double*) MALLOC(fitness_cases * sizeof(double)); #endif oprintf(OUT_PRG, 50, "%d fitness cases:\n", fitness_cases); - auto data = rice_data.getTrainingSet(fitness_cases); for (i = 0; i < fitness_cases; ++i) { #ifndef PART_B