<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://projectswiki.eleceng.adelaide.edu.au/projects/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=A1686507</id>
	<title>Projects - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://projectswiki.eleceng.adelaide.edu.au/projects/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=A1686507"/>
	<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php/Special:Contributions/A1686507"/>
	<updated>2026-05-04T23:38:24Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.31.4</generator>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11253</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11253"/>
		<updated>2018-10-16T10:19:29Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Future Research Opportunities */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks when comparing networks of similar size &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates UAV applications in an ever-wider range of challenging environments, such as inside mine shafts. As each controller must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-tuning flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs produces nonlinear functional approximation, and hence potentiates improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled in software to provide an easily-accessible platform for evolution experiments. The software model was improved iteratively until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
For both the motor control and 1D arm control experiments, a significant quantity of development work was required to integrate sensors, actuators and log data between experiments and controller evaluations. A Zynq combined FPGA/microprocessor was used throughout the project to perform such tasks. The Zynq also also facilitated the parallelisation of controller evaluations in software, which significantly reduced the time required to evolve high-performing controllers.&lt;br /&gt;
&lt;br /&gt;
The timing precision of at which any SNN was simulated as well as any underlying fixed-point precision were found to both greatly affect controller performance. Understanding how each of these parameters affected the signal precision in terms of rounding proved critical to evolving high-performing controllers.&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm embedded platform. Note that the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
Early SNN control experiments on both physical and simulated DC motors led to performance that was quite poor when compared to conventional control techniques, such as well-tuned PID tuned or optimal control approaches. An example of an early manually-tuned speed control network is shown below.&lt;br /&gt;
&lt;br /&gt;
[[File:Manual_SNN_Speed.png|500px|thumb|center|Response of a simulated DC motor to variations in speed set point under control of a 4-neuron SNN]]&lt;br /&gt;
&lt;br /&gt;
The angle of the 1D arm in response to a 30 degree change in setpoint both under PID control and when controlled by a small-scale spiking neural network is shown below. The performance of the SNN controller was found to depend substantially upon the simulation frequency and the level of fixed-point precision used in the embedded platform.&lt;br /&gt;
&lt;br /&gt;
[[File:SNN_PID_comparison.png|500px|thumb|center|Comparison of control responses for the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
A system diagram of one of high-performance control network topologies is shown below.&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
To the best of our knowledge, closed-loop control of the physical 1D arm represents the first time that a research group has successfully applied spiking neural networks to an unstable physical plant outside of simulation. &lt;br /&gt;
 &lt;br /&gt;
For control applications, SNNs much be simulated with a very high degree of timing precision to produce acceptable performance in terms of closed-loop stability and classical control metrics such as steady-state error. High simulation frequencies in turn necessitate the use of dedicated hardware, such as FPGAs, to produce the signal precision required to produce high-quality control responses.&lt;br /&gt;
&lt;br /&gt;
Evolutionary algorithms have so far proven incapable of generating small-scale SNNs (&amp;lt;10 neurons) which are capable of controlling unstable systems, such as the 1D arm, which when provided solely with the control variable error. Providing small-scale SNNs with explicitly calculated error derivative terms does however result result in system stabilisation and effective plant control. Several recent research publications have also required a derivative term to stabilise simulated systems. &lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
The next stage for this research is the transition from single-input single-output (SISO) control problems to larger scale multiple-input multiple-output control problems, such as the flight control of a quadcopter. The size of the control network required will likely be significantly larger than that of the SISO controllers.&lt;br /&gt;
&lt;br /&gt;
Flight control will likely be first explored in simulation, on a suitable platform such as QrSim. Transitioning to the SNN control of a UAV in hardware will represent a significantly larger challenge, as there are several aspects of the full control system, such as gyroscopes for state estimation, which will require substantial effort to integrate into a full system.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11252</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11252"/>
		<updated>2018-10-16T10:17:17Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks when comparing networks of similar size &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates UAV applications in an ever-wider range of challenging environments, such as inside mine shafts. As each controller must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-tuning flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs produces nonlinear functional approximation, and hence potentiates improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled in software to provide an easily-accessible platform for evolution experiments. The software model was improved iteratively until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
For both the motor control and 1D arm control experiments, a significant quantity of development work was required to integrate sensors, actuators and log data between experiments and controller evaluations. A Zynq combined FPGA/microprocessor was used throughout the project to perform such tasks. The Zynq also also facilitated the parallelisation of controller evaluations in software, which significantly reduced the time required to evolve high-performing controllers.&lt;br /&gt;
&lt;br /&gt;
The timing precision of at which any SNN was simulated as well as any underlying fixed-point precision were found to both greatly affect controller performance. Understanding how each of these parameters affected the signal precision in terms of rounding proved critical to evolving high-performing controllers.&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm embedded platform. Note that the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
Early SNN control experiments on both physical and simulated DC motors led to performance that was quite poor when compared to conventional control techniques, such as well-tuned PID tuned or optimal control approaches. An example of an early manually-tuned speed control network is shown below.&lt;br /&gt;
&lt;br /&gt;
[[File:Manual_SNN_Speed.png|500px|thumb|center|Response of a simulated DC motor to variations in speed set point under control of a 4-neuron SNN]]&lt;br /&gt;
&lt;br /&gt;
The angle of the 1D arm in response to a 30 degree change in setpoint both under PID control and when controlled by a small-scale spiking neural network is shown below. The performance of the SNN controller was found to depend substantially upon the simulation frequency and the level of fixed-point precision used in the embedded platform.&lt;br /&gt;
&lt;br /&gt;
[[File:SNN_PID_comparison.png|500px|thumb|center|Comparison of control responses for the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
A system diagram of one of high-performance control network topologies is shown below.&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
To the best of our knowledge, closed-loop control of the physical 1D arm represents the first time that a research group has successfully applied spiking neural networks to an unstable physical plant outside of simulation. &lt;br /&gt;
 &lt;br /&gt;
For control applications, SNNs much be simulated with a very high degree of timing precision to produce acceptable performance in terms of closed-loop stability and classical control metrics such as steady-state error. High simulation frequencies in turn necessitate the use of dedicated hardware, such as FPGAs, to produce the signal precision required to produce high-quality control responses.&lt;br /&gt;
&lt;br /&gt;
Evolutionary algorithms have so far proven incapable of generating small-scale SNNs (&amp;lt;10 neurons) which are capable of controlling unstable systems, such as the 1D arm, which when provided solely with the control variable error. Providing small-scale SNNs with explicitly calculated error derivative terms does however result result in system stabilisation and effective plant control. Several recent research publications have also required a derivative term to stabilise simulated systems. &lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
The next stage for this research is the transition from single-input single-output (SISO) control problems to larger scale multiple-input multiple-output control problems, such as the flight control of a quadcopter. The size of the control network required will likely be significantly larger than that of the SISO controllers.&lt;br /&gt;
&lt;br /&gt;
Flight control will likely be first explored in simulation, on a suitable platform such as QrSim. Transitioning to the SNN control of a UAV in hardware will represent a significantly larger challenge, as there are several aspects of the full control system, such as state estimators, which will require integration into a full system.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Manual_SNN_Speed.png&amp;diff=11251</id>
		<title>File:Manual SNN Speed.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Manual_SNN_Speed.png&amp;diff=11251"/>
		<updated>2018-10-16T09:59:33Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11250</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11250"/>
		<updated>2018-10-16T09:55:43Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks when comparing networks of similar size &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates UAV applications in an ever-wider range of challenging environments, such as inside mine shafts. As each controller must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-tuning flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs produces nonlinear functional approximation, and hence potentiates improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled in software to provide an easily-accessible platform for evolution experiments. The software model was improved iteratively until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm&amp;#039;s embedded platform, running on a Zynq combined FPGA/microprocessor. Note the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
The angle of the 1D arm in response to a 30 degree change in setpoint both under PID control and when controlled by a small-scale spiking neural network is shown below. The performance of the SNN controller was found to depend substantially upon the simulation frequency and the level of fixed-point precision used in the embedded platform.&lt;br /&gt;
&lt;br /&gt;
[[File:SNN_PID_comparison.png|500px|thumb|center|Comparison of control responses for the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
A system diagram of one of high-performance control network topologies is shown below.&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
To the best of our knowledge, closed-loop control of the physical 1D arm represents the first time that a research group has successfully applied spiking neural networks to an unstable physical plant outside of simulation. &lt;br /&gt;
 &lt;br /&gt;
For control applications, SNNs much be simulated with a very high degree of timing precision to produce acceptable performance in terms of closed-loop stability and classical control metrics such as steady-state error. High simulation frequencies in turn necessitate the use of dedicated hardware, such as FPGAs, to produce the signal precision required to produce high-quality control responses.&lt;br /&gt;
&lt;br /&gt;
Evolutionary algorithms have so far proven incapable of generating small-scale SNNs (&amp;lt;10 neurons) which are capable of controlling unstable systems, such as the 1D arm, which when provided solely with the control variable error. Providing small-scale SNNs with explicitly calculated error derivative terms does however result result in system stabilisation and effective plant control. Several recent research publications have also required a derivative term to stabilise simulated systems. &lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
The next stage for this research is the transition from single-input single-output (SISO) control problems to larger scale multiple-input multiple-output control problems, such as the flight control of a quadcopter. The size of the control network required will likely be significantly larger than that of the SISO controllers.&lt;br /&gt;
&lt;br /&gt;
Flight control will likely be first explored in simulation, on a suitable platform such as QrSim. Transitioning to the SNN control of a UAV in hardware will represent a significantly larger challenge, as there are several aspects of the full control system, such as state estimators, which will require integration into a full system.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11249</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11249"/>
		<updated>2018-10-16T09:53:30Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks when comparing networks of similar size &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates UAV applications in an ever-wider range of challenging environments, such as inside mine shafts. As each controller must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-tuning flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs produces nonlinear functional approximation, and hence potentiates improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled in software to provide an easily-accessible platform for evolution experiments. The software model was improved iteratively until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
The angle of the arm in response to a 30 degree change in setpoint both under PID control and when controlled by a small-scale spiking neural network is shown below. The performance of the SNN controller was found to depend substantially upon the simulation frequency and the level of fixed-point precision used in the embedded platform.&lt;br /&gt;
&lt;br /&gt;
[[File:SNN_PID_comparison.png|500px|thumb|center|Comparison of control responses for the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm&amp;#039;s embedded platform, running on a Zynq combined FPGA/microprocessor. Note the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
To the best of our knowledge, closed-loop control of the physical 1D arm represents the first time that a research group has successfully applied spiking neural networks to an unstable physical plant outside of simulation. &lt;br /&gt;
 &lt;br /&gt;
For control applications, SNNs much be simulated with a very high degree of timing precision to produce acceptable performance in terms of closed-loop stability and classical control metrics such as steady-state error. High simulation frequencies in turn necessitate the use of dedicated hardware, such as FPGAs, to produce the signal precision required to produce high-quality control responses.&lt;br /&gt;
&lt;br /&gt;
Evolutionary algorithms have so far proven incapable of generating small-scale SNNs (&amp;lt;10 neurons) which are capable of controlling unstable systems, such as the 1D arm, which when provided solely with the control variable error. Providing small-scale SNNs with explicitly calculated error derivative terms does however result result in system stabilisation and effective plant control. Several recent research publications have also required a derivative term to stabilise simulated systems. &lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
The next stage for this research is the transition from single-input single-output (SISO) control problems to larger scale multiple-input multiple-output control problems, such as the flight control of a quadcopter. The size of the control network required will likely be significantly larger than that of the SISO controllers.&lt;br /&gt;
&lt;br /&gt;
Flight control will likely be first explored in simulation, on a suitable platform such as QrSim. Transitioning to the SNN control of a UAV in hardware will represent a significantly larger challenge, as there are several aspects of the full control system, such as state estimators, which will require integration into a full system.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:SNN_PID_comparison.png&amp;diff=11248</id>
		<title>File:SNN PID comparison.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:SNN_PID_comparison.png&amp;diff=11248"/>
		<updated>2018-10-16T09:48:33Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11247</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11247"/>
		<updated>2018-10-16T09:44:58Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks when comparing networks of similar size &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates UAV applications in an ever-wider range of challenging environments, such as inside mine shafts. As each controller must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-tuning flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs produces nonlinear functional approximation, and hence potentiates improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled primarily in software to provide a platform for evolution experiments. Iterative improvements of the model were performed until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm&amp;#039;s embedded platform, running on a Zynq combined FPGA/microprocessor. Note the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
To the best of our knowledge, closed-loop control of the physical 1D arm represents the first time that a research group has successfully applied spiking neural networks to an unstable physical plant outside of simulation. &lt;br /&gt;
 &lt;br /&gt;
For control applications, SNNs much be simulated with a very high degree of timing precision to produce acceptable performance in terms of closed-loop stability and classical control metrics such as steady-state error. High simulation frequencies in turn necessitate the use of dedicated hardware, such as FPGAs, to produce the signal precision required to produce high-quality control responses.&lt;br /&gt;
&lt;br /&gt;
Evolutionary algorithms have so far proven incapable of generating small-scale SNNs (&amp;lt;10 neurons) which are capable of controlling unstable systems, such as the 1D arm, which when provided solely with the control variable error. Providing small-scale SNNs with explicitly calculated error derivative terms does however result result in system stabilisation and effective plant control. Several recent research publications have also required a derivative term to stabilise simulated systems. &lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
The next stage for this research is the transition from single-input single-output (SISO) control problems to larger scale multiple-input multiple-output control problems, such as the flight control of a quadcopter. The size of the control network required will likely be significantly larger than that of the SISO controllers.&lt;br /&gt;
&lt;br /&gt;
Flight control will likely be first explored in simulation, on a suitable platform such as QrSim. Transitioning to the SNN control of a UAV in hardware will represent a significantly larger challenge, as there are several aspects of the full control system, such as state estimators, which will require integration into a full system.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11246</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11246"/>
		<updated>2018-10-16T09:39:38Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled primarily in software to provide a platform for evolution experiments. Iterative improvements of the model were performed until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm&amp;#039;s embedded platform, running on a Zynq combined FPGA/microprocessor. Note the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
To the best of our knowledge, closed-loop control of the physical 1D arm represents the first time that a research group has successfully applied spiking neural networks to an unstable physical plant outside of simulation. &lt;br /&gt;
 &lt;br /&gt;
For control applications, SNNs much be simulated with a very high degree of timing precision to produce acceptable performance in terms of closed-loop stability and classical control metrics such as steady-state error. High simulation frequencies in turn necessitate the use of dedicated hardware, such as FPGAs, to produce the signal precision required to produce high-quality control responses.&lt;br /&gt;
&lt;br /&gt;
Evolutionary algorithms have so far proven incapable of generating small-scale SNNs (&amp;lt;10 neurons) which are capable of controlling unstable systems, such as the 1D arm, which when provided solely with the control variable error. Providing small-scale SNNs with explicitly calculated error derivative terms does however result result in system stabilisation and effective plant control. Several recent research publications have also required a derivative term to stabilise simulated systems. &lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
The next stage for this research is the transition from single-input single-output (SISO) control problems to larger scale multiple-input multiple-output control problems, such as the flight control of a quadcopter. The size of the control network required will likely be significantly larger than that of the SISO controllers.&lt;br /&gt;
&lt;br /&gt;
Flight control will likely be first explored in simulation, on a suitable platform such as QrSim. Transitioning to the SNN control of a UAV in hardware will represent a significantly larger challenge, as there are several aspects of the full control system, such as state estimators, which will require integration into a full system.&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11245</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11245"/>
		<updated>2018-10-16T07:26:16Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled primarily in software to provide a platform for evolution experiments. Iterative improvements of the model were performed until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm&amp;#039;s embedded platform, running on a Zynq combined FPGA/microprocessor. Note the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:PosterSNN.jpg|500px|thumb|center|System diagram of a viable small-scale SNN 1D arm controller]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11244</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11244"/>
		<updated>2018-10-16T07:16:26Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled primarily in software to provide a platform for evolution experiments. Iterative improvements of the model were performed until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px|thumb|center|Signal flow diagram for the 1D arm&amp;#039;s embedded platform, running on a Zynq combined FPGA/microprocessor. Note the optical encoder measures the arm&amp;#039;s angle, while an electronic speed controller (ESC) drives the propeller motor]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11243</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11243"/>
		<updated>2018-10-16T07:12:18Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled primarily in software to provide a platform for evolution experiments. Iterative improvements of the model were performed until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research Opportunities =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11242</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11242"/>
		<updated>2018-10-16T07:08:26Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System diagram of a flight controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-domain representation of the transform between the voltage applied to a DC motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC motor embedded platform]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px|thumb|center|System diagram of the 1D arm]]&lt;br /&gt;
&lt;br /&gt;
The system was modelled primarily in software to provide a platform for evolution experiments. Iterative improvements of the model were performed until the solutions evolved in software were sufficiently transferable to the hardware system.&lt;br /&gt;
&lt;br /&gt;
[[File:arm_photo.jpg|500px|thumb|center|Physical 1D arm in safety enclosure]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11241</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11241"/>
		<updated>2018-10-16T07:01:14Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Angle Control of a 1D Propeller Arm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-Domain representation transfer between the voltage applied to a motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC Motor Setup]]&lt;br /&gt;
&lt;br /&gt;
= Angular Control of a 1D Propeller Arm =&lt;br /&gt;
To progress from a linear single-input single-output (SISO) problem to a nonlinear SISO problem, a one-dimensional propeller arm was constructed. The one-dimensional arm resembles one component of a full UAV flight controller, namely the component which controls a UAV&amp;#039;s height. The one-dimensional arm is also a highly nonlinear, as the dynamics of the plant change substantially with the angle of the arm. &lt;br /&gt;
&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11240</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11240"/>
		<updated>2018-10-16T06:43:55Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px|thumb|center|Laplace-Domain representation transfer between the voltage applied to a motor and its speed]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px|thumb|center|Physical DC Motor Setup]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11239</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11239"/>
		<updated>2018-10-16T06:38:51Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Position and Speed Control of a DC Motor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11238</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11238"/>
		<updated>2018-10-16T06:25:49Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Motivation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
A nonlinear system of differential equations governs the relationship between a spiking neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11237</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11237"/>
		<updated>2018-10-16T06:25:07Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Motivation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers facilitates their application in an ever-wider range of challenging environments, such as inside mine shifts. As each control scheme must be adjusted or &amp;#039;tuned&amp;#039; to a given system, reducing the time required to tune a controller is also of enormous importance to deployment capability. High performance or fast-deployment flight controllers are of enormous military and civilian interest.&lt;br /&gt;
&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can compensate for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspire. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs. The nonlinearity of SNNs raises the possibility nonlinear functional approximation, and hence improved flight control performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. This research uses a family of biologically-inspired search algorithms known as evolutionary algorithms (EAs) to develop high performance controllers.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11236</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11236"/>
		<updated>2018-10-16T06:17:28Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight control schemes see widespread use for UAV flight control &amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. While PID-based control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, flight control has been shown to benefit from nonlinear control schemes which can adjust for nonlinearities in the underlying plant &amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11235</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11235"/>
		<updated>2018-10-16T06:07:54Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11234</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11234"/>
		<updated>2018-10-16T06:07:13Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
[[File:Spikes_IO.jpg|500px|thumb|center|Spikes into a neuron excite the neuron&amp;#039;s membrane voltage. If excited sufficiently, the neuron will produce an output spike]]&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Spikes_IO.jpg&amp;diff=11233</id>
		<title>File:Spikes IO.jpg</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Spikes_IO.jpg&amp;diff=11233"/>
		<updated>2018-10-16T06:03:26Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11232</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11232"/>
		<updated>2018-10-16T05:55:27Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|thumb|center|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11231</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11231"/>
		<updated>2018-10-16T05:54:17Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png|500px|System Diagram of a Flight Controller]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11230</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11230"/>
		<updated>2018-10-16T05:53:30Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
[[File:Concept_SNN_Diagram_Supersimplified_1.png]]&lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Concept_SNN_Diagram_Supersimplified_1.png&amp;diff=11229</id>
		<title>File:Concept SNN Diagram Supersimplified 1.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Concept_SNN_Diagram_Supersimplified_1.png&amp;diff=11229"/>
		<updated>2018-10-16T05:52:36Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11228</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11228"/>
		<updated>2018-10-16T05:49:45Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Like conventional artificial neural networks, an SNN consists of a network of small processing nodes called biological neurons. The key difference between spiking and conventional artificial neural networks lies in the inter-neuron signalling: spiking neurons communicate through precisely timed binary &amp;#039;spikes&amp;#039; as opposed to regularly propagated continuous values. The processing power of a spiking neural network is believed to be significantly greater than that of conventional artificial neural networks for similarly-sized networks &amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11227</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11227"/>
		<updated>2018-10-16T05:45:45Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Motivation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. &lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11226</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11226"/>
		<updated>2018-10-16T05:44:52Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) contains a flight controller, which calculate roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often used by higher-level control structures in autonomous behaviours such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. &lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11225</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11225"/>
		<updated>2018-10-16T05:43:25Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controler, which generates corrective roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
[[File:PosterSNN.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:PosterSNN.jpg&amp;diff=11224</id>
		<title>File:PosterSNN.jpg</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:PosterSNN.jpg&amp;diff=11224"/>
		<updated>2018-10-16T05:42:51Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11179</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11179"/>
		<updated>2018-10-16T04:26:18Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controler, which generates corrective roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Results =&lt;br /&gt;
&lt;br /&gt;
= Conclusions =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11176</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11176"/>
		<updated>2018-10-16T04:24:00Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Position and Speed Control of a DC Motor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controler, which generates corrective roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Flight control of a quadcopter is a nonlinear, multiple-input multiple-output control problem. To build towards this goal, the position and speed control of a DC motor were adopted as preliminary stepping-stone problems, as they represent highly linear single-input single-output problems.&lt;br /&gt;
&lt;br /&gt;
Spiking neural network controllers were developed both for simulated motors as well as for a physical DC motor. As both position and speed control are linear problems, it is possible to easily compare spiking neural network control performance to a variety of conventional techniques, such as optimal feedback controllers. The DC motor control problems also provide a great deal of insight into the level of accuracy required in simulation before tuned controllers can be readily transferred to hardware.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11150</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11150"/>
		<updated>2018-10-16T03:13:44Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controler, which generates corrective roll, pitch, yaw and thrust signals from the UAV&amp;#039;s current position and its desired position. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
This project investigates the use of a biologically-inspired computational model known as a spiking neural network (SNN) to perform UAV flight control. Improving the performance of quadcopter flight controllers may allow for enhanced performance in challenging environments, such as mine shafts. &lt;br /&gt;
&lt;br /&gt;
Comment on tuning time etc.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11149</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11149"/>
		<updated>2018-10-16T03:06:11Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Group members =&lt;br /&gt;
Lachlan Bateman, Paul Elson, Matthew Astachnowicz and Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew, Dr Braden Phillips and sponsor Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11148</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11148"/>
		<updated>2018-10-16T02:56:20Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Embedded Platform */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[File:platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11147</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11147"/>
		<updated>2018-10-16T02:55:24Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Embedded Platform */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform =&lt;br /&gt;
&lt;br /&gt;
[[platform_design.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Platform_design.png&amp;diff=11146</id>
		<title>File:Platform design.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Platform_design.png&amp;diff=11146"/>
		<updated>2018-10-16T02:54:08Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11145</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11145"/>
		<updated>2018-10-16T02:53:48Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Embedded Platform = &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11144</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11144"/>
		<updated>2018-10-16T02:38:57Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Position and Speed Control of a DC Motor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
[[File:DC_Motor_Speed_1.png|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:DC_Motor_Speed_1.png&amp;diff=11143</id>
		<title>File:DC Motor Speed 1.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:DC_Motor_Speed_1.png&amp;diff=11143"/>
		<updated>2018-10-16T02:35:36Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11142</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11142"/>
		<updated>2018-10-16T02:16:31Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Angle Control of a 1D Propeller Arm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png|500px]]&lt;br /&gt;
[[File:arm_photo.jpg|500px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11141</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11141"/>
		<updated>2018-10-16T02:16:15Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Position and Speed Control of a DC Motor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|500px]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png]]&lt;br /&gt;
[[File:arm_photo.jpg|600px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11140</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11140"/>
		<updated>2018-10-16T02:15:49Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Position and Speed Control of a DC Motor */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
[[File:DCMotorSetup.jpg|pixels=600]]&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png]]&lt;br /&gt;
[[File:arm_photo.jpg|600px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11138</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11138"/>
		<updated>2018-10-16T02:14:50Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Angle Control of a 1D Propeller Arm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:1darmoverview.png]]&lt;br /&gt;
[[File:arm_photo.jpg|600px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:1darmoverview.png&amp;diff=11137</id>
		<title>File:1darmoverview.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:1darmoverview.png&amp;diff=11137"/>
		<updated>2018-10-16T02:12:21Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:DCMotorSetup.jpg&amp;diff=11136</id>
		<title>File:DCMotorSetup.jpg</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:DCMotorSetup.jpg&amp;diff=11136"/>
		<updated>2018-10-16T02:12:02Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11135</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11135"/>
		<updated>2018-10-16T02:07:46Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Angle Control of a 1D Propeller Arm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:arm_diagram_1d.png]]&lt;br /&gt;
[[File:arm_photo.jpg|600px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Arm_diagram_1d.png&amp;diff=11134</id>
		<title>File:Arm diagram 1d.png</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=File:Arm_diagram_1d.png&amp;diff=11134"/>
		<updated>2018-10-16T02:03:46Z</updated>

		<summary type="html">&lt;p&gt;A1686507: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11133</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11133"/>
		<updated>2018-10-16T02:00:36Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Angle Control of a 1D Propeller Arm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:arm_photo.jpg|800px|The physical propeller arm]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
	<entry>
		<id>https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11132</id>
		<title>Projects:2018s1-107 Evolution of Spiking Neural Networks for UAV Control</title>
		<link rel="alternate" type="text/html" href="https://projectswiki.eleceng.adelaide.edu.au/projects/index.php?title=Projects:2018s1-107_Evolution_of_Spiking_Neural_Networks_for_UAV_Control&amp;diff=11132"/>
		<updated>2018-10-16T01:58:36Z</updated>

		<summary type="html">&lt;p&gt;A1686507: /* Angle Control of a 1D Propeller Arm */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
= Introduction =&lt;br /&gt;
Every unmanned aerial vehicle (UAV) system contains a flight controller, which is responsile for generating corrective roll, pitch, yaw and thrust signals from information about where the UAV is and where it should be. A flight controller is often utilised by higher-level control structures to achieve truly autonomous navigation behaviours, such as path planning and object avoidance. &lt;br /&gt;
&lt;br /&gt;
We are proposing to use a biologically-inspired computational model, called a spiking neural network (SNN), to perform UAV flight control. As the &amp;#039;tuning&amp;#039; or optimisation of a flight controller depends heavily upon the physical aspects of the UAV, we are particularly interested in automating and reducing the time required to perform this controller optimisation in general, and not just for a single UAV. &lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing an SNN flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
= Motivation =&lt;br /&gt;
Proportional-integral-differential (PID) flight controllers see widespread for the flight control of autonomous unmanned aerial vehicles (UAV)&amp;lt;ref&amp;gt;A. Zulu  and S. John, “A review of control algorithms for autonomous quadrotors”, in &amp;#039;&amp;#039;ArXiv Computing Research Repository - Systems and Control&amp;#039;&amp;#039;, 2016, submission 02622&amp;lt;/ref&amp;gt;. while PID control schemes are generally easy to tune and implement, they are fundamentally linear control schemes. As quadcopter and hexacopter system dynamics are nonlinear&amp;lt;ref&amp;gt;K. Nemirsky, &amp;#039;&amp;#039;Simulated Annealing-based Optimal Proportional-Integral-Derivative (PID) Controller Design: A Case Study on Nonlinear Quadcopter Dynamics&amp;#039;&amp;#039;, San Jose State University, 2017&amp;lt;/ref&amp;gt;, they have been shown to benefit from nonlinear control schemes, improving flight control&amp;lt;ref&amp;gt; L. Sanchez, et al, “Nonlinear and optimal real-time control of a rotary-wing UAV”. In &amp;#039;&amp;#039;American Control Conference (ACC), June 27-29, 2012, Montreal, Canada&amp;#039;&amp;#039;, 2012, pp. 3857-3862&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Spiking neural networks (SNNs) are a biologically-inspired, nonlinear computational model. An SNN consists of a network of small processing nodes called biological neurons, which communicate through precisely timed binary &amp;#039;spikes&amp;#039;. A nonlinear system of differential equations governs the relationship between a neuron’s internal state, its inputs and its outputs.The processing power of spiking neural networks has is believed to be significantly greater than that of conventional artificial neural networks&amp;lt;ref&amp;gt; W. Maass, “Networks of spiking neurons: the third generation of neural network models” in &amp;#039;&amp;#039;Neural networks&amp;#039;&amp;#039;, Vol 10, no 9, 1997, pp.1659-1671&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs raises the possibility of improved flight controller performance in comparison to linear PID architectures. One such potential area of improvement is a common tradeoff between disturbance rejection and set-point tracking&amp;lt;ref&amp;gt;Y, Li,  K. Ang, G Chong, “PID control system analysis and design” in &amp;#039;&amp;#039;IEEE Control Systems&amp;#039;&amp;#039;, Vol 26, no. 1,, 2006, pp.32-41.&amp;lt;/ref&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The nonlinearity of SNNs however comes at a cost: conventional artificial neural networks training algorithms cannot be directly applied to optimise the control network. Fortunately, biologically-inspired search algorithms known as evolutionary algorithms (EAs) may be employed to search the network parameter space to develop a high performance controller.&lt;br /&gt;
&lt;br /&gt;
We hence aim to culminate our research by developing a Spiking neural network flight controller that may be used to efficiently control a UAV system when provided with suitable state information.&lt;br /&gt;
&lt;br /&gt;
= Position and Speed Control of a DC Motor =&lt;br /&gt;
Our first set of development milestones concern the development of a single-input, single-output (SISO) SNN controller for a relatively simple control problem, namely position control for a single DC motor. We aim to accurately control both a simulated and physical DC motor with SNNs. &lt;br /&gt;
&lt;br /&gt;
It is envisaged that this subproject will enable us to compare evolutionary algorithms used to optimise the control networks as well as to provide an initial insight into the differences between simulated and physical control plants.&lt;br /&gt;
&lt;br /&gt;
= Angle Control of a 1D Propeller Arm =&lt;br /&gt;
[[File:arm_photo.jpg]]&lt;br /&gt;
&lt;br /&gt;
= Key Findings =&lt;br /&gt;
&lt;br /&gt;
= Future Research =&lt;br /&gt;
&lt;br /&gt;
= Simulated UAV SNN Flight Control =&lt;br /&gt;
After we have solved a simple SISO control problem, we aim to then control a simulated UAV with a spiking neural network controller. This promises to be a more complicated, multiple-input multiple-output (MIMO) control problem, likely requiring a significantly more complicated control network to solve. &lt;br /&gt;
&lt;br /&gt;
This subproject is predicted to provide insight into how a more difficult control problem will affect the required time to optimise an SNN controller.&lt;br /&gt;
&lt;br /&gt;
= Control of a UAV in hardware with a SNN =&lt;br /&gt;
The control of a physical UAV represents the culmination of our research. A specialised testing chamber will be constructed which faithfully reports the state of the UAV under control to a SNN control network. The testing chamber shall also physically restrain the UAV for safety and provide feedback to an evolutionary algorithm regarding the performance of each flight controller. &lt;br /&gt;
&lt;br /&gt;
SNN flight controllers will likely be deployed to a field-programmable gate array (FPGA) to achieve the required processing speed for the calculation of control signals several hundred times a second. &lt;br /&gt;
&lt;br /&gt;
= Group members =&lt;br /&gt;
Lachlan Bateman&lt;br /&gt;
&lt;br /&gt;
Paul Elson&lt;br /&gt;
&lt;br /&gt;
Matthew Astachnowicz&lt;br /&gt;
&lt;br /&gt;
Alexander Makarowsky&lt;br /&gt;
&lt;br /&gt;
= Supervisors =&lt;br /&gt;
Dr Hong Gunn Chew&lt;br /&gt;
&lt;br /&gt;
Dr Braden Phillips&lt;br /&gt;
&lt;br /&gt;
Dr David Howard (CSIRO)&lt;br /&gt;
&lt;br /&gt;
= Sponsor =&lt;br /&gt;
CSIRO&lt;br /&gt;
&lt;br /&gt;
= References =&lt;br /&gt;
{{Reflist}}&lt;/div&gt;</summary>
		<author><name>A1686507</name></author>
		
	</entry>
</feed>