Lecture notes. Written from the material of MIT 8.591J 2004, licensed CC BY-NC-SA 4.0. These are notes, not a transcript: the material has been reorganised and rewritten. This adaptation carries the same licence, and the original is linked above.
8. Biological Oscillators¶
What this covers¶
This chapter asks how a feedback loop between chemical or genetic species can settle into sustained periodic behaviour — a limit cycle — instead of relaxing to a fixed steady state, and how to locate, inside a model's parameters, the exact boundary where that switch happens. It works two examples through in full: a generic two-variable feedback oscillator, and Elowitz and Leibler's repressilator, a synthetic three-gene oscillator built from three repressor proteins wired in a ring. It assumes the linear-stability toolkit from the earlier lecture on fixed points — nullclines, the Jacobian, and reading stability off its trace and determinant, or off its eigenvalues — which the outline calls back to as "section V" and does not re-derive here.
Two ways for a fixed point to lose stability¶
For a two-variable system, the eigenvalues of the Jacobian at a fixed point are
where \(\tau\) is the trace and \(\Delta\) the determinant. If \(\Delta < 0\) the eigenvalues are real with opposite sign — a saddle, never oscillatory. If \(\Delta > 0\) and \(\tau^2 < 4\Delta\) the eigenvalues are a complex-conjugate pair, and the fixed point is a spiral: stable if \(\tau < 0\), unstable if \(\tau > 0\). The transition that matters here is the second one: \(\Delta\) stays positive while \(\tau\) crosses zero, so a complex pair of eigenvalues crosses the imaginary axis together. Locally the spiral changes from decaying to growing; because trajectories in these models stay bounded, what a growing spiral is confined into is a closed orbit around it — a stable limit cycle. (This kind of transition has a name, a Hopf bifurcation, though the lecture works it out directly from the sign of \(\tau\) each time rather than naming it.) Both examples below turn on exactly this: a determinant that stays positive, and a trace — or, in the three-variable case, a pair of complex eigenvalues — that changes sign.
The two-species feedback oscillator¶
The system introduced in the previous lecture, where phase-plane pictures already showed oscillations for some parameter values, is
Nullclines and the one fixed point¶
Setting \(\dot x = 0\) gives \(y(a+x^2) = x\), and setting \(\dot y = 0\) gives \(y(a+x^2) = b\), so the two nullclines are
They share the same denominator, so where they meet, \(x = b\) regardless of the value of that denominator — the two curves cross exactly once. The fixed point is therefore
Trace, determinant, and where oscillation turns on¶
Differentiating [VII.1] and evaluating at \((x^*,y^*)\) gives the Jacobian
Its determinant collapses nicely — the \(x^*y^*\) terms cancel between the two off-diagonal products — leaving \(\Delta = a+(x^*)^2 = a+b^2\), always positive for \(a>0\). So this system can never have a saddle: the only way the fixed point can destabilize is through the trace, and by the argument above, through a Hopf bifurcation. Substituting \(x^*=b\) and \(y^*=b/(a+b^2)\) into the trace and putting it over the common denominator \(a+b^2\) gives
The fixed point is a stable spiral for \(\tau<0\) and an unstable one — hence a limit cycle — for \(\tau>0\). Because the denominator is always positive, the sign of \(\tau\) is the opposite of the sign of the numerator.
Why the boundary folds back on itself¶
Write \(u = b^2\). The numerator of [VII.5] is a quadratic in \(u\),
an upward-opening parabola, so \(N(u)<0\) — the oscillatory case — exactly for \(u\) between its two roots, when those roots are real and positive. The discriminant of \(N\) is
which is non-negative only for \(a \le \tfrac{1}{8}\). So for \(a>1/8\) the fixed point is stable for every value of \(b\): there is no oscillation available at all. For \(a \le 1/8\), the two roots
bound a finite window \(b \in (\sqrt{u_-},\sqrt{u_+})\) in which the system oscillates; outside that window, for the same \(a\), it sits at a stable fixed point. That is exactly the fold in the boundary curve the outline plots as Figure 10/11: two branches of the same curve, meeting at a cusp where the discriminant vanishes, at \(a=1/8\), \(b = \sqrt{3/8} \approx 0.61\).
Watching the limit cycle in MATLAB¶
The outline's own check is numerical. cyclefunc.m returns the right-hand side of [VII.1] as a
function of the state, and limitcycle.m integrates it with ode23 and plots the trajectory in
the \((x,y)\) plane:
% filename: cyclefunc.m
function dydt = f(t,y,flag,a,b)
dydt = [-y(1)+a*y(2)+y(1)*y(1)*y(2);
b-a*y(2)-y(1)*y(1)*y(2)];
plot(y(1),y(2),'.');
drawnow;
hold on;
axis([0 2 0 2]);
% filename: limitcycle.m
close; clear;
a=0.1; b=0.5;
options=[];
[t y]=ode23('cyclefunc',[0 50],[0.6 1.4],options,a,b);
plot(y(:,1),y(:,2));
The choice \(a=0.1\) is not arbitrary: by the window computed above, at \(a=0.1\) oscillation occurs for \(b\) between \(\sqrt{u_-}\approx 0.42\) and \(\sqrt{u_+}\approx 0.79\), and \(b=0.5\) sits inside it. Starting away from the fixed point at \((0.6, 1.4)\), the trajectory should spiral outward and settle onto a closed loop rather than a point — the limit cycle the phase-plane picture promised.
The repressilator: a synthetic three-gene oscillator¶
Elowitz and Leibler built a genetic oscillator "from scratch" in E. coli out of three repressor genes, each repressing the next around a ring:
M. B. Elowitz and S. Leibler, "A synthetic oscillatory network of transcriptional regulators," Nature 403, 335–338 (2000).
From two reactions per gene to one¶
Writing \(m_i\) for mRNA and \(p_i\) for protein concentration of gene \(i \in \{\text{lacI,tetR,cI}\}\), repressed by protein \(j \in \{\text{cI,lacI,tetR}\}\) respectively, the reactions give (see the outline's boxed derivation, not reproduced here)
If the mRNA is assumed to reach its steady state fast compared with the protein, it tracks \(m_i \to \alpha/(1+p_j^n)+\alpha_o\) instantly; substituting that into the protein equation, and measuring time in units of the protein decay rate, collapses the two-step reaction into one equation per gene:
The symmetric steady state¶
All three genes are given the same basal rate \(\alpha_o\), maximum rate \(\alpha\), and Hill coefficient \(n\), so the steady state is symmetric,
and satisfies
A circulant Jacobian¶
Linearizing [VII.7] at the symmetric fixed point, \(\dot p_i\) depends only on \(p_i\) itself (rate \(-1\)) and on the one protein that represses it, through
which is negative because \(\alpha,n,p>0\). Because the wiring is a ring, each row of the Jacobian is the previous row shifted by one — a circulant matrix:
Eigenvalues from the cube roots of unity¶
The eigenvalues solve \(\det(A-\lambda I) = 0\). Writing \(d = -1-\lambda\), the determinant of this particular circulant matrix is \(d^3 + X^3\), so
The three cube roots of \(-X^3\) are \(-X\) times the three cube roots of unity, \(1, e^{2\pi i/3}, e^{-2\pi i/3}\), giving \(d \in \{-X,\ Xe^{2\pi i/3},\ Xe^{-2\pi i/3}\}\) and, since \(\lambda=-1-d\),
The ring's symmetry is doing the work here: it is what turns a \(3\times3\) eigenvalue problem into a cube root, and it is why exactly one eigenvalue is guaranteed real.
The stability condition, and what it says biologically¶
\(\lambda_1 = X-1\) is always negative, since \(X<0\): that eigenvalue never destabilizes the fixed point. Everything rides on the complex pair. Its real part is \(-1-\tfrac12 X\), negative precisely when \(X>-2\); combined with the real eigenvalue's requirement \(X<1\) (automatic, since \(X<0\)), the fixed point is stable for
Since \(X\) is negative by [VII.11], the binding constraint is \(X>-2\), i.e.
Read biologically: \(X\) measures the local slope of the repression curve at the steady state — steeper, more cooperative repression (larger \(n\), or \(\alpha\) tuned so \(p\) sits on the steep part of the Hill function) makes \(|X|\) larger. Below the threshold in [VII.16] the ring sits at a stable fixed point; cross it, and the complex pair of eigenvalues crosses the imaginary axis together — the same Hopf mechanism as the two-species example — and the three repressor concentrations start to oscillate, chasing each other around the ring out of phase.
Sources¶
- MIT OCW 8.591J (Systems Biology, Fall 2004), lecture outline "VII Biological Oscillators"
(
lecture-outlines/10-outline.md, equations VII.1–VII.16 and the two MATLAB listingscyclefunc.m/limitcycle.m). No transcript, written notes, or problem set accompanied this outline in the material supplied. - The outline itself points to two things it does not contain: the phase-plane analysis of [VII.1] from the previous lecture ("L9_notes.pdf"), and the general 2×2 Jacobian/trace/determinant formulas it reuses as "[V.4] and [V.5]" from an earlier lecture on linear stability ("section V"). Neither was supplied here.
- The chemical-reaction derivation of the mRNA/protein equations [VII.6] is referred to in the outline as "(see Box)" — a boxed aside on the original slide that was not reconstructed in the supplied conversion.
- M. B. Elowitz and S. Leibler, "A synthetic oscillatory network of transcriptional regulators," Nature 403, 335–338 (2000) — cited by the outline for the repressilator construct; the paper itself was not supplied.
- The outline's page 2 contains a second extracted figure (a short declining curve with no visible caption or axis labels in the conversion) that could not be identified with confidence and is not used here.
- The conversion note on the source file flags every equation as unverified (the original PDF had no text layer and was read by a model). The algebra in this chapter — nullclines, the Jacobian, the trace/determinant, the cube-root eigenvalues, and the discriminant argument for the fold in Figure 10/11 — was checked step by step for internal consistency against the outline's stated results, but not against the original scanned page.
← 7. Perfect Adaptation by Model Reduction · Contents · 9. Genetic Toggle Switch and Oscillator →