<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE article
  PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.0 20120330//EN" "http://jats.nlm.nih.gov/publishing/1.0/JATS-journalpublishing1.dtd">
<article article-type="research-article" dtd-version="1.0" specific-use="sps-1.6" xml:lang="en" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
	<front>
		<journal-meta>
			<journal-id journal-id-type="publisher-id">teclo</journal-id>
			<journal-title-group>
				<journal-title>TecnoLógicas</journal-title>
				<abbrev-journal-title abbrev-type="publisher">TecnoL.</abbrev-journal-title>
			</journal-title-group>
			<issn pub-type="ppub">0123-7799</issn>
			<issn pub-type="epub">2256-5337</issn>
			<publisher>
				<publisher-name>Instituto Tecnológico Metropolitano - ITM</publisher-name>
			</publisher>
		</journal-meta>
		<article-meta>
			<article-id pub-id-type="doi">10.22430/22565337.1344</article-id>
			<article-categories>
				<subj-group subj-group-type="heading">
					<subject>Artículo de investigación</subject>
				</subj-group>
			</article-categories>
			<title-group>
				<article-title>Comparative Analysis of Parallel Brain Activity Mapping Algorithms for High Resolution Brain Models</article-title>
				<trans-title-group xml:lang="es">
					<trans-title>Análisis comparativo de algoritmos en paralelo de mapeo de actividad cerebral para modelos cerebrales de alta resolución</trans-title>
				</trans-title-group>
			</title-group>
			<contrib-group>
				<contrib contrib-type="author">
					<name>
						<surname>Molina-Machado</surname>
						<given-names>Cristhian D.</given-names>
					</name>
					<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
				</contrib>
				<contrib contrib-type="author">
					<name>
						<surname>Cuartas</surname>
						<given-names>Ernesto</given-names>
					</name>
					<xref ref-type="aff" rid="aff2"><sup>2</sup></xref>
				</contrib>
				<contrib contrib-type="author">
					<name>
						<surname>Martínez-Vargas</surname>
						<given-names>Juan D.</given-names>
					</name>
					<xref ref-type="aff" rid="aff3"><sup>3</sup></xref>
				</contrib>
				<contrib contrib-type="author">
					<name>
						<surname>Giraldo</surname>
						<given-names>Eduardo</given-names>
					</name>
					<xref ref-type="aff" rid="aff4"><sup>4</sup></xref>
				</contrib>
			</contrib-group>
			<aff id="aff1">
				<label>1</label>
				<institution content-type="original"> M.Sc. en Ingeniería Eléctrica, Facultad de Ingeniería, Universidad Tecnológica de Pereira, Pereira-Colombia, cdmolina@utp.edu.co</institution>
				<institution content-type="orgname">Universidad Tecnológica de Pereira</institution>
				<addr-line>
					<named-content content-type="city">Pereira</named-content>
				</addr-line>
				<country country="CO">Colombia</country>
				<email>cdmolina@utp.edu.co</email>
			</aff>
			<aff id="aff2">
				<label>2</label>
				<institution content-type="original"> PhD. en Ingeniería, Movement Control &amp; Neuroplasticity Research Group, KU Leuven University, Leuven-Bélgica, ernesto.cuartas@kuleuven.be</institution>
				<institution content-type="orgname">KU Leuven University</institution>
				<addr-line>
					<named-content content-type="city">Leuven</named-content>
				</addr-line>
				<country country="CO">Bélgica</country>
				<email>ernesto.cuartas@kuleuven.be</email>
			</aff>
			<aff id="aff3">
				<label>3</label>
				<institution content-type="original"> PhD. en Ingeniería, Laboratorio de Máquinas inteligentes y reconocimientos de patrones, Instituto Tecnológico Metropolitano, Medellín-Colombia, juanmartinez@itm.edu.co</institution>
				<institution content-type="orgname">Instituto Tecnológico Metropolitano</institution>
				<addr-line>
					<named-content content-type="city">Medellín</named-content>
				</addr-line>
				<country country="CO">Colombia</country>
				<email>juanmartinez@itm.edu.co</email>
			</aff>
			<aff id="aff4">
				<label>4</label>
				<institution content-type="original"> PhD. en Ingeniería, Programa de Ingeniería Eléctrica, Facultad de Ingenierías, Universidad Tecnológica de Pereira, Pereira-Colombia, egiraldos@utp.edu.co</institution>
				<institution content-type="orgname">Universidad Tecnológica de Pereira</institution>
				<addr-line>
					<named-content content-type="city">Pereira</named-content>
				</addr-line>
				<country country="CO">Colombia</country>
				<email>egiraldos@utp.edu.co</email>
			</aff>
			<pub-date pub-type="epub-ppub">
				<season>Sep-Dec</season>
				<year>2019</year>
			</pub-date>
			<volume>22</volume>
			<issue>46</issue>
			<fpage>177</fpage>
			<lpage>187</lpage>
			<history>
				<date date-type="received">
					<day>09</day>
					<month>05</month>
					<year>2019</year>
				</date>
				<date date-type="accepted">
					<day>02</day>
					<month>09</month>
					<year>2019</year>
				</date>
			</history>
			<permissions>
				<license license-type="open-access" xlink:href="http://creativecommons.org/licenses/by-nc-sa/4.0/" xml:lang="en">
					<license-p>This is an open-access article distributed under the terms of the Creative Commons Attribution License</license-p>
				</license>
			</permissions>
			<abstract>
				<title>Abstract</title>
				<p>This paper proposes a comparative analysis between regular and parallel versions of FISTA and Tikhonov-like optimizations for solving the EEG brain mapping problem. Such comparison is performed in terms of computational time reduction and estimation error achieved by the parallelized methods. Two brain models (high- and low-resolution) are used to compare the algorithms. As a result, it can be seen that, if the number of parallel processes increases, computational time decreases significantly for all the head models used in this work, without compromising the reconstruction quality. In addition, it can be concluded that the use of a high-resolution head model produces an improvement in any source reconstruction method in terms of spatial resolution. </p>
			</abstract>
			<trans-abstract xml:lang="es">
				<title>Resumen</title>
				<p>En este artículo se propone un análisis comparativo entre versiones regulares y en paralelo de métodos de optimización FISTA y Tikhonov, para resolver el problema de mapeo cerebral a partir de EEG. La comparación se realiza en términos de la reducción del tiempo computacional y el error de estimación obtenido por los métodos paralelizados. Dos modelos de cabeza con alta y baja resolución son usados para la comparación de los algoritmos. Como resultado se puede ver que, si el número de procesos en paralelo se incrementa, el tiempo computacional disminuye significativamente para todos los modelos de cabeza, sin comprometer la calidad de la reconstrucción. Adicionalmente, se puede concluir que el uso de un modelo de cabeza de alta resolución resulta en una mejora de cualquier método de reconstrucción en términos de la resolución espacial.</p>
			</trans-abstract>
			<kwd-group xml:lang="en">
				<title>Keywords:</title>
				<kwd>Parallelized Algorithms</kwd>
				<kwd>optimization</kwd>
				<kwd>brain mapping</kwd>
				<kwd>electroencephalography</kwd>
			</kwd-group>
			<kwd-group xml:lang="es">
				<title>Palabras clave:</title>
				<kwd>Algoritmos paralelizados</kwd>
				<kwd>optimización</kwd>
				<kwd>mapeo cerebral</kwd>
				<kwd>electroencefalografía</kwd>
			</kwd-group>
			<counts>
				<fig-count count="6"/>
				<table-count count="0"/>
				<equation-count count="13"/>
				<ref-count count="15"/>
				<page-count count="11"/>
			</counts>
		</article-meta>
	</front>
	<body>
		<sec sec-type="intro">
			<title>1. INTRODUCCIÓN</title>
			<p>The use of high-resolution models for brain mapping from electroencephalographic (EEG) signals is a desirable condition in the study of several pathologies or cognitive behaviours since they commonly provide a lower spatial error in brain activity localization <sup>[</sup><xref ref-type="bibr" rid="B1"><sup>1</sup></xref><sup>]</sup>. However, high-resolution models imply the computation of large amounts of data and the inversion of high dimensional matrices.</p>
			<p>Over the last years, parallel computing has emerged as a solution for processing high-dimensional data <sup>[</sup><xref ref-type="bibr" rid="B2"><sup>2</sup></xref><sup>].</sup> This technology reduces the computational time required to perform computationally expensive data analyses by splitting the process into low-dimensional sub-processes that are computed simultaneously. Consequently, parallel computing methods have been validated for solving optimization problems in fields such as networking <sup>[</sup><xref ref-type="bibr" rid="B3"><sup>3</sup></xref><sup>]</sup>, signal processing <sup>[</sup><xref ref-type="bibr" rid="B4"><sup>4</sup></xref><sup>]</sup>, machine learning <sup>[</sup><xref ref-type="bibr" rid="B5"><sup>5</sup></xref><sup>]</sup>, and even non-convex problems <sup>[</sup><xref ref-type="bibr" rid="B6"><sup>6</sup></xref><sup>]</sup>. </p>
			<p>Particularly, EEG brain mapping is formulated as a large ill-posed mathematically-undetermined inverse problem that is solved by imposing smooth and/or sparse constraints to the optimization problem <sup>[</sup><xref ref-type="bibr" rid="B7"><sup>7</sup></xref><sup>], [</sup><xref ref-type="bibr" rid="B8"><sup>8</sup></xref><sup>]</sup>. Thus, in the case of sparse brain mapping solutions (which are desirable for estimating brain activity where only some brain sources are active at a specific time instant), methods such as the Fast Iterative Shrinkage-Thresholding Algorithm (FISTA) are commonly used <sup>[</sup><xref ref-type="bibr" rid="B9"><sup>9</sup></xref><sup>]</sup>. On the other hand, when dealing with smooth brain activity, Tikhonov-like approaches are the standard as they provide a simple and trustworthy solutions to inverse problems <sup>[</sup><xref ref-type="bibr" rid="B10"><sup>10</sup></xref><sup>]</sup>. </p>
			<p>However, although parallel versions of both FISTA and Tikhonov-like inverse problem solutions have been widely used in several fields <sup>[</sup><xref ref-type="bibr" rid="B11"><sup>11</sup></xref><sup>]</sup> and it has been demonstrated that the same solution is obtained using one or several simultaneous processes, their influence on EEG brain mapping approaches has not been previously studied. </p>
			<p>This paper proposes a comparative analysis between regular and parallel versions of FISTA and Tikhonov-like optimization methods for solving the EEG brain mapping problem. Such comparison is performed in terms of computational time reduction and spatial accuracy achieved by the parallelized methods. This article is organized as follows: Section 2 describes the forward model decomposition and the solution using the parallel FISTA, as well as the parallel Tikhonov-like solutions based on the iterative solution of a L2-norm objective function. Finally, Sections 3 and 4 present the evaluation, discussion, and conclusions of the results in terms of computational time and relative estimation error.</p>
		</sec>
		<sec>
			<title>2. PARALLEL INVERSE PROBLEM</title>
			<sec>
				<title>2.1 Forward model</title>
				<p>The EEG simulation of a multivariate case can be described at a time instant as (<xref ref-type="disp-formula" rid="e1">1</xref>):</p>
				<p>
					<disp-formula id="e1">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e1.jpg"/>
					</disp-formula>
				</p>
				<p>where y is an 𝑚 𝖷 1 vector describing the measurements of 𝑚 EEG electrodes at a time instant; 𝑥, an 𝑛 𝖷 1 vector describing the brain activity at 𝑛 possible locations; and 𝑀, an 𝑚 𝖷 𝑛 matrix called the lead-field matrix, which relates the neural activity inside the brain with the EEG signals. (<xref ref-type="disp-formula" rid="e1">1</xref>) can be rewritten as a sub-set of block matrices (<xref ref-type="disp-formula" rid="e2">2</xref>):</p>
				<p>
					<disp-formula id="e2">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e2.png"/>
					</disp-formula>
				</p>
				<p>Where 𝑀<sup>𝑗</sup> is the 𝑗 -𝑡ℎ matrix block of dimension 𝑚 𝖷 𝑛<sub>1</sub>, being <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i004.png"/> if 𝑛 can be written as an integer number 𝑁 of 𝑛<sub>1</sub></p>
			</sec>
			<sec>
				<title>2.2 Parallel FISTA method</title>
				<p>A parallel version of FISTA optimization, which can be used since the structure of the estimated brain activity 𝑥<sub>𝑘</sub> is sparse, is presented in <sup>[</sup><xref ref-type="bibr" rid="B12"><sup>12</sup></xref><sup>]</sup>. The parallel FISTA algorithm is described by the following set of equations (<xref ref-type="disp-formula" rid="e3">3</xref>), (<xref ref-type="disp-formula" rid="e4">4</xref>), (<xref ref-type="disp-formula" rid="e5">5</xref>), (<xref ref-type="disp-formula" rid="e6">6</xref>):</p>
				<p>
					<disp-formula id="e3">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e3.png"/>
					</disp-formula>
				</p>
				<p>
					<disp-formula id="e4">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e4.png"/>
					</disp-formula>
				</p>
				<p>
					<disp-formula id="e5">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e5.png"/>
					</disp-formula>
				</p>
				<p>
					<disp-formula id="e6">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e6.jpg"/>
					</disp-formula>
				</p>
				<p>Where 𝑘 = 1, … ,𝐾 is the iteration index; <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i009.png"/>, the 𝑗 -𝑡ℎ block activity computed in parallel processes, <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i010.png"/> and <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i011.jpg"/> according to <sup>[</sup><xref ref-type="bibr" rid="B11"><sup>11</sup></xref><sup>]</sup>; and <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i012.png"/> the proximal operator in terms of the <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i013.png"/> norm and the regularization parameter 𝜆 <sup>[</sup><xref ref-type="bibr" rid="B13"><sup>13</sup></xref><sup>]</sup> defined as (<xref ref-type="disp-formula" rid="e7">7</xref>): </p>
				<p>
					<disp-formula id="e7">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e7.jpg"/>
					</disp-formula>
				</p>
				<p>The resulting estimated activity is computed at the last iteration as (<xref ref-type="disp-formula" rid="e8">8</xref>): </p>
				<p>
					<disp-formula id="e8">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e8.png"/>
					</disp-formula>
				</p>
			</sec>
			<sec>
				<title>2.3 Parallel Tikhonov-like method</title>
				<p>This work proposes a parallel method for a Tikhonov-like solution as an extension of the parallel FISTA algorithm with a proximal operator based on the <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i016.png"/> norm <sup>[</sup><xref ref-type="bibr" rid="B11"><sup>11</sup></xref><sup>]</sup>, as follows (<xref ref-type="disp-formula" rid="e8">8</xref>), (<xref ref-type="disp-formula" rid="e9">9</xref>), (<xref ref-type="disp-formula" rid="e10">10</xref>), (<xref ref-type="disp-formula" rid="e11">11</xref>), (<xref ref-type="disp-formula" rid="e12">12</xref>):</p>
				<p>
					<disp-formula id="e9">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e9.png"/>
					</disp-formula>
				</p>
				<p>
					<disp-formula id="e10">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e10.png"/>
					</disp-formula>
				</p>
				<p>
					<disp-formula id="e11">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e11.png"/>
					</disp-formula>
				</p>
				<p>
					<disp-formula id="e12">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e12.jpg"/>
					</disp-formula>
				</p>
				<p>Where 𝑘 = 1, … ,𝐾 is the iteration index; <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i021.png"/>, the 𝑗 -𝑡ℎ block activity computed in parallel processes; and <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i022.png"/>, the proximal operator in terms of the <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i016.png"/> norm.</p>
			</sec>
		</sec>
		<sec sec-type="results|discussion">
			<title>3. RESULTS AND DISCUSSION</title>
			<sec>
				<title>3.1 Experimental setup</title>
				<p>Two high-resolution head models were studied in this work for evaluating the performance of the algorithms in regular and parallel implementations. The first model, named the New York head model, was used with 𝑛 = 2004 (2 k), 𝑛 = 10016 (10 k), and 𝑛 = 74382 (75 k) sources and 𝑚 = 230 EEG channels, as described in<sup>[</sup><xref ref-type="bibr" rid="B14"><sup>14</sup></xref><sup>]</sup>. The second model, named the Belgian head model, was used with 𝑛 = 8000 (8 k), 𝑛 = 20000 (20 k), and 𝑛 = 70000 (70 k) sources and 𝑚 = 69 EEG channels. A detailed description of the second model can be found in <sup>[</sup><xref ref-type="bibr" rid="B14"><sup>14</sup></xref><sup>], [</sup><xref ref-type="bibr" rid="B15"><sup>15</sup></xref><sup>]</sup>. A visual representation of both head models with their different numbers of sources is shown in <xref ref-type="fig" rid="f1">Fig. 1</xref>.</p>
				<p>
					<fig id="f1">
						<label>Fig. 1</label>
						<caption>
							<title>Visual representation of the New Yok (top) and Belgian (bottom) high-resolution head models</title>
						</caption>
						<graphic xlink:href="2256-5337-teclo-22-46-00177-gf1.png"/>
						<attrib>Source: Authors.</attrib>
					</fig>
				</p>
				<p>Noticeably, as the neural activity is estimated at each vertex of the brain model, a higher spatial resolution (high 𝑛 values) can reduce the spatial error that occurs when a low-resolution brain model is considered as a reference for an inverse problem solution.</p>
				<p>The computer processor used for the experiments is a 12-core Intel Xeon Silver 4116 with 2.1 GHz of speed and 64 GB of RAM. The algorithms were implemented employing the Open Message Passing Interface (Open MPI). To this end, Equations (<xref ref-type="disp-formula" rid="e4">4</xref>) and (<xref ref-type="disp-formula" rid="e8">8</xref>) were solved by means of the MPI-ALLreduce function with the sum operator. It is worth mentioning that the GNU Scientific Library (GSL) was used for the calculations. </p>
				<p>In order to evaluate the performance of the algorithms, we propose the following simulation benchmark: A static active source placed in a random brain cortex location is simulated in both high-resolution models with different numbers of sources, as shown in the first column of <xref ref-type="fig" rid="f2">Fig. 2</xref>. For the sake of simplicity in the parallel implementations, here we only simulated a single time instant. Then, we reconstructed the brain activity using the FISTA and Tikhonov-like methods described in the previous sections with one, two, four, six, eight, ten, and twelve simultaneous processes. The number of parallel processes N was selected from one to twelve, which is the maximum number of cores of the computer processor used for the calculations.</p>
				<p>
					<fig id="f2">
						<label>Fig. 2</label>
						<caption>
							<title>Simulated benchmark and examples of obtained reconstructions</title>
						</caption>
						<graphic xlink:href="2256-5337-teclo-22-46-00177-gf2.png"/>
						<attrib>Source: Authors.</attrib>
					</fig>
				</p>
				<p>We used two performance measurements: </p>
				<p>i) Computational time (t): It helps us to quantify the computational improvement achieved by the parallel solutions. Here, we measured the estimation time in seconds for the 500 iterations cycle used in Tikhonov, including the communication time among processes. In addition, a comparison of the algorithms, using the speedup measurement, is also included.</p>
				<p>ii) Relative error (𝑒): It evaluates if the parallel solutions worsen the brain activity estimation. This measurement is computed as (<xref ref-type="disp-formula" rid="e13">13</xref>):</p>
				<p>
					<disp-formula id="e13">
						<graphic xlink:href="2256-5337-teclo-22-46-00177-e13.png"/>
					</disp-formula>
				</p>
				<p>Where 𝑥 and <inline-graphic xlink:href="2256-5337-teclo-22-46-00177-i026.png"/> are the 𝑛 𝖷 1 vector comprising the simulated and estimated brain activity.</p>
			</sec>
			<sec>
				<title>3.2 Results</title>
				<p>The performance of the algorithms, in terms of computational time, is shown in <xref ref-type="fig" rid="f3">Fig. 3</xref>. In the latter, we notice a monotonic computational time reduction if the number of parallel processes is increased, regardless of the type of algorithm used to solve the inverse problem (namely, FISTA or Tikhonov-like). Moreover, we observe that the difference in the computational times with the three n values (considered when using a single process) is significantly reduced as the number of processes is increased.</p>
				<p>
					<fig id="f3">
						<label>Fig. 3</label>
						<caption>
							<title>Performance of the FISTA and Tikhonov-like algorithms in terms of computational time with one or several processes for the New York and Belgian head models</title>
						</caption>
						<graphic xlink:href="2256-5337-teclo-22-46-00177-gf3.png"/>
						<attrib>Source: Authors.</attrib>
					</fig>
				</p>
				<p>Specifically, with a single process, using n ≈ 70 k requires about four times the computational time needed for n ≈ 2 k, and about three times that for n ≈ 10 k. However, with 12 parallel </p>
				<p>processes, using n ≈ 70 k requires two times the computational time used for n ≈ 2 k or n ≈ 10 k.</p>
				<p>Furthermore, noticeably, the computational time required to solve the inverse problem using parallel processes for high-resolution models (namely, n ≈ 70 k) is equal to or even lower than that needed to solve the optimization with a single process for a reduced head model (namely, n ≈ 10 k). For example, the same reduced computational time is required to solve the inverse problem of a model with 20 k sources implementing a single process or that of a model with 70 k sources implementing 4 or more parallel processes. </p>
				<p>This is a remarkable result since a high-resolution model of 70 k sources can be used instead of a model of 20 k sources in the same or even less computational time. In order to validate this result, an additional calculation, using the speedup measurement, is presented in <xref ref-type="fig" rid="f4">Fig. 4</xref>.</p>
				<p>
					<fig id="f4">
						<label>Fig. 4</label>
						<caption>
							<title>Speedup measurement using the FISTA algorithm with models of 70 k and 75 k sources</title>
						</caption>
						<graphic xlink:href="2256-5337-teclo-22-46-00177-gf4.png"/>
						<attrib>Source: Authors.</attrib>
					</fig>
				</p>
				<p>Moreover, to validate whether the parallel solutions deteriorate the source reconstruction quality, <xref ref-type="fig" rid="f5">Fig. 5</xref> shows the relative error for all the models considered in this work. From such Figure, we can note that the relative error does not depend on the number of parallel processes but on the number of sources of the head model.</p>
				<p>
					<fig id="f5">
						<label>Fig. 5</label>
						<caption>
							<title>Relative error (%) of the proposed parallel algorithms for the New York head model with 2 k, 10 k, and 75 k sources; and the Belgian model with 8 k, 20 k, and 70 k sources</title>
						</caption>
						<graphic xlink:href="2256-5337-teclo-22-46-00177-gf5.jpg"/>
						<attrib>Source: Authors.</attrib>
					</fig>
				</p>
				<p>An additional example of the localization error reduction that can be obtained using high-resolution models can be seen in <xref ref-type="fig" rid="f6">Fig. 6</xref>. The latter compares parallel FISTA and Tikhonov solutions for the Belgian head model with 8 k, 20 k, and 70 k sources. By increasing the number of sources of the head model, the localization error is reduced since the distance between sources is lower in high-resolution models.</p>
				<p>
					<fig id="f6">
						<label>Fig. 6</label>
						<caption>
							<title>Comparison of location errors in the Belgian head model with different numbers of sources</title>
						</caption>
						<graphic xlink:href="2256-5337-teclo-22-46-00177-gf6.png"/>
						<attrib>Source: Authors.</attrib>
					</fig>
				</p>
				<p>This property is specially observed in the results of the parallel FISTA method in <xref ref-type="fig" rid="f3">Fig. 3</xref> and <xref ref-type="fig" rid="f5">Fig. 5</xref>, where it is noticeable that, by using parallel processes for the solution of optimization problems, a reduction in computational load can be achieved.</p>
				<p>Therefore, the same computational time is required to solve a low-resolution model implementing one process or a high-resolution model implementing several parallel processes; and the brain activity estimation error is not increased.</p>
				<p>The speedup measurement was used in order to validate the computational time results, especially for the models with 70 k and 75 k sources. <xref ref-type="fig" rid="f4">Fig. 4</xref> presents the speedup measurement of the FISTA algorithm. It can be seen that the speedup increases along with number of parallel processes. It is worth mentioning that, in order to compute the speedup measurement, 45 % of the code is parallelized.</p>
			</sec>
		</sec>
		<sec sec-type="discussion">
			<title>4. DISCUSSION</title>
			<p>This work presented a comparison between parallel and single-process solutions to the EEG inverse problem in high-resolution head models. Based on the performance results described above, the following findings are worth mentioning:</p>
			<p>Regarding the implemented optimization approach, as expected, FISTA produced a sparse solution, whereas Tikhonov-like methods tended to spread the reconstructed brain activity into the near neighborhood of the simulated source. However, the performance of Tikhonov-like solutions for higher-resolution models (namely, n = 20000) resembles that of their FISTA counterparts with a lower number of sources (n = 8000). As a result, high-resolution models can improve the performance of any source reconstruction method.</p>
			<p>Further, regarding computational time, it is noticeable that the higher the model resolution, the longer the time required to solve the optimization problem. However, as the number of parallel processes increases, the computational time significantly decreases for all the head models used in this work, without compromising the reconstruction quality. As a result, parallel solutions to the EEG inverse problem improve the computational performance of the optimization process without distorting the estimated sources. </p>
			<p>According to the speedup measurements, this particular process clearly reaches a saturation point where the computational time stops decreasing. However, as the number of dipoles n and time samples T continue to increase (producing many more parameters to optimize), it will be necessary to use more parallel processes and computational resources to reduce, as much as possible, the time needed to solve the inversion task.</p>
		</sec>
		<sec sec-type="conclusions">
			<title>5. CONCLUSIONS AND FUTURE WORK</title>
			<p>In this paper, we compared the performance of parallel computing methods for solving the EEG brain mapping problem. To this end, we used head models with different numbers of dipoles, ranging from approximately 2 k to 70 k. Moreover, we solved the optimization problem using 1, 2, 4, 6, 8, 10, and 12 parallel processes. The results demonstrate that head models with high numbers of dipoles can produce better representations of the brain without compromising the computational time used for solving the optimization task.</p>
			<p>As the aim of this work is to introduce parallel computing processes in order to solve the EEG inverse problem, we ignored the dynamic nature of EEG recordings, performing the source reconstruction of a single time instant. However, as future work, we will propose dynamic parallel solutions.</p>
		</sec>
	</body>
	<back>
		<ack>
			<title>6. ACKNOWLEDGMENTS</title>
			<p>This work was funded by COLCIENCIAS (Departamento Administrativo Nacional de Ciencia, Tecnología e Innovación), project number 111077757982.</p>
		</ack>
		<ref-list>
			<title>REFERENCES</title>
			<ref id="B1">
				<label>[1]</label>
				<mixed-citation>[1] C. M. Michel and D. Brunet, “EEG Source Imaging: A Practical Review of the Analysis Steps,” Front. Neurol., vol. 10, pp.1-18, Apr. 2019. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fneur.2019.00325">https://doi.org/10.3389/fneur.2019.00325</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Michel</surname>
							<given-names>C. M.</given-names>
						</name>
						<name>
							<surname>Brunet</surname>
							<given-names>D.</given-names>
						</name>
					</person-group>
					<article-title>EEG Source Imaging: A Practical Review of the Analysis Steps</article-title>
					<source>Front. Neurol.</source>
					<volume>10</volume>
					<fpage>1</fpage>
					<lpage>18</lpage>
					<month>04</month>
					<year>2019</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fneur.2019.00325">https://doi.org/10.3389/fneur.2019.00325</ext-link>
				</element-citation>
			</ref>
			<ref id="B2">
				<label>[2]</label>
				<mixed-citation>[2] I. A. T. Hashem, I. Yaqoob, N. B. Anuar, S. Mokhtar, A. Gani, and S. Ullah Khan, “The rise of ‘big data’ on cloud computing: Review and open research issues,” Inf. Syst., vol. 47, pp. 98-115, Jan. 2015. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.is.2014.07.006">https://doi.org/10.1016/j.is.2014.07.006</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Hashem</surname>
							<given-names>I. A. T.</given-names>
						</name>
						<name>
							<surname>Yaqoob</surname>
							<given-names>I.</given-names>
						</name>
						<name>
							<surname>Anuar</surname>
							<given-names>N. B.</given-names>
						</name>
						<name>
							<surname>Mokhtar</surname>
							<given-names>S.</given-names>
						</name>
						<name>
							<surname>Gani</surname>
							<given-names>A.</given-names>
						</name>
						<name>
							<surname>Ullah</surname>
							<given-names>S.</given-names>
						</name>
					</person-group>
					<article-title>The rise of ‘big data’ on cloud computing: Review and open research issues</article-title>
					<source>Inf. Syst.</source>
					<volume>47</volume>
					<fpage>98</fpage>
					<lpage>115</lpage>
					<month>01</month>
					<year>2015</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.is.2014.07.006">https://doi.org/10.1016/j.is.2014.07.006</ext-link>
				</element-citation>
			</ref>
			<ref id="B3">
				<label>[3]</label>
				<mixed-citation>[3] M. Mubarak, C. D. Carothers, R. B. Ross, and P. Carns, “Enabling Parallel Simulation of Large-Scale HPC Network Systems,” IEEE Trans. Parallel Distrib. Syst., vol. 28, no. 1, pp. 87-100, Jan. 2017. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/TPDS.2016.2543725">https://doi.org/10.1109/TPDS.2016.2543725</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Mubarak</surname>
							<given-names>M.</given-names>
						</name>
						<name>
							<surname>Carothers</surname>
							<given-names>C. D.</given-names>
						</name>
						<name>
							<surname>Ross</surname>
							<given-names>R. B.</given-names>
						</name>
						<name>
							<surname>Carns</surname>
							<given-names>P.</given-names>
						</name>
					</person-group>
					<article-title>Enabling Parallel Simulation of Large-Scale HPC Network Systems</article-title>
					<source>IEEE Trans. Parallel Distrib. Syst.</source>
					<volume>28</volume>
					<issue>1</issue>
					<fpage>87</fpage>
					<lpage>100</lpage>
					<month>01</month>
					<year>2017</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/TPDS.2016.2543725">https://doi.org/10.1109/TPDS.2016.2543725</ext-link>
				</element-citation>
			</ref>
			<ref id="B4">
				<label>[4]</label>
				<mixed-citation>[4] C. D. Chambers et al., “Parallel processing of data”, Estados Unidos, US8555265B2, Oct. 8, 2013.</mixed-citation>
				<element-citation publication-type="patent">
					<person-group person-group-type="author">
						<name>
							<surname>Chambers</surname>
							<given-names>C. D.</given-names>
						</name>
						<etal/>
					</person-group>
					<source>Parallel processing of data</source>
					<publisher-loc>Estados Unidos</publisher-loc>
					<patent country="US">US8555265B2</patent>
					<day>08</day>
					<month>10</month>
					<year>2013</year>
				</element-citation>
			</ref>
			<ref id="B5">
				<label>[5]</label>
				<mixed-citation>[5] M. Hong, M. Razaviyayn, Z.-Q. Luo, and J.-S. Pang, “A Unified Algorithmic Framework for Block-Structured Optimization Involving Big Data: With applications in machine learning and signal processing,” IEEE Signal Process. Mag., vol. 33, no. 1, pp. 57-77, Jan. 2016. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/MSP.2015.2481563">https://doi.org/10.1109/MSP.2015.2481563</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Hong</surname>
							<given-names>M.</given-names>
						</name>
						<name>
							<surname>Razaviyayn</surname>
							<given-names>M.</given-names>
						</name>
						<name>
							<surname>Luo</surname>
							<given-names>Z.-Q.</given-names>
						</name>
						<name>
							<surname>Pang</surname>
							<given-names>J.-S.</given-names>
						</name>
					</person-group>
					<article-title>A Unified Algorithmic Framework for Block-Structured Optimization Involving Big Data: With applications in machine learning and signal processing</article-title>
					<source>IEEE Signal Process. Mag.</source>
					<volume>33</volume>
					<issue>1</issue>
					<fpage>57</fpage>
					<lpage>77</lpage>
					<month>01</month>
					<year>2016</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/MSP.2015.2481563">https://doi.org/10.1109/MSP.2015.2481563</ext-link>
				</element-citation>
			</ref>
			<ref id="B6">
				<label>[6]</label>
				<mixed-citation>[6] F. Facchinei, G. Scutari, and S. Sagratella, “Parallel Selective Algorithms for Nonconvex Big Data Optimization,” IEEE Trans. Signal Process., vol. 63, no. 7, pp. 1874-1889, Apr. 2015. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/TSP.2015.2399858">https://doi.org/10.1109/TSP.2015.2399858</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Facchinei</surname>
							<given-names>F.</given-names>
						</name>
						<name>
							<surname>Scutari</surname>
							<given-names>G.</given-names>
						</name>
						<name>
							<surname>Sagratella</surname>
							<given-names>S.</given-names>
						</name>
					</person-group>
					<article-title>Parallel Selective Algorithms for Nonconvex Big Data Optimization</article-title>
					<source>IEEE Trans. Signal Process.</source>
					<volume>63</volume>
					<issue>7</issue>
					<fpage>1874</fpage>
					<lpage>1889</lpage>
					<month>04</month>
					<year>2015</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/TSP.2015.2399858">https://doi.org/10.1109/TSP.2015.2399858</ext-link>
				</element-citation>
			</ref>
			<ref id="B7">
				<label>[7]</label>
				<mixed-citation>[7] E. Giraldo-Suarez, J. D. Martinez-Vargas, and G. Castellanos-Dominguez, “Reconstruction of Neural Activity from EEG Data Using Dynamic Spatiotemporal Constraints,” Int. J. Neural Syst., vol. 26, no. 07, p. 1650026, Nov. 2016. https://doi.org/10.1142/S012906571650026X</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Giraldo-Suarez</surname>
							<given-names>E.</given-names>
						</name>
						<name>
							<surname>Martinez-Vargas</surname>
							<given-names>J. D.</given-names>
						</name>
						<name>
							<surname>Castellanos-Dominguez</surname>
							<given-names>G.</given-names>
						</name>
					</person-group>
					<article-title>Reconstruction of Neural Activity from EEG Data Using Dynamic Spatiotemporal Constraints</article-title>
					<source>Int. J. Neural Syst.</source>
					<volume>26</volume>
					<issue>07</issue>
					<fpage>1650026</fpage>
					<lpage>1650026</lpage>
					<month>11</month>
					<year>2016</year>
				</element-citation>
			</ref>
			<ref id="B8">
				<label>[8]</label>
				<mixed-citation>[8] E. Giraldo-Suárez, J. I. Padilla-Buriticá, and C. G. Castellanos-Domínguez, “Dynamic inverse problem solution using a kalman filter smoother for neuronal activity estimation,” TecnoLógicas, no. 27, p. 33-51, Dec. 2011. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.22430/22565337.3">https://doi.org/10.22430/22565337.3</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Giraldo-Suárez</surname>
							<given-names>E.</given-names>
						</name>
						<name>
							<surname>Padilla-Buriticá</surname>
							<given-names>J. I.</given-names>
						</name>
						<name>
							<surname>Castellanos-Domínguez</surname>
							<given-names>C. G.</given-names>
						</name>
					</person-group>
					<article-title>Dynamic inverse problem solution using a kalman filter smoother for neuronal activity estimation</article-title>
					<source>TecnoLógicas</source>
					<issue>27</issue>
					<fpage>33</fpage>
					<lpage>51</lpage>
					<month>12</month>
					<year>2011</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.22430/22565337.3">https://doi.org/10.22430/22565337.3</ext-link>
				</element-citation>
			</ref>
			<ref id="B9">
				<label>[9]</label>
				<mixed-citation>[9] S. Castaño-Candamil, J. Höhne, J.-D. Martínez-Vargas, X.-W. An, G. Castellanos-Domínguez, and S. Haufe, “Solving the EEG inverse problem based on space-time-frequency structured sparsity constraints,” Neuroimage, vol. 118, pp. 598-612, Sep. 2015. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.neuroimage.2015.05.052">https://doi.org/10.1016/j.neuroimage.2015.05.052</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Castaño-Candamil</surname>
							<given-names>S.</given-names>
						</name>
						<name>
							<surname>Höhne</surname>
							<given-names>J.</given-names>
						</name>
						<name>
							<surname>Martínez-Vargas</surname>
							<given-names>J.-D.</given-names>
						</name>
						<name>
							<surname>An</surname>
							<given-names>X.-W.</given-names>
						</name>
						<name>
							<surname>Castellanos-Domínguez</surname>
							<given-names>G.</given-names>
						</name>
						<name>
							<surname>Haufe</surname>
							<given-names>S.</given-names>
						</name>
					</person-group>
					<article-title>Solving the EEG inverse problem based on space-time-frequency structured sparsity constraints</article-title>
					<source>Neuroimage</source>
					<volume>118</volume>
					<fpage>598</fpage>
					<lpage>612</lpage>
					<month>09</month>
					<year>2015</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.neuroimage.2015.05.052">https://doi.org/10.1016/j.neuroimage.2015.05.052</ext-link>
				</element-citation>
			</ref>
			<ref id="B10">
				<label>[10]</label>
				<mixed-citation>[10] G. Adde, M. Clerc, and R. Keriven, “Imaging methods for MEG/EEG inverse problem,” Int. J. Bioelectromagn., vol. 7, no. 2, pp. 111-114, Jan. 2005.</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Adde</surname>
							<given-names>G.</given-names>
						</name>
						<name>
							<surname>Clerc</surname>
							<given-names>M.</given-names>
						</name>
						<name>
							<surname>Keriven</surname>
							<given-names>R.</given-names>
						</name>
					</person-group>
					<article-title>Imaging methods for MEG/EEG inverse problem</article-title>
					<source>Int. J. Bioelectromagn.</source>
					<volume>7</volume>
					<issue>2</issue>
					<fpage>111</fpage>
					<lpage>114</lpage>
					<month>01</month>
					<year>2005</year>
				</element-citation>
			</ref>
			<ref id="B11">
				<label>[11]</label>
				<mixed-citation>[11] Z. Chen, J. Nagy, Y. Xi, and B. Yu, “Structured FISTA for Image Restoration,” arXiv Prepr., pp. 1-19, Jan. 2019.</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Chen</surname>
							<given-names>Z.</given-names>
						</name>
						<name>
							<surname>Nagy</surname>
							<given-names>J.</given-names>
						</name>
						<name>
							<surname>Xi</surname>
							<given-names>Y.</given-names>
						</name>
						<name>
							<surname>Yu</surname>
							<given-names>B.</given-names>
						</name>
					</person-group>
					<article-title>Structured FISTA for Image Restoration</article-title>
					<source>arXiv Prepr.</source>
					<fpage>1</fpage>
					<lpage>19</lpage>
					<month>01</month>
					<year>2019</year>
				</element-citation>
			</ref>
			<ref id="B12">
				<label>[12]</label>
				<mixed-citation>[12] Z. Peng, M. Yan, and W. Yin, “Parallel and distributed sparse optimization,” in 2013 Asilomar Conference on Signals, Systems and Computers, Pacific Grove, 2013, pp. 659-646. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/ACSSC.2013.6810364">https://doi.org/10.1109/ACSSC.2013.6810364</ext-link>
				</mixed-citation>
				<element-citation publication-type="confproc">
					<person-group person-group-type="author">
						<name>
							<surname>Peng</surname>
							<given-names>Z.</given-names>
						</name>
						<name>
							<surname>Yan</surname>
							<given-names>M.</given-names>
						</name>
						<name>
							<surname>Yin</surname>
							<given-names>W.</given-names>
						</name>
					</person-group>
					<source>Parallel and distributed sparse optimization</source>
					<conf-name>2013 Asilomar Conference on Signals, Systems and Computers</conf-name>
					<conf-loc>Pacific Grove</conf-loc>
					<conf-date>2013</conf-date>
					<fpage>659</fpage>
					<lpage>646</lpage>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1109/ACSSC.2013.6810364">https://doi.org/10.1109/ACSSC.2013.6810364</ext-link>
				</element-citation>
			</ref>
			<ref id="B13">
				<label>[13]</label>
				<mixed-citation>[13] Z. Li and J. Li, “A simple proximal stochastic gradient method for nonsmooth nonconvex optimization,” in NIPS’18 Proceedings of the 32nd International Conference on Neural Information Processing Systems, Montréal, 2018, pp. 5569-5579.</mixed-citation>
				<element-citation publication-type="confproc">
					<person-group person-group-type="author">
						<name>
							<surname>Li</surname>
							<given-names>Z.</given-names>
						</name>
						<name>
							<surname>Li</surname>
							<given-names>J.</given-names>
						</name>
					</person-group>
					<source>A simple proximal stochastic gradient method for nonsmooth nonconvex optimization</source>
					<conf-name>NIPS’18 Proceedings of the 32nd International Conference on Neural Information Processing Systems</conf-name>
					<conf-loc>Montréal</conf-loc>
					<conf-date>2018</conf-date>
					<fpage>5569</fpage>
					<lpage>5579</lpage>
				</element-citation>
			</ref>
			<ref id="B14">
				<label>[14]</label>
				<mixed-citation>[14] Y. Huang, L. C. Parra, and S. Haufe, “The New York Head-A precise standardized volume conductor model for EEG source localization and tES targeting,” Neuroimage, vol. 140, pp. 150-162, Oct. 2016. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.neuroimage.2015.12.019">https://doi.org/10.1016/j.neuroimage.2015.12.019</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Huang</surname>
							<given-names>Y.</given-names>
						</name>
						<name>
							<surname>Parra</surname>
							<given-names>L. C.</given-names>
						</name>
						<name>
							<surname>Haufe</surname>
							<given-names>S.</given-names>
						</name>
					</person-group>
					<article-title>The New York Head-A precise standardized volume conductor model for EEG source localization and tES targeting</article-title>
					<source>Neuroimage</source>
					<volume>140</volume>
					<fpage>150</fpage>
					<lpage>162</lpage>
					<month>10</month>
					<year>2016</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1016/j.neuroimage.2015.12.019">https://doi.org/10.1016/j.neuroimage.2015.12.019</ext-link>
				</element-citation>
			</ref>
			<ref id="B15">
				<label>[15]</label>
				<mixed-citation>[15] E. Cuartas Morales, C. D. Acosta-Medina, G. Castellanos-Dominguez, and D. Mantini, “A Finite-Difference Solution for the EEG Forward Problem in Inhomogeneous Anisotropic Media,” Brain Topogr., vol. 32, no. 2, pp. 229-239, Mar. 2019. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1007/s10548-018-0683-2">https://doi.org/10.1007/s10548-018-0683-2</ext-link>
				</mixed-citation>
				<element-citation publication-type="journal">
					<person-group person-group-type="author">
						<name>
							<surname>Cuartas Morales</surname>
							<given-names>E.</given-names>
						</name>
						<name>
							<surname>Acosta-Medina</surname>
							<given-names>C. D.</given-names>
						</name>
						<name>
							<surname>Castellanos-Dominguez</surname>
							<given-names>G.</given-names>
						</name>
						<name>
							<surname>Mantini</surname>
							<given-names>D.</given-names>
						</name>
					</person-group>
					<article-title>A Finite-Difference Solution for the EEG Forward Problem in Inhomogeneous Anisotropic Media</article-title>
					<source>Brain Topogr.</source>
					<volume>32</volume>
					<issue>2</issue>
					<fpage>229</fpage>
					<lpage>239</lpage>
					<month>03</month>
					<year>2019</year>
					<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.1007/s10548-018-0683-2">https://doi.org/10.1007/s10548-018-0683-2</ext-link>
				</element-citation>
			</ref>
		</ref-list>
		<fn-group>
			<fn fn-type="other" id="fn1">
				<label>Cómo citar / How to cite</label>
				<p> C. D. Molina-Machado, E. Cuartas, J. D. Martínez-Vargas, y E. Giraldo, “Comparative Analysis of Parallel Brain Activity Mapping Algorithms for High Resolution Brain Models”. <italic>TecnoLógicas</italic>, vol. 22, no. 46, pp. 233-243, 2019. <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.22430/22565337.1344">https://doi.org/10.22430/22565337.1344</ext-link>
				</p>
			</fn>
		</fn-group>
	</back>
</article>