EE5393
From The Circuits and Biology Lab at UMN
Contents |
Circuits, Computation and Biology
Semester: Spring, 2013
Time: Wed. and Fri., 2:30pm - 3:45pm. (Also offered through UNITE.)
Syllabus
This course explores connections between engineering concepts — circuit theory, digital computation and distributed computing in particular — and biological systems. A broad theme is the application of expertise from the former to the latter — specifically, the application of algorithmic and computational expertise from circuit design to the analysis and synthesis of biochemical and neural systems.
This course is aimed at a wide audience: graduate students and upper-level undergraduates from engineering, computer science, mathematics, biology and the life sciences. No prior knowledge of engineering or biology is assumed; only basic college-level mathematics is required. While the course investigates a variety of topics from disparate fields, it does not attempt to survey the research exhaustively. Rather, it strives for depth and mathematical rigor in select areas.
Topics that are covered include:
Biology
- Analyzing and Simulating Stochastic Chemical Kinetics
- Computing with Molecular Reactions
- Computing Logical Functions
- Computing Iterative Functions
- Computing Stochastic Functions
- Digital Signal Processing
- DNA Strand Displacement Reactions
Circuits
- Nanoscale Switching Lattices
- Circuits with Feedback
- Logical Computation on Random Bit Streams
- Linear Threshold Logic
Computation
- Conditional Permutations
- Distributed Coordination
- Graph-based Data Structures for Boolean Functions
- Symbolic Boolean Data Structures
- Neural Computation
Organization
People
- Instructor: Prof. Marc Riedel (mriedel@umn.edu)
Lecture
- Wed. and Friday, 2:30pm - 3:45pm, Keller Hall, 3-230
Office Hours
- Mon. 1 - 3pm (or by appointment)
Text & Manuals
- No textbook is required.
- Research papers (in the form of PDFs) will be posted for most of the research topics that are covered.
Grading
- Homework: 80%
- best 4 of 5 homeworks
- Quizzes: 20%
- best 10 of 12 quizzes
(Complete the quizzes during the first 10 minutes of class. Or do them outside of class. Redo them if you get any questions wrong. Ask me to explain the answers and then resubmit them. Basically, you can't not get this 20% unless you don't try.)
Letter grades will be assigned according to the following (absolute) scale:
| A ≥ 85%, | A- ≥ 80%, | |
| B+ ≥ 75%, | B ≥ 70%, | B- ≥ 65%, |
| C+ ≥ 60%, | C ≥ 55%, | C- ≥ 50%, |
| D ≥ 40%, | ||
| F < 40%. |
Even though the grading is quantitative and objective, we must state the following university grading standards. According to University policy, grades are assigned with the following meaning:
- A - Achievement that is outstanding relative to the level necessary to meet course requirements.
- B - Achievement that is significantly above the level necessary to meet course requirements.
- C - Achievement that meets the course requirements in every respect.
- D - Achievement that is worthy of credit even though it fails to meet fully the course requirements.
- S - Achievement that is satisfactory (equivalent to a C or better).
- F (or N) - Represents failure (or no credit) and signifies that the work was either completed, but at a level of achievement that is not worthy of credit, or was not completed and there was no agreement between the instructor and the student that the student would be awarded an incomplete.
- I (Incomplete) - Assigned at the discretion of the instructor when, due to extraordinary circumstances, a student is prevented from completing the work of the course on time. Assignment of an ‘‘I’’ grade requires a written agreement between the instructor and the student. ‘‘Extraordinary circumstances’’ are such things as hospitalization, serious car accidents, and major illnesses. They do not include excuses such as ‘‘working too much,’’ ‘‘took too many credits,’’ and so forth. Furthermore, an ‘‘I’’ can be assigned only when a small portion of the course remains to be completed.
Lectures
Per UNITE policy, videos of the lectures can only be posted 10 days after the fact. Slides will be posted immediately.
- Feb. 15, 2013: Video. Topic: Guest lecture on synthetic biology.
- Feb. 20, 2013. Slides, Video. Topics: Viruses making random choices. Digital Signal Processing with Molecular Reactions, Part I.
- Feb. 22, 2013. Video. Topic: Digital Signal Processing with Molecular Reactions, Part II.
- Mar. 6, 2013. Slides, Video. Topics: Compiling Code in Chemical Reactions. Logic Synthesis for Nanoscale Switches, Part I.
- Mar. 13, 2013. Video. Topic: Logic Synthesis for Nanoscale Switches, Part II.
- Mar. 27, 2013. Video. Topics: Quantification, Derivatives, and Integrals of Boolean Functions. Properties of the XOR function.
- Mar. 29, 2013. Video. Topics: Neurons and Linear Threshold (LT) Gates. Computing XOR with LT gates.
- April 3, 2013. Video. Topic: Computing XOR with Logic Gates.
- April 5, 2013. Video. Slides, Topics: Chimpanzee Model of Computation. The Majority Function. Sorting Networks, Part I.
- April 24, 2013. Video. Topic: Computing with Conditional Permutations, Part II.
Quizzes
Homeworks
- Homework 1. Due March 1.
- Homework 2. Due March 27.
- Homework 3. Due May 3.
- Homework 4. Due May 19.
References
Circuits
- M. Altun and M. Riedel, "Logic Synthesis for Switching Lattices," IEEE Transactions on Computers, Vol. 61, No. 11, pp. 1588–1600, 2012.
- M. Altun and M. Riedel, "Synthesizing Logic with Percolation in Nanoscale Lattices," International Journal of Nanotechnology and Molecular Computation, Vol. 3, No. 2, pp. 12–30, 2011.
- E. F. Moore and C. E. Shannon, "Reliable Circuits Using Less Reliable Relays," Journal of the Franklin Institute, Vol. 262, pages 191–208, 1956.
- W. Qian and M. Riedel, "Synthesizing Logical Computation on Stochastic Bit Streams," Proceedings of the Design Automation Conference, 2009.
- W. Qian, H. Zhou, M. Riedel, and J. Bruck, "Transforming Probabilities with Combinational Logic," IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, Vol. 30, No. 9, pp. 1279–1292, 2011.
- M. Riedel and J. Bruck, "Cyclic Boolean Circuits," Discrete Applied Mathematics, Vol. 160, No. 13–14, pp. 1877–1900, 201
- M. Riedel and J. Bruck, "The Synthesis of Cyclic Combinational Circuits," Proceedings of the Design Automation Conference, 2003. (Winner of DAC Best Paper Award.)
- C. E. Shannon, "A Symbolic Analysis of Relay and Switching Circuits," Transactions of the AIEE, Vol. 57, pp. 713–723, 1938.
- J. von Neumann, Probabilistic Logics and the Synthesis of Reliable Organisms from Unreliable Components, in Automata Studies, C.E. Shannon and J. McCarthy eds., pp. 329–378, 1956.
Computation
- J. Aspnes, M. Herlihy, and N. Shavit, "Counting Networks," Journal of the Association for Computing Machinery, Vol. 41, No. 5, pp. 1020–1048, 1994.
- R. E. Bryant, "Symbolic Boolean Manipulation with Ordered Binary-Decision Diagrams," ACM Computing Surveys, Vol. 24, No. 3, pp. 293–318, 1992.
- M. Barrington, " Bounded-Width Polynomial-Size Branching Programs Recognize Exactly Those Languages in NC1," ACM Symposium on Theory of Computing, pp. 1–5, 1986.
- M. Cook, Networks of Relations, Ph.D Dissertation, Caltech, 2005.
- M. Riedel and J. Bruck, "Tolerating Faults in Counting Networks," Chap. 12, Dependable Network Computing, Kluwer, 2000.
Biology
- A. Arkin, J. Ross and H. McAdams, "Stochastic Kinetic Analysis of Developmental Pathway Bifurcation in Phage lambda-Infected Escherichia coli Cells," Genetics, Vol. 149, pp. 1633–1648, 1998.
- B. Fett, J. Bruck, and M. Riedel, "Synthesizing Stochasticity in Biochemical Systems," Proceedings of the Design Automation Conference, San Diego, 2007.
- D. Gillespie, "Stochastic Simulation of Chemical Kinetics," Annual Revue Physical Chemistry, Vol. 58, pp. 35–55, 2007.
- H. Jiang, A. Salehi, M. Riedel, and K. Parhi, "Discrete-Time Signal Processing with DNA," ACS Synthetic Biology, to appear, 2013.
- J. Hopfield, "Neural Networks and Physical Systems with Emergent Collective Computational Abilities," Proceedings of the National Academy of Sciences, Vol. 79. pp. 2554–2558, 1982.
- P. Senum and M. Riedel, "Rate-Independent Constructs for Chemical Computation," PLoS ONE, Vol. 6, No. 6, pp. 1–12, 2011.

