\chapter{Conclusions and Future Work}\label{sec:dpg}

	\section{Conclusions}

		\hsp{8mm} 
		In conclusion, we have shown that a very large-scale model
		of a mammalian neocortex can designed and implemented
		using object-oriented techniques, static templates in key
		areas (spike and PSG waveforms), and the calculating
		of important biomechanics during the simulation
		(synaptic, channel and compartment dynamics). An in
		depth knowledge of the neocortical dynamics was necessary
		to accurately design and implement this simulator. The
		choice of object-oriented techniques for this task was
		made specifically to enable us to model the brain in a
		generic fashion. In this way, no parameters were hard
		coded, and all functionality was encapsulated within each
		object. Just as the biological brain modifies certain
		parameters while replicating functionality throughout
		its various regions, our {\it in silico} model can actively
		simulate other areas of the brain merely by changing
		the input parameters. 

		The object-oriented design also facilitated the modularity
		of the system. For example, we were able to swap out
		multiple communication paradigms as needed merely by
		creating multiple instances of the MessageBus object,
		and recompiling with whatever paradigm we wished to
		employ at the time. 

		Most importantly, however, the object-oriented system
		has enabled us to model the relationships of neurons
		within a given cortical community. It is this aspect that
		distinguishes this model from other simulators. While
		other tools are excellent for modeling single-cell
		networks, this simulator is able to model very large
		scale networks of highly connected neurons. Since it is
		through the relationships between active neurons that
		learning and memory occur, this simulator may provide a
		tool for developing and testing of learning algorithms
		of communities of cells. 

	
	\section{Future Work}
		\hsp{8mm} 
		This simulator is far from complete, however, and in
		the following subsections, there is a list of possible
		directions for future work. This work will only
		enhance the system's capabilities, and in some cases
		may even provide more effective artificial intelligent
		classifications. 

	   \subsection{Multi-Compartmental Design}
		\hsp{8mm} 
		Each cell is comprised of multiple compartments,
		including at least one soma (minimum required amount
		for a point-to-point neuron model), multiple dendrites
		(apical and basal) and an axon. Each is designated by its
		[x,y,z] coordinates within the cell itself, with the soma
		being at ground zero [0,0] within the cell. A positive
		coordinate means it is stemming away from the cell body
		(in the direction of the output axon) and a negative
		coordinate means it is stemming away from the cell in
		the direction of the input dendrites. 

		These coordinates are used in conjunction with the
		speed of connection to calculate the compartment
		delay of passing a message from one compartment to
		another. This models the geometry of the cell itself,
		so that a dendrite that is very far away from the soma
		(in relation to the other compartments) will have a
		longer time in delivering its message to the soma. Each
		compartment connection has a conductance associated with
		it, and this is used to calculate the current from that
		compartment, and used to aggregate with other values
		to the net current within the soma, and to determine
		whether threshold has been reached. 

		Furthermore, in accomplishing synaptic algorithms with
		a multi-compartment design, it's important for each
		compartment to keep track of the intra-cell compartment
		from which it is receiving inputs. This will allow a
		compartment to update it's synaptic strengths when any
		post-synaptic compartment fires an action potential 

	   \subsection{Fuzzy Clustering and Distribution Algorithm}

		\hsp{8mm} 
		Since connectivity drives everything from memory
		utilization to communication speed, it is important
		to localize highly connected cells onto one node, and
		distribute more sparsely connected groups across node
		boundaries. A fuzzy clustering algorithm \cite{math:fcwhc} based on
		nearest neighbor\cite{math:clusterbook} and 
		connectivity could be employed
		to aggregate and distribute cells. This algorithm would
		also take into account the maximum computational load
		on a given node, and utilize as many or as few nodes as
		needed. 

	   \subsection{Comparative of Biological Neural Network with
			Artificial Intelligent Systems in Speech Recognition Accuracy}

		\hsp{8mm} 
		It is important to test the BNN along side other
		forms of AI based classifiers. Hidden Markov Models
		(HMM) \cite{nn:asohannhmmmfasr}, Genetic Algorithms 
		(GA) \cite{math:gp} and Artificial Neural
		Networks (ANN) \cite{nn:asohannhmmmfasr} that are 
		currently employed for speech
		recognition\cite{nn:asohannhmmmfasr}, have not been 
		able to achieve greater
		than 95\% accuracy in recognition. It is the goal of
		this simulator to utilize biological principles in
		organizing a column in the auditory cortex to generate
		discrimination among spoken words. This simulator must
		be able to recognize words against background noise. 

	   \subsection{Fault Tolerance}

		\hsp{8mm} 
		A large cluster can handle a simulation running for
		several hours, days or weeks. Fault tolerance and
		recovery is important for maintaining data integrity
		and conserving research time. As a result, a separate
		object could be established to monitory the health of
		each node and to shift the data and processing off of
		an unhealthy node to other nodes.

	    \subsection{Additional Channel Dynamics}

		\hsp{8mm} 
		Currently the simulator models only potassium ($K^{+}$)
		channels, and mimics a Sodium channel using $K^{+}$ channel
		equations. There are many other channels in existence
		within a biological system, and these would need to be
		modeled in order to more accurately represent a cortical
		column \cite{mnm:mcacd}.

	   \subsection{Long Term Memory Dynamics}

		\hsp{8mm} 
		Currently, synaptic dynamics are modeled using
		equations for Redistribution of Synaptic Efficacy,
		positive and negative Hebbian Learning. Each of these
		processes modifies the \verb+U_mean+ available in the synapse
		based on unchanging time constants. Current research
		is showing that these time constants are not static,
		but dynamic. This change would add another level of
		complexity into the synaptic dynamics \cite{hm:hmagupd}. 

