From The Circuits and Biology Lab at UMN
Jump to: navigation, search


Circuits, Computation and Biology

Semester: Spring, 2015

Time: Wed. and Fri., 2:30pm - 3:45pm. (Also offered through UNITE.)


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:


  • 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


  • Nanoscale Switching Lattices
  • Circuits with Feedback
  • Logical Computation on Random Bit Streams
  • Linear Threshold Logic


  • Conditional Permutations
  • Distributed Coordination
  • Graph-based Data Structures for Boolean Functions
  • Symbolic Boolean Data Structures
  • Neural Computation




  • 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.


  • 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 ≥ 90%, A- ≥ 85%,
B+ ≥ 80%, B ≥ 75%, B- ≥ 70%,
C+ ≥ 65%, C ≥ 60%, C- ≥ 55%,
D ≥ 40% (or having a pulse),
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.


Per UNITE policy, videos of the lectures can only be posted 10 days after the fact. Slides will be posted immediately.

  • Jan. 21, 2015: Video, Slides. Topic: Random sampling of course topics, Part I.
  • Jan. 23, 2015: Video, Slides. Topic: Random sampling of course topics, Part II.
  • Jan. 28, 2015: Video, Slides. Topic: Logical Computation on Stochastic Bit Strams, Part I.
  • Jan. 30, 2015: Video, Slides. Topic: Logical Computation on Stochastic Bit Strams, Part II.
  • Feb. 04, 2015: Video, Slides. Topic: Logical Computation on Stochastic Bit Strams, Part III.
  • Feb. 06, 2015: Video, Slides. Topic: Computing with Nanoscale Switches.
  • Feb. 11, 2015: Slides. Topic: Percolation in Nanoscale Switches.
  • Feb. 13, 2015: Slides. Topic: Chemical Kinetics.
  • Feb. 18, 2015: Slides. Topic: Stochastic Simulation of Chemical Kinetics.


Quizzes are posted on the class Moodle page.


Assigned Reading

Computing with Probabilities

Computing with Molecules

Personal tools