<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Computer Science Honours Project</title>
    <link>https://chinenyeakaluka.writeas.com/</link>
    <description>CHINENYE AKALUKA.       SUPERVISOR : Dr. Parimala Thulasiraman.     </description>
    <pubDate>Sun, 14 Jun 2026 18:30:06 +0000</pubDate>
    <item>
      <title>0-1 Knapsack Problem</title>
      <link>https://chinenyeakaluka.writeas.com/0-1-knapsack-problem-a-quantum-algorithm?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[0-1 Knapsack Problem&#xA;&#xA;Summary&#xA;The purpose of this article is to analyze the 0/1 Knapsack Problem and explore possible quantum algorithms for its computation on a quantum computer. The Knapsack problem is an interesting computer science problem where one has to maximize the total value of items in a knapsack of known capacity when given a list of items to select from. This article shows that a modified Grover’s search algorithm and the Quantum approximate optimization algorithm (QAOA) that can be used in exploring the creation a Quantum algorithm for the 0/1 Knapsack Problem. &#xA;&#xA;!--more--&#xA;&#xA;Introduction&#xA;The rise in the popularity of Quantum computers and the success of Grover’s algorithm [1] for sorting and Shor’s algorithm [2] for factorization has raised questions on whether Quantum computing will bring forth solutions to other classically hard problems like combinatorics. However, scientists do not believe that quantum computing will be able to solve NP-Hard problems [3] but will be able to speed up operations involving searching [4]. The 0 1 Knapsack Problem is an optimization problem, which seeks the best solution from among many other solutions. It is an NP-complete problem and will be NP-hard in a Quantum computer [3]. However, Quantum computers have the capacity to improve time complexity.&#xA;&#xA;Problem definition&#xA;The problem definition is:  Given a knapsack and a set of N objects, each (i,  i ∈ N) having a weight Wi and associated profit Pi, maximize (in profit) the set of items that are added to the knapsack. The knapsack has a maximum capacity of V and the maximized set must be less or equal to V. When an item is picked, it has a value 1 in the knapsack and 0 when it is not.&#xA;&#xA;Brief Review&#xA;The typical structure of a quantum algorithm is as follows. The first part of the algorithm is to make an equal superposition of all 2^n states by applying Hadamard gates [5]. The second part is to encode the problem into states, perform gate logic, and put phases on all 2^n states [5]. The last part is to minimally superpose (interfere) all these states back to a few outcomes for measurement [5].&#xA;&#xA;Quantum parallelism arises from superposition. A function performed once on the register in a superposition of states is performed on each of the components of the superposition [6].&#xA;&#xA;Previous work&#xA;Schuler and Arvind [7] put forth an ~O(2^n/3 ) quantum algorithm for the 0-1 Knapsack problem with n variables using a generalization from Integer Linear Programs.  The algorithm includes Grover’s search algorithm and the powerful method of amplitude amplification [7]. This algorithm defines a unitary transformation for a subroutine that is used to calculate the value of combinations for the knapsack. These values are then used in a modified Grover’s search. The various combinations are then sent to the Grover operator as a function which is equal to 1 when it is the optimal solution [7].&#xA;&#xA;Proposed 0 1 Knapsack Algorithms&#xA;&#xA;Modified Grover&#39;s algorithm&#xA;Following closely the work of [5], These are the steps for our proposed algorithm&#xA;Using N qubits, each basis state will represent a possible set.  {|00000  ,|00001  …|11111  }&#xA;Two prepared state vectors will represent the profit and weight vectors.&#xA;Inner product will be used to calculate the profit and weight of each &#xA;       possible solution set.&#xA;Sets with weights   V will be eliminated.&#xA;A modified Grover’s search is then applied to the remaining sets, using &#xA;       the profit value calculated in step 3.&#xA;&#xA;Quantum parallelism and the efficiency of Grover’s algorithm will definitely give a speedup for this problem (Step 1-3 can be done simultaneously), however, we theorize that gate complexity for the functions necessary for implementing steps 2 and 3 will be exponentially large depending on the value of N. The time complexity of this algorithm is speculated to be about ~O(2^ (n/3)+n ).&#xA;&#xA;The Quantum approximate optimization algorithm (QAOA)&#xA;&#xA;Conclusion&#xA;The Modified Grover’s algorithm and the QAOA are two potential Quantum algorithms for the 0 1 Knapsack problem. Future work on this topic should involve in-depth algorithm analysis and circuit construction. This is my last article for the term, and I want to especially thank Professor. Parimala Thulasiraman for her guidance.&#xA;&#xA;References&#xA;[1] Grover, L. K. (1996, July). A fast quantum mechanical algorithm for &#xA;    database search. In Proceedings of the twenty-eighth annual ACM &#xA;   symposium on Theory of computing (pp. 212-219).&#xA; &#xA;[2]  Ekert, A., &amp; Jozsa, R. (1996). Quantum computation and Shor&#39;s factoring &#xA;      algorithm. Reviews of Modern Physics, 68(3), 733.&#xA;&#xA;[3] Preskill, J. (2018). Quantum Computing in the NISQ era and beyond. &#xA;     Quantum, 2, 79.&#xA;&#xA;[4] Grover, L. K. (1997). Quantum mechanics helps in searching for a needle in &#xA;      a haystack. Physical review letters, 79(2), 325.&#xA;&#xA;[5] https://www.siam.org/conferences/cm/program/minitutorials/pp20- &#xA;      minitutorials&#xA;&#xA;[6] https://quantum-algorithms.herokuapp.com/433/shor-par/node11.html&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<h3 id="0-1-knapsack-problem" id="0-1-knapsack-problem"><strong>0-1 Knapsack Problem</strong></h3>

<h4 id="summary" id="summary"><strong>Summary</strong></h4>

<p>The purpose of this article is to analyze the 0/1 Knapsack Problem and explore possible quantum algorithms for its computation on a quantum computer. The Knapsack problem is an interesting computer science problem where one has to maximize the total value of items in a knapsack of known capacity when given a list of items to select from. This article shows that a modified Grover’s search algorithm and the Quantum approximate optimization algorithm (QAOA) that can be used in exploring the creation a Quantum algorithm for the 0/1 Knapsack Problem.</p>

<p><img src="https://i.snap.as/JXxWC7Sc.jpg" alt=""/></p>



<h4 id="introduction" id="introduction"><strong>Introduction</strong></h4>

<p>The rise in the popularity of Quantum computers and the success of Grover’s algorithm [1] for sorting and Shor’s algorithm [2] for factorization has raised questions on whether Quantum computing will bring forth solutions to other classically hard problems like combinatorics. However, scientists do not believe that quantum computing will be able to solve NP-Hard problems [3] but will be able to speed up operations involving searching [4]. The 0 1 Knapsack Problem is an optimization problem, which seeks the best solution from among many other solutions. It is an NP-complete problem and will be NP-hard in a Quantum computer [3]. However, Quantum computers have the capacity to improve time complexity.</p>

<h4 id="problem-definition" id="problem-definition"><strong>Problem definition</strong></h4>

<p>The problem definition is:  Given a knapsack and a set of N objects, each (i,  i ∈ N) having a weight Wi and associated profit Pi, maximize (in profit) the set of items that are added to the knapsack. The knapsack has a maximum capacity of V and the maximized set must be less or equal to V. When an item is picked, it has a value 1 in the knapsack and 0 when it is not.</p>

<p><img src="https://i.snap.as/5yjH103Z.png" alt=""/></p>

<h4 id="brief-review" id="brief-review"><strong>Brief Review</strong></h4>

<p>The typical structure of a quantum algorithm is as follows. The first part of the algorithm is to make an equal superposition of all 2^n states by applying Hadamard gates [5]. The second part is to encode the problem into states, perform gate logic, and put phases on all 2^n states [5]. The last part is to minimally superpose (interfere) all these states back to a few outcomes for measurement [5].</p>

<p>Quantum parallelism arises from superposition. A function performed once on the register in a superposition of states is performed on each of the components of the superposition [6].</p>

<h4 id="previous-work" id="previous-work"><strong>Previous work</strong></h4>

<p>Schuler and Arvind [7] put forth an ~O(2^n/3 ) quantum algorithm for the 0-1 Knapsack problem with n variables using a generalization from Integer Linear Programs.  The algorithm includes Grover’s search algorithm and the powerful method of amplitude amplification [7]. This algorithm defines a unitary transformation for a subroutine that is used to calculate the value of combinations for the knapsack. These values are then used in a modified Grover’s search. The various combinations are then sent to the Grover operator as a function which is equal to 1 when it is the optimal solution [7].</p>

<h4 id="proposed-0-1-knapsack-algorithms" id="proposed-0-1-knapsack-algorithms"><strong>Proposed 0 1 Knapsack Algorithms</strong></h4>

<h4 id="modified-grover-s-algorithm" id="modified-grover-s-algorithm">Modified Grover&#39;s algorithm</h4>

<p>Following closely the work of [5], These are the steps for our proposed algorithm
1.  Using N qubits, each basis state will represent a possible set.  {|00000&gt;,|00001&gt; …|11111&gt;}
2.  Two prepared state vectors will represent the profit and weight vectors.
3.  Inner product will be used to calculate the profit and weight of each
       possible solution set.
4.  Sets with weights &gt; V will be eliminated.
5.  A modified Grover’s search is then applied to the remaining sets, using
       the profit value calculated in step 3.</p>

<p>Quantum parallelism and the efficiency of Grover’s algorithm will definitely give a speedup for this problem (Step 1-3 can be done simultaneously), however, we theorize that gate complexity for the functions necessary for implementing steps 2 and 3 will be exponentially large depending on the value of N. The time complexity of this algorithm is speculated to be about ~O(2^ (n/3)+n ).</p>

<h4 id="the-quantum-approximate-optimization-algorithm-qaoa" id="the-quantum-approximate-optimization-algorithm-qaoa">The Quantum approximate optimization algorithm (QAOA)</h4>

<p><img src="https://i.snap.as/IMsNduQw.png" alt=""/></p>

<p><img src="https://i.snap.as/y5vmg7N3.png" alt=""/></p>

<h4 id="conclusion" id="conclusion"><strong>Conclusion</strong></h4>

<p>The Modified Grover’s algorithm and the QAOA are two potential Quantum algorithms for the 0 1 Knapsack problem. Future work on this topic should involve in-depth algorithm analysis and circuit construction. This is my last article for the term, and I want to especially thank Professor. Parimala Thulasiraman for her guidance.</p>

<h4 id="references" id="references"><strong>References</strong></h4>

<p>[1] Grover, L. K. (1996, July). A fast quantum mechanical algorithm for
    database search. In Proceedings of the twenty-eighth annual ACM
   symposium on Theory of computing (pp. 212-219).</p>

<p>[2]  Ekert, A., &amp; Jozsa, R. (1996). Quantum computation and Shor&#39;s factoring
      algorithm. Reviews of Modern Physics, 68(3), 733.</p>

<p>[3] Preskill, J. (2018). Quantum Computing in the NISQ era and beyond.
     Quantum, 2, 79.</p>

<p>[4] Grover, L. K. (1997). Quantum mechanics helps in searching for a needle in
      a haystack. Physical review letters, 79(2), 325.</p>

<p>[5] <a href="https://www.siam.org/conferences/cm/program/minitutorials/pp20-" rel="nofollow">https://www.siam.org/conferences/cm/program/minitutorials/pp20-</a>
      minitutorials</p>

<p>[6] <a href="https://quantum-algorithms.herokuapp.com/433/shor-par/node11.html" rel="nofollow">https://quantum-algorithms.herokuapp.com/433/shor-par/node11.html</a></p>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/0-1-knapsack-problem-a-quantum-algorithm</guid>
      <pubDate>Thu, 03 Dec 2020 22:18:08 +0000</pubDate>
    </item>
    <item>
      <title>SHOR&#39;S ALGORITHM AND QUANTUM FOURIER TRANSFORM (QFT)</title>
      <link>https://chinenyeakaluka.writeas.com/shors-algorithm?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[SHOR&#39;S ALGORITHM AND QUANTUM FOURIER TRANSFORM (QFT)&#xA;&#xA;THE IMPORTANCE OF FACTORIZATION&#xA;The integer factorization problem is about finding two factors N1 and N2 which when multiplied gives the number N (N, N1, N2   1) [1]. When N1 and N2 are primes, this becomes especially hard. The problem is useful in the scientific community. The public and private key of the RSA cryptosystem are modern implementations of integer factorization problem with primes [2]. There is no known classical polynomial-time algorithm currently for this problem [1]. Currently, integers with 1000 or more bits are impossible to factor using known algorithms and classical hardware. Quantum computing is believed to have the potential to change this. Meanwhile, Shor’s algorithm is a breakthrough for this problem, factoring small numbers at time O(n^3logn) [1]. &#xA;&#xA;!--more--&#xA;A SIMPLE EXPLANATION&#xA;Shor’s algorithm uses using modular exponentiation. Consider an odd N = N1N2, 1  N1, N2 &lt; N. If we pick k &lt; N such that gcd(k, N) = 1, we can show that there is a p  0 such that k^p  ≡ 1 (mod N) [1]. Using modular arithmetic definition, x ≡ y (mod m) iff m divides x – y, we can say N divides k^p − 1 = (k^(p/2) − 1)(k^(p/2) + 1) if p is even.  n1 = k^(p/2) + 1 and n2 = k^(p/2) – 1 are greater than zero and have no common factor greater than 2 because |n1-n2| = 2 [1]. Since N = N1N2 was assumed to be odd, then N1 is a factor of either n1 or n2. If N1 is a factor of n1 and N, then N1 divides both n1 and N and one can find N1 by computing gcd(n1, N) [1]. The same goes for N2.&#xA;&#xA;Here is an example. Given N = 15 and k = 7, a modular exponentiation sequence [3] is 1, 7, 4, 13, 1, 7, 4, 13, 1, . . . with period 4. Since the period 4 is an even number, 74 mod 15 ≡ 1 ⇒ 74 − 1 mod 15 ≡ 0 ⇒ (72 − 1)(72 + 1) mod 15 ≡ 0 . This means 15 divides 4850, which can be used to factorize 15 as gcd(48, 15) = 3 and gcd(50, 15) = 5.&#xA;&#xA;QUANTUM FOURIER TRANFORM&#xA;Finding the period of a modular exponentiation sequence is not classically easy, but with quantum computing, the period can be found in polynomial time using the Quantum Fourier Transform (QFT). &#xA;&#xA;The classical Fourier transform has the following equation:&#xA;&#xA;Where&#xA;&#xA;•&#x9;yk and xj are complex numbers.&#xA;•&#x9;j and k are indices, ranging from 0 to N-1.&#xA;•&#x9;N is the length of the data set x.&#xA;&#xA;The quantum Fourier transform has the same equation but with one difference. The data set is a vector, with each element in the vector representing the probability of the state being measured as that combination of 0 and 1 and is often called ψ instead of x [4].&#xA;&#xA;|ψ  = α1 |00…0  ⋯αn |11..11  This can be represented as a matrix. Eg. For a 2-qubit state ψ,&#xA;&#xA;The magnitude of the state vector ψ remains unchanged but is rotated using a series of operations of the form e^(iθ) [4].&#xA;Our matrix now looks like this.&#xA;&#xA;Phase rotations can be implemented using the quantum R gate:&#xA;&#xA;The factorization algorithm uses QFT because it can “compute” the period of a periodic input. One can find the period of the corresponding modular exponentiation sequence using QFT if one is able to encode its period in the amplitudes of a quantum state (the input to QFT) [1]&#xA;&#xA;ILLUSTRATION OF A PERIOD FINDING CIRCUIT&#xA;The following is a high-level illustration of the circuit.&#xA;&#xA;The first QFT on register A produces an equal superposition of the qubits from A. The current state is&#xA;&#xA;The function f (i) = X_i (mod N) is used on the second register B. The current state is  &#xA;&#xA;In the last QFT transform, register A is a superposition with only equal non-zero amplitudes of |i⟩ for which f (i) = s. F(i) is in a periodic superposition with period r.&#xA;&#xA;REFERENCES&#xA;&#xA;[1] Coles, P. J., Eidenbenz, S., Pakin, S., Adedoyin, A., Ambrosiano, J., Anisimov, P., ... &amp; Gunter, D. (2018). Quantum algorithm implementations for beginners. arXiv, arXiv-1804.&#xA;&#xA;[2] Boneh, D. (1999). Twenty years of attacks on the RSA cryptosystem. Notices of the AMS, 46(2), 203- 213.&#xA;&#xA;[3] https://www2.math.upenn.edu/~mlazar/math170/notes06-3.pdf&#xA;&#xA;[4] https://medium.com/@sashwat.anagolum/qftaddition-ce0a0b2bc4f4&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<h3 id="shor-s-algorithm-and-quantum-fourier-transform-qft" id="shor-s-algorithm-and-quantum-fourier-transform-qft"><strong>SHOR&#39;S ALGORITHM AND QUANTUM FOURIER TRANSFORM (QFT)</strong></h3>

<h4 id="the-importance-of-factorization" id="the-importance-of-factorization"><strong>THE IMPORTANCE OF FACTORIZATION</strong></h4>

<p>The integer factorization problem is about finding two factors N1 and N2 which when multiplied gives the number N (N, N1, N2 &gt; 1) [1]. When N1 and N2 are primes, this becomes especially hard. The problem is useful in the scientific community. The public and private key of the RSA cryptosystem are modern implementations of integer factorization problem with primes [2]. There is no known classical polynomial-time algorithm currently for this problem [1]. Currently, integers with 1000 or more bits are impossible to factor using known algorithms and classical hardware. Quantum computing is believed to have the potential to change this. Meanwhile, Shor’s algorithm is a breakthrough for this problem, factoring small numbers at time O(n^3logn) [1].</p>



<h4 id="a-simple-explanation" id="a-simple-explanation"><strong>A SIMPLE EXPLANATION</strong></h4>

<p>Shor’s algorithm uses using modular exponentiation. Consider an odd N = N1*N2, 1 &lt; N1, N2 &lt; N. If we pick k &lt; N such that gcd(k, N) = 1, we can show that there is a p &gt; 0 such that k^p  ≡ 1 (mod N) [1]. Using modular arithmetic definition, x ≡ y (mod m) iff m divides x – y, we can say N divides k^p − 1 = (k^(p/2) − 1)(k^(p/2) + 1) if p is even.  n1 = k^(p/2) + 1 and n2 = k^(p/2) – 1 are greater than zero and have no common factor greater than 2 because |n1-n2| = 2 [1]. Since N = N1N2 was assumed to be odd, then N1 is a factor of either n1 or n2. If N1 is a factor of n1 and N, then N1 divides both n1 and N and one can find N1 by computing gcd(n1, N) [1]. The same goes for N2.</p>

<p>Here is an example. Given N = 15 and k = 7, a modular exponentiation sequence [3] is 1, 7, 4, 13, 1, 7, 4, 13, 1, . . . with period 4. Since the period 4 is an even number, 74 mod 15 ≡ 1 ⇒ 74 − 1 mod 15 ≡ 0 ⇒ (72 − 1)(72 + 1) mod 15 ≡ 0 . This means 15 divides 48*50, which can be used to factorize 15 as gcd(48, 15) = 3 and gcd(50, 15) = 5.</p>

<h4 id="quantum-fourier-tranform" id="quantum-fourier-tranform"><strong>QUANTUM FOURIER TRANFORM</strong></h4>

<p>Finding the period of a modular exponentiation sequence is not classically easy, but with quantum computing, the period can be found in polynomial time using the Quantum Fourier Transform (QFT).</p>

<p>The classical Fourier transform has the following equation:
<img src="https://i.snap.as/hJCnbp4e.png" alt=""/>
Where</p>

<p>•   y<em>k and x</em>j are complex numbers.
•   j and k are indices, ranging from 0 to N-1.
•   N is the length of the data set x.</p>

<p>The quantum Fourier transform has the same equation but with one difference. The data set is a vector, with each element in the vector representing the probability of the state being measured as that combination of 0 and 1 and is often called ψ instead of x [4].
<img src="https://i.snap.as/6FCy06dA.png" alt=""/>
|ψ&gt; = α<em>1 |00…0&gt;⋯α</em>n |11..11&gt;
This can be represented as a matrix. Eg. For a 2-qubit state ψ,
<img src="https://i.snap.as/jB5Q8SQR.png" alt=""/>
The magnitude of the state vector ψ remains unchanged but is rotated using a series of operations of the form e^(iθ) [4].
Our matrix now looks like this.
<img src="https://i.snap.as/h3JkVK8c.png" alt=""/>
Phase rotations can be implemented using the quantum R gate:
<img src="https://i.snap.as/AiQFT8Bh.png" alt=""/>
The factorization algorithm uses QFT because it can “compute” the period of a periodic input. One can find the period of the corresponding modular exponentiation sequence using QFT if one is able to encode its period in the amplitudes of a quantum state (the input to QFT) [1]</p>

<h4 id="illustration-of-a-period-finding-circuit" id="illustration-of-a-period-finding-circuit"><strong>ILLUSTRATION OF A PERIOD FINDING CIRCUIT</strong></h4>

<p>The following is a high-level illustration of the circuit.
<img src="https://i.snap.as/7eR82zW9.png" alt=""/>
1.  The first QFT on register A produces an equal superposition of the qubits from A. The current state is
<img src="https://i.snap.as/0jxlsmMQ.png" alt=""/>
2. The function f (i) = X_i (mod N) is used on the second register B. The current state is<br/>
<img src="https://i.snap.as/3E2xFM3c.png" alt=""/>
3.  In the last QFT transform, register A is a superposition with only equal non-zero amplitudes of |i⟩ for which f (i) = s. F(i) is in a periodic superposition with period r.
<img src="https://i.snap.as/AXS75bM6.png" alt=""/></p>

<h4 id="references" id="references"><strong>REFERENCES</strong></h4>

<p>[1] Coles, P. J., Eidenbenz, S., Pakin, S., Adedoyin, A., Ambrosiano, J., Anisimov, P., ... &amp; Gunter, D. (2018). Quantum algorithm implementations for beginners. arXiv, arXiv-1804.</p>

<p>[2] Boneh, D. (1999). Twenty years of attacks on the RSA cryptosystem. Notices of the AMS, 46(2), 203- 213.</p>

<p>[3] <a href="https://www2.math.upenn.edu/~mlazar/math170/notes06-3.pdf" rel="nofollow">https://www2.math.upenn.edu/~mlazar/math170/notes06-3.pdf</a></p>

<p>[4] <a href="https://medium.com/@sashwat.anagolum/qftaddition-ce0a0b2bc4f4" rel="nofollow">https://medium.com/@sashwat.anagolum/qftaddition-ce0a0b2bc4f4</a></p>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/shors-algorithm</guid>
      <pubDate>Thu, 03 Dec 2020 22:16:33 +0000</pubDate>
    </item>
    <item>
      <title>Review of paper &#34;Simulating a perceptron on a quantum computer&#34; by Schulda et...</title>
      <link>https://chinenyeakaluka.writeas.com/presentation?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[Review of paper &#34;Simulating a perceptron on a quantum computer&#34; by Schulda et al.&#xA;&#xA;Change of direction for project.&#xA;&#xA;!--more--&#xA;&#xA;In this PowerPoint presentation, I analyze the paper &#34;An artificial neuron implemented on an actual quantum processor” by Tacchino et al. and the Quantum Perceptron circuit created.&#xA;&#xA;Click this link to view the presentation.&#xA;https://1drv.ms/p/s!Akjbt9MJE26teAndpQ5zo6GDWWc?e=U2niLE&#xA;&#xA;Change of direction for project.&#xA;I&#39;ll focus my attention on Quantum algorithms and pick one for a final article.&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<ol><li><h3 id="review-of-paper-simulating-a-perceptron-on-a-quantum-computer-by-schulda-et-al" id="review-of-paper-simulating-a-perceptron-on-a-quantum-computer-by-schulda-et-al"><strong>Review of paper “Simulating a perceptron on a quantum computer” by Schulda et al.</strong></h3></li>

<li><h3 id="change-of-direction-for-project" id="change-of-direction-for-project"><strong>Change of direction for project.</strong></h3></li></ol>



<p>In this PowerPoint presentation, I analyze the paper “An artificial neuron implemented on an actual quantum processor” by Tacchino et al. and the Quantum Perceptron circuit created.</p>

<p><img src="https://i.snap.as/XU9F0nD3.png" alt=""/></p>

<p>Click this link to view the presentation.
<a href="https://1drv.ms/p/s!Akjbt9MJE26teAndpQ5zo6GDWWc?e=U2niLE" rel="nofollow">https://1drv.ms/p/s!Akjbt9MJE26teAndpQ5zo6GDWWc?e=U2niLE</a></p>

<h4 id="change-of-direction-for-project-1" id="change-of-direction-for-project-1"><strong>Change of direction for project.</strong></h4>

<p>I&#39;ll focus my attention on Quantum algorithms and pick one for a final article.</p>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/presentation</guid>
      <pubDate>Sat, 14 Nov 2020 18:14:57 +0000</pubDate>
    </item>
    <item>
      <title>GROVER&#39;S ALGORITHM</title>
      <link>https://chinenyeakaluka.writeas.com/more-grover?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[GROVER&#39;S ALGORITHM&#xA;&#xA;more background information&#xA;Quantum states (|0⟩, |1⟩, |+⟩, |-⟩) can be represented as a superposition.&#xA;|ψ⟩= α|0⟩+ β|1⟩&#xA;&#xA;|α|^2+ |β|^2=1&#xA;&#xA;α=√(1-p,)         β=e^jφ √p,          0≤p≤1,0≤φ&lt;2π&#xA;&#xA;|ψ⟩=√(1-p)|0⟩+ e^jφ √p,|1⟩&#xA;&#xA;e^jφ  is the phase&#xA;&#xA;The phase can be used to offset the qubit. There are different gates we can use to do the offsets (T, S, Z etc.)&#xA;&#xA;A phase change example can be found here. https://quantum-computing.ibm.com/composer/d065727b7bdddc3f658e2ad8badeb1ba.&#xA;&#xA;Grover&#39;s Algorithm&#xA;Grover&#39;s algorithm shows the exponential advantage of a quantum computer. It is a search algorithm that provides a huge improvement to a regular classical sorting algorithm. This is because Quantum Mechanics systems can be in a state of superposition and algorithms can simultaneously examine multiple states. A search for an item from a random list of n items can be obtained in O(√n)steps.&#xA;&#xA;!--more--&#xA;&#xA;Basically, all the states (right and wrong answers) are superposed together using a function and then phase angle change operations are applied to the superposition. This makes the probability of the right answer a lot higher than the other answers making it more probable to be measured.&#xA;&#xA;Grover&#39;s Algorithm Encoding&#xA;The search list is provided in superposition to a function f which returns f(x) = 1 for the right answer and f(x) = 0 for the wrong answer.&#xA;We binary encode the items as qubits x,w ∈ {0,1}^(n) so that N = 2^n.&#xA;&#xA;We define an oracle matrix to act on any single.  U|x⟩= (-1)^f(x)|x⟩, which is -|x⟩ if the item is found.&#xA;&#xA;Grover&#39;s Algorithm Function&#xA;&#xA;Uniform superposition&#xA;Oracle refection&#xA;Additional reflection&#xA;&#xA;The two reflections equal to a rotation. The whole procedure ( 3 steps ) is repeated several times until the answer is the focus. This is approximately √n times.&#xA;&#xA;You can find an example of this algorithm here. Grover N=2 A=00&#xA;https://quantum-computing.ibm.com/composer/39354dfd1bb6ac3edb8f9a9659c834d4&#xA;&#xA;𝑈𝜔|𝑥⟩=(−1)^𝑓(𝑥)|𝑥⟩  is the oracle. Inputs are represented by this function but in a superposition.&#xA;&#xA;The superposition of all inputs |s⟩&#xA;&#xA;|𝑠⟩=sin𝜃|𝑤⟩+cos𝜃|𝑠′⟩, where  𝜃=arcsin⟨𝑠|𝑤⟩=arcsin√N&#xA;superposition of the right answer and all the wrong answers.&#xA;&#xA;Amplitude amplification singles out the right answer in the superposition by using quantum gate circuitry to adjust the amplitude of the right answer.&#xA;&#xA;Superposition is done by a Hadamard gate.&#xA; 𝜃=arcsin(1/2)=𝜋/6.&#xA;&#xA;all the states = 1/2(|00⟩+|01⟩+|10⟩+|11⟩)&#xA;&#xA;The circuit currently.&#xA;&#xA;We apply the oracle reflection (see equation above)&#xA;&#xA;Oracle for  |𝜔⟩=|11⟩&#xA;  &#xA;Let&#39;s look at the case  |𝑤⟩=|11⟩&#xA;&#xA; . The oracle  𝑈𝜔 in this case acts as follows:&#xA;&#xA;𝑈𝜔|𝑠⟩=𝑈𝜔.1/2(|00⟩+|01⟩+|10⟩+|11⟩)=1/2(|00⟩+|01⟩+|10⟩−|11⟩)&#xA;&#xA;This is gotten by the controlled z gate = H gate + CNOT gate + H gate. &#xA;The CNOT applies an  𝑋 to its target qubit whenever its control is in state  |1⟩&#xA;&#xA;see full circuit https://quantum-computing.ibm.com/composer/89fe6d3a014ad268b44b5f8b4a5f4b9c&#xA;&#xA;Reference&#xA;https://quantum-computing.ibm.com/docs/iqx/guide/]]&gt;</description>
      <content:encoded><![CDATA[<h3 id="grover-s-algorithm" id="grover-s-algorithm"><strong>GROVER&#39;S ALGORITHM</strong></h3>

<p><strong>more background information</strong>
Quantum states (|0⟩, |1⟩, |+⟩, |-⟩) can be represented as a superposition.
|ψ⟩= α|0⟩+ β|1⟩</p>

<p>|α|^2+ |β|^2=1</p>

<p>α=√(1-p,)         β=e^jφ √p,          0≤p≤1,0≤φ&lt;2π</p>

<p>|ψ⟩=√(1-p)|0⟩+ e^jφ √p,|1⟩</p>

<p>e^jφ  is the phase</p>

<p>The phase can be used to offset the qubit. There are different gates we can use to do the offsets (T, S, Z etc.)</p>

<p>A phase change example can be found here. <a href="https://quantum-computing.ibm.com/composer/d065727b7bdddc3f658e2ad8badeb1ba" rel="nofollow">https://quantum-computing.ibm.com/composer/d065727b7bdddc3f658e2ad8badeb1ba</a>.</p>

<h3 id="grover-s-algorithm-1" id="grover-s-algorithm-1">Grover&#39;s Algorithm</h3>

<p>Grover&#39;s algorithm shows the exponential advantage of a quantum computer. It is a search algorithm that provides a huge improvement to a regular classical sorting algorithm. This is because Quantum Mechanics systems can be in a state of superposition and algorithms can simultaneously examine multiple states. A search for an item from a random list of n items can be obtained in O(√n)steps.</p>



<p>Basically, all the states (right and wrong answers) are superposed together using a function and then phase angle change operations are applied to the superposition. This makes the probability of the right answer a lot higher than the other answers making it more probable to be measured.</p>

<h3 id="grover-s-algorithm-encoding" id="grover-s-algorithm-encoding"><strong>Grover&#39;s Algorithm Encoding</strong></h3>

<p>The search list is provided in superposition to a function f which returns f(x) = 1 for the right answer and f(x) = 0 for the wrong answer.
We binary encode the items as qubits x,w ∈ {0,1}^(n) so that N = 2^n.</p>

<p>We define an oracle matrix to act on any single.  U|x⟩= (-1)^f(x)|x⟩, which is –|x⟩ if the item is found.</p>

<h3 id="grover-s-algorithm-function" id="grover-s-algorithm-function"><strong>Grover&#39;s Algorithm Function</strong></h3>
<ol><li>Uniform superposition</li>
<li>Oracle refection</li>
<li>Additional reflection</li></ol>

<p>The two reflections equal to a rotation. The whole procedure ( 3 steps ) is repeated several times until the answer is the focus. This is approximately √n times.
<img src="https://i.snap.as/EnKJ9WKF.png" alt=""/>
You can find an example of this algorithm here. Grover N=2 A=00
<a href="https://quantum-computing.ibm.com/composer/39354dfd1bb6ac3edb8f9a9659c834d4" rel="nofollow">https://quantum-computing.ibm.com/composer/39354dfd1bb6ac3edb8f9a9659c834d4</a></p>

<p><img src="https://i.snap.as/9i0R5ZM3.png" alt=""/></p>

<p>𝑈𝜔|𝑥⟩=(−1)^𝑓(𝑥)|𝑥⟩  is the oracle. Inputs are represented by this function but in a superposition.</p>

<p>The superposition of all inputs |s⟩</p>

<p>|𝑠⟩=sin𝜃|𝑤⟩+cos𝜃|𝑠′⟩, where  𝜃=arcsin⟨𝑠|𝑤⟩=arcsin√N
superposition of the right answer and all the wrong answers.</p>

<p>Amplitude amplification singles out the right answer in the superposition by using quantum gate circuitry to adjust the amplitude of the right answer.</p>
<ol><li>Superposition is done by a Hadamard gate.
𝜃=arcsin(½)=𝜋/6.</li></ol>

<p><img src="https://i.snap.as/8g8wQiGb.png" alt=""/></p>

<p>all the states = ½(|00⟩+|01⟩+|10⟩+|11⟩)</p>

<p>The circuit currently.
<img src="https://i.snap.as/gdjNk5D7.png" alt=""/></p>
<ol><li>We apply the oracle reflection (see equation above)</li></ol>

<p>Oracle for  |𝜔⟩=|11⟩</p>

<p>Let&#39;s look at the case  |𝑤⟩=|11⟩</p>

<p> . The oracle  𝑈𝜔 in this case acts as follows:</p>

<p>𝑈𝜔|𝑠⟩=𝑈𝜔.½(|00⟩+|01⟩+|10⟩+|11⟩)=½(|00⟩+|01⟩+|10⟩−|11⟩)</p>

<p>This is gotten by the controlled z gate = H gate + CNOT gate + H gate.
The CNOT applies an  𝑋 to its target qubit whenever its control is in state  |1⟩</p>

<p><img src="https://i.snap.as/dqmj1ju5.png" alt=""/></p>

<p><strong>see full circuit</strong> <a href="https://quantum-computing.ibm.com/composer/89fe6d3a014ad268b44b5f8b4a5f4b9c" rel="nofollow">https://quantum-computing.ibm.com/composer/89fe6d3a014ad268b44b5f8b4a5f4b9c</a></p>

<p>##<a href="https://chinenyeakaluka.writeas.com/tag:Reference" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">Reference</span></a>
<a href="https://quantum-computing.ibm.com/docs/iqx/guide/" rel="nofollow">https://quantum-computing.ibm.com/docs/iqx/guide/</a></p>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/more-grover</guid>
      <pubDate>Wed, 21 Oct 2020 19:04:38 +0000</pubDate>
    </item>
    <item>
      <title>WEEK 5</title>
      <link>https://chinenyeakaluka.writeas.com/week-5?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[WEEK 5&#xA;How to sum two numbers using a quantum processor&#xA;&#xA;The structure of Quantum algorithms. How different are they from classical ones?&#xA;&#xA;!--more--&#xA;&#xA;How to sum two numbers using a quantum processor&#xA;&#xA;The above is a picture of the classical adder circuit. We would like to reproduce this on a quantum processor. We&#39;ll be using the QISKit library. https://qiskit.org. Before we start, we have 3 questions to answer.&#xA;How do we store the input bits?&#xA;What quantum gates can we use here?&#xA;How can we measure the results?&#xA;&#xA;How do we store the input bits?&#xA;Qubits are normally in the |0  default state and we can use the X gate to change it to the |1  state. We can assign one qubit to represent a classical bit.&#xA;We&#39;ll need two sets of these qubits. One each for the first and second number.&#xA;&#xA;Supposing we make a superposition of each bit, then we can store multiple bits at one!&#xA;&#xA;What quantum gates can we use here?&#xA;We need to use universal reversible gates to construct more complex gates like the XOR and AND classical gates. We will use the CNOT and CCNOT gates to build them. We will perform a little algebra to find the carry bit and sum.&#xA;&#xA;How can we measure the results?&#xA;We&#39;ll use the measurement operator in the QISKit library and will store the results in the register of the second number. &#xA;&#xA;You can find the full code here. https://quantum-computing.ibm.com/jupyter/user/Sum%20of%20binary%20numbers.ipynb&#xA;&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<h2 id="week-5" id="week-5">WEEK 5</h2>
<ol><li><h3 id="how-to-sum-two-numbers-using-a-quantum-processor" id="how-to-sum-two-numbers-using-a-quantum-processor"><strong>How to sum two numbers using a quantum processor</strong></h3></li>

<li><h3 id="the-structure-of-quantum-algorithms-how-different-are-they-from-classical-ones" id="the-structure-of-quantum-algorithms-how-different-are-they-from-classical-ones"><strong>The structure of Quantum algorithms. How different are they from classical ones?</strong></h3></li></ol>



<h3 id="how-to-sum-two-numbers-using-a-quantum-processor-1" id="how-to-sum-two-numbers-using-a-quantum-processor-1"><strong>How to sum two numbers using a quantum processor</strong></h3>

<p><img src="https://i.snap.as/zjh2V8a6.png" alt=""/></p>

<p>The above is a picture of the classical adder circuit. We would like to reproduce this on a quantum processor. We&#39;ll be using the QISKit library. <a href="https://qiskit.org" rel="nofollow">https://qiskit.org</a>. Before we start, we have 3 questions to answer.
1. How do we store the input bits?
2. What quantum gates can we use here?
3. How can we measure the results?</p>

<h4 id="how-do-we-store-the-input-bits" id="how-do-we-store-the-input-bits">How do we store the input bits?</h4>

<p>Qubits are normally in the |0&gt; default state and we can use the X gate to change it to the |1&gt; state. We can assign one qubit to represent a classical bit.
We&#39;ll need two sets of these qubits. One each for the first and second number.</p>

<p>Supposing we make a superposition of each bit, then we can store multiple bits at one!</p>

<h4 id="what-quantum-gates-can-we-use-here" id="what-quantum-gates-can-we-use-here">What quantum gates can we use here?</h4>

<p>We need to use universal reversible gates to construct more complex gates like the XOR and AND classical gates. We will use the CNOT and CCNOT gates to build them. We will perform a little algebra to find the carry bit and sum.</p>

<p><img src="https://i.snap.as/1Fd1mc4d.jpg" alt=""/>
<img src="https://i.snap.as/3t5Fc24k.jpg" alt=""/></p>

<h4 id="how-can-we-measure-the-results" id="how-can-we-measure-the-results">How can we measure the results?</h4>

<p>We&#39;ll use the measurement operator in the QISKit library and will store the results in the register of the second number.</p>

<p><img src="https://i.snap.as/JABZLTqy.jpg" alt=""/>
<img src="https://i.snap.as/0q5G2rHU.jpg" alt=""/></p>

<p>You can find the full code here. <a href="https://quantum-computing.ibm.com/jupyter/user/Sum%20of%20binary%20numbers.ipynb" rel="nofollow">https://quantum-computing.ibm.com/jupyter/user/Sum%20of%20binary%20numbers.ipynb</a></p>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/week-5</guid>
      <pubDate>Fri, 09 Oct 2020 17:53:52 +0000</pubDate>
    </item>
    <item>
      <title>WEEK 3-4</title>
      <link>https://chinenyeakaluka.writeas.com/introduction-to-quantum-computing?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[WEEK 3-4&#xA;&#xA;INTRODUCTION TO QUANTUM COMPUTING&#xA;&#xA;(Using the IBMQ Environment (https://quantum-computing.ibm.com))&#xA;&#xA;Learning to build or program a quantum circuit requires the following knowledge&#xA;&#xA;Qubit - A qubit (or quantum bit) is the quantum-mechanical analog of a classical bit. It has two basis states: |1⟩ and |0⟩ and can be in state |1⟩ or |0⟩ in a linear combination of both.&#xA;&#xA;!--more--&#xA;&#xA;Superposition - This is when a qubit (or cubits) is in a linear combination of both states. A quantum computer consisting of n qubits can exist in a superposition of 2^n states. However, when this qubit is measured, it can only have one value. With information stored in superposition, some problems can be solved exponentially faster.&#xA;&#xA;Entanglement -This is a phenomenon when the outcome of the measurement on one qubit is always correlated to the measurement on the other qubit. It enables correlations in systems.&#xA;&#xA;I&#39;ll explain more concepts as I go on&#xA;&#xA;Building a circuit in Quantum computers works (almost) the same way as the classical computer. We use logic gates as building blocks.&#xA;&#xA;SIMPLE CIRCUIT EXAMPLES&#xA;Create a superposition state from a single input qubit.&#xA;Steps:&#xA;-prepare a qubit in the state |0⟩&#xA;&#xA;-Apply a Hadamard Gate (This gate is a single qubit operation that maps the basis state |0⟩ to ( |0⟩+|1⟩ )/2  and |1⟩ to ( |0⟩-|1⟩ )/2 creating an equal superposition of the two states.)&#xA;&#xA;If we measure this circuit, we get only one basis value with a 50% probability.&#xA;&#xA;Entangle two qubits&#xA;-Use a CNOT gate to entangle a target qubit (q0) with a control qubit (q0). The CNOT gate does logic calculations to ensure that the q1 correlates to q0 when measured.&#xA;&#xA;When we measure the values of the two qubits after the circuit is run, even though their values are random measurements, they will correlate to be the same value. &#xA;&#xA;References&#xA;Coles, P. J., Eidenbenz, S., Pakin, S., Adedoyin, A., Ambrosiano, J., Anisimov, P., ... &amp; Gunter, D. (2018). Quantum algorithm implementations for beginners. arXiv, arXiv-1804.&#xA;2.https://quantum-computing.ibm.com/docs/iqx/guide/&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<h2 id="week-3-4" id="week-3-4">WEEK 3-4</h2>

<h3 id="introduction-to-quantum-computing" id="introduction-to-quantum-computing"><strong>INTRODUCTION TO QUANTUM COMPUTING</strong></h3>

<p>(Using the IBMQ Environment (<a href="https://quantum-computing.ibm.com)" rel="nofollow">https://quantum-computing.ibm.com)</a>)</p>

<p>Learning to build or program a quantum circuit requires the following knowledge</p>

<p>Qubit – A qubit (or quantum bit) is the quantum-mechanical analog of a classical bit. It has two basis states: |1⟩ and |0⟩ and can be in state |1⟩ or |0⟩ in a linear combination of both.</p>



<p>Superposition – This is when a qubit (or cubits) is in a linear combination of both states. A quantum computer consisting of n qubits can exist in a superposition of 2^n states. However, when this qubit is measured, it can only have one value. With information stored in superposition, some problems can be solved exponentially faster.</p>

<p>Entanglement -This is a phenomenon when the outcome of the measurement on one qubit is always correlated to the measurement on the other qubit. It enables correlations in systems.</p>

<p>I&#39;ll explain more concepts as I go on</p>

<p>Building a circuit in Quantum computers works (almost) the same way as the classical computer. We use logic gates as building blocks.</p>

<p><img src="https://i.snap.as/WF4L6Z2I.jpg" alt=""/></p>

<p><img src="https://i.snap.as/W9L6UI6q.jpg" alt=""/></p>

<p><img src="https://i.snap.as/9JOsooi7.jpg" alt=""/></p>

<p><img src="https://i.snap.as/83DpaUWi.png" alt=""/></p>

<p><strong>SIMPLE CIRCUIT EXAMPLES</strong>
1. Create a superposition state from a single input qubit.
Steps:
-prepare a qubit in the state |0⟩
<img src="https://i.snap.as/lKlQbbPT.jpeg" alt=""/></p>

<p>-Apply a Hadamard Gate (This gate is a single qubit operation that maps the basis state |0⟩ to ( |0⟩+|1⟩ )/2  and |1⟩ to ( |0⟩-|1⟩ )/2 creating an equal superposition of the two states.)
<img src="https://i.snap.as/1f0pmPoa.png" alt=""/></p>

<p>If we measure this circuit, we get only one basis value with a 50% probability.</p>
<ol><li>Entangle two qubits
-Use a CNOT gate to entangle a target qubit (q0) with a control qubit (q0). The CNOT gate does logic calculations to ensure that the q1 correlates to q0 when measured.
<img src="https://i.snap.as/yVIDUzCG.png" alt=""/>
When we measure the values of the two qubits after the circuit is run, even though their values are random measurements, they will correlate to be the same value.</li></ol>

<h2 id="references" id="references">References</h2>
<ol><li>Coles, P. J., Eidenbenz, S., Pakin, S., Adedoyin, A., Ambrosiano, J., Anisimov, P., ... &amp; Gunter, D. (2018). Quantum algorithm implementations for beginners. arXiv, arXiv-1804.
2.<a href="https://quantum-computing.ibm.com/docs/iqx/guide/" rel="nofollow">https://quantum-computing.ibm.com/docs/iqx/guide/</a></li></ol>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/introduction-to-quantum-computing</guid>
      <pubDate>Thu, 08 Oct 2020 20:20:25 +0000</pubDate>
    </item>
    <item>
      <title>WEEK 2</title>
      <link>https://chinenyeakaluka.writeas.com/artificial-neural-networks?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[WEEK 2&#xA;&#xA;REVIEW OF ARTIFICIAL NEURAL NETWORKS &#xA;&#xA;Artificial neural networks (ANN) hold the key to new technologies like driverless cars and voice control. It stems from bio-inspired computing. ANN is an information processing model that is inspired by the way the biological nervous system such as the brain processes information. It is composed of highly interconnected neurons that are processing elements. These elements work together to solve a specific problem.&#xA;&#xA;!--more--&#xA;&#xA;The general model of an ANN is called a perceptron. Perceptron was introduced by Frank Rosenblatt in 1957. It has inputs of different weights, a bias value, and an activation function. This function converts the inputs of a node to an output signal which is used as an input to the next neuron in the system. The perceptron is active if the output is 1. The activation function applies a step rule (convert the numerical output into +1 or -1) to check if the output of the weighting function is greater than zero or not.&#xA;&#xA;Perceptrons are building blocks that artificial neural networks use to learn (Deep learning). Perceptrons can also be used to construct logic gates.&#xA;&#xA;References&#xA;https://medium.com/towards-artificial-intelligence/building-neural-networks-from-scratch-with-python-code-and-math-in-detail-i-536fae5d7bbf&#xA;https://medium.com/analytics-steps/understanding-the-perceptron-model-in-a-neural-network-2b3737ed70a2&#xA;https://www.simplilearn.com/what-is-perceptron-tutorial&#xA;https://en.wikipedia.org/wiki/Biologicalneuronmodel]]&gt;</description>
      <content:encoded><![CDATA[<h2 id="week-2" id="week-2">WEEK 2</h2>

<h3 id="review-of-artificial-neural-networks" id="review-of-artificial-neural-networks">REVIEW OF ARTIFICIAL NEURAL NETWORKS</h3>

<p>Artificial neural networks (ANN) hold the key to new technologies like driverless cars and voice control. It stems from bio-inspired computing. ANN is an information processing model that is inspired by the way the biological nervous system such as the brain processes information. It is composed of highly interconnected neurons that are processing elements. These elements work together to solve a specific problem.</p>



<p>The general model of an ANN is called a perceptron. Perceptron was introduced by Frank Rosenblatt in 1957. It has inputs of different weights, a bias value, and an activation function. This function converts the inputs of a node to an output signal which is used as an input to the next neuron in the system. The perceptron is active if the output is 1. The activation function applies a step rule (convert the numerical output into +1 or -1) to check if the output of the weighting function is greater than zero or not.</p>

<p><img src="https://i.snap.as/RNuuRebp.jpg" alt=""/></p>

<p>Perceptrons are building blocks that artificial neural networks use to learn (Deep learning). Perceptrons can also be used to construct logic gates.</p>

<h3 id="references" id="references">References</h3>
<ol><li><a href="https://medium.com/towards-artificial-intelligence/building-neural-networks-from-scratch-with-python-code-and-math-in-detail-i-536fae5d7bbf" rel="nofollow">https://medium.com/towards-artificial-intelligence/building-neural-networks-from-scratch-with-python-code-and-math-in-detail-i-536fae5d7bbf</a></li>
<li><a href="https://medium.com/analytics-steps/understanding-the-perceptron-model-in-a-neural-network-2b3737ed70a2" rel="nofollow">https://medium.com/analytics-steps/understanding-the-perceptron-model-in-a-neural-network-2b3737ed70a2</a></li>
<li><a href="https://www.simplilearn.com/what-is-perceptron-tutorial" rel="nofollow">https://www.simplilearn.com/what-is-perceptron-tutorial</a></li>
<li><a href="https://en.wikipedia.org/wiki/Biological_neuron_model" rel="nofollow">https://en.wikipedia.org/wiki/Biological_neuron_model</a></li></ol>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/artificial-neural-networks</guid>
      <pubDate>Thu, 08 Oct 2020 19:21:08 +0000</pubDate>
    </item>
    <item>
      <title>WEEK 1</title>
      <link>https://chinenyeakaluka.writeas.com/project-introduction?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[WEEK 1&#xA;&#xA;PROJECT INTRODUCTION&#xA;&#xA;!--more--&#xA;&#xA;Artificial neural networks are a class of computational models whose architecture is biologically inspired. They are useful in topics such as pattern recognition, image classification, and decision making. In the paper “An artificial neuron implemented on an actual quantum processor” by Tacchino et al., a quantum information-based algorithm was used to implement a “qubit neuron” (quantum binary neuron). This type of artificial neuron has each qubit (the computational unit in quantum computers) acting as an individual neuron within the network. A 2 qubits version of the algorithm was implemented on the IBM quantum processor and used in a pattern recognition process. The results show an exponential advantage in terms of storage capabilities over classical perceptron (a simple neuron) models and can be trained in a hybrid quantum-classical scheme.&#xA;&#xA;The focus for my honours project is to investigate and attempt to replicate this experiment. I would like to explore other papers with similar content in relations to quantum computing and machine learning. I would also like to build a circuit similar to the one outlined in the paper by using IBM Q quantum processor and Qiskit. As I look into this topic, I hope to find out more about the quantum information-based algorithm and how best to implement it. I hope that I can contribute towards the research on practical quantum neural networks, with the hope of implementation on quantum processing hardware.]]&gt;</description>
      <content:encoded><![CDATA[<h2 id="week-1" id="week-1">WEEK 1</h2>

<h3 id="project-introduction" id="project-introduction"><strong>PROJECT INTRODUCTION</strong></h3>

<p><img src="https://i.snap.as/MhJnNvk3.png" alt=""/></p>



<p>Artificial neural networks are a class of computational models whose architecture is biologically inspired. They are useful in topics such as pattern recognition, image classification, and decision making. In the paper “An artificial neuron implemented on an actual quantum processor” by Tacchino et al., a quantum information-based algorithm was used to implement a “qubit neuron” (quantum binary neuron). This type of artificial neuron has each qubit (the computational unit in quantum computers) acting as an individual neuron within the network. A 2 qubits version of the algorithm was implemented on the IBM quantum processor and used in a pattern recognition process. The results show an exponential advantage in terms of storage capabilities over classical perceptron (a simple neuron) models and can be trained in a hybrid quantum-classical scheme.</p>

<p>The focus for my honours project is to investigate and attempt to replicate this experiment. I would like to explore other papers with similar content in relations to quantum computing and machine learning. I would also like to build a circuit similar to the one outlined in the paper by using IBM Q quantum processor and Qiskit. As I look into this topic, I hope to find out more about the quantum information-based algorithm and how best to implement it. I hope that I can contribute towards the research on practical quantum neural networks, with the hope of implementation on quantum processing hardware.</p>
]]></content:encoded>
      <guid>https://chinenyeakaluka.writeas.com/project-introduction</guid>
      <pubDate>Thu, 08 Oct 2020 18:44:57 +0000</pubDate>
    </item>
  </channel>
</rss>