Understanding Center-Star Alignment

Prev Next

Center-star is Ideation's own aligner. It runs on its own for every dataset at import, and again whenever you choose New Alignment → Align with center-star. This page explains how it works: how the reference is picked, how monomer substitutions are scored, and how gap costs are decided.

You don't need any of this to use a center-star alignment. Read it when you want to know why a computed frame looks the way it does — why it has the number of columns it has, why a particular residue lines up where it does, or why two peptides you expected to match don't.

For how center-star compares with PepSeA and with importing a file, see Understanding Peptide Alignment. For the step-by-step instructions, see How to Align Peptides.

The center-star approach

Rather than aligning every peptide against every other one at once, center-star aligns each peptide against a single shared reference — the "centre" of the star — and then stacks those pairwise results into one rectangular frame.

This is deliberately a modest method. The more elaborate alternatives — progressive or iterative alignment, which repeatedly merge groups of sequences together, as PepSeA does — generally produce a tighter frame, at a much higher runtime. The centre-star compromise gets most of the quality for a fraction of the work, needs no similarity matrix, and asks you nothing.

It also makes the result easier to reason about. Each peptide is placed by one comparison against the centre, so there is no sequence of merges whose order could change the outcome: add a peptide to the dataset and the existing peptides keep the placements they had, as long as the centre and the gap policy stay the same.

Choosing the centre

The centre is the dataset's longest backbone — deliberately not the reference peptide you picked for the SAR analysis.

Those two answer different questions. The SAR reference is your baseline for comparison, chosen because it is chemically interesting. The centre only has to be a good scaffold to hang everything else off, and what makes a good scaffold is length: every residue a peptide holds beyond the centre has to become an extra column for everyone, so a short centre widens the frame for the whole dataset and fills it with gaps.

Scoring a substitution

When the aligner compares two monomers, it scores them by how conservative the swap is, rather than as a plain same/different test:

Comparison Treated as
The same monomer Best possible match
Two monomers sharing the same natural analog Close match
Two monomers in the same physicochemical family (polar, hydrophobic, acidic, basic, sulfur) Neutral
Anything else Mismatch

Graded scoring is what lets non-natural monomers align sensibly. A modified residue inherits the natural analog and family of the amino acid it is based on, so aMeLys lines up with K instead of counting as unrelated to everything — which is the behaviour you want in a series built by decorating a natural sequence.

A monomer whose natural analog cannot be determined falls back to matching its own symbol exactly. It still aligns, just only with itself.

Gap handling

Pairs of sequences are aligned with the classic Needleman–Wunsch algorithm using affine gap costs: opening a gap costs more than extending one, so a single long insertion is preferred over several scattered ones. That matches how peptide series are usually built — a run of residues added or removed together, rather than sporadic single-residue holes.

The gap price itself is derived from your dataset rather than fixed, because the right value genuinely differs by series:

  • Across peptides that are all the same length, any gap is an artefact, and it has to be charged heavily or the aligner will invent gaps that mean nothing.
  • Across a series carrying genuine insertions and deletions, that same heavy charge would refuse to open the gaps the chemistry actually calls for, and force non-homologous residues to share columns instead.

Ideation measures the spread of backbone lengths in the dataset and interpolates between a strict and a permissive charge accordingly — uniform-length series get the strict end, heterogeneous ones the permissive end.

One rule holds either way: opening a gap always costs more than the worst possible substitution. Given the choice, the aligner would rather pair two unrelated residues than insert a gap. That keeps computed frames as narrow as the data allows.

Branches

The backbone is aligned first. Side chains attached at the same backbone column are then aligned together in their own small center-star — see Understanding Peptide Alignment for how branches are grouped, which is the same for both computed methods.

Gap costs are derived from backbone lengths only. The backbone frame is the one that has to be right, and branches are short enough that their own length spread is noise by comparison; reusing the backbone's policy also means one dataset yields one consistent set of rules.

What to keep in mind when reading a center-star alignment

  • Because it is a star rather than a progressive alignment, insertions contributed by two different peptides at the same point are stacked into a shared block but are not aligned against each other. If two analogs each add a residue after position 10, they will occupy that block but not necessarily the same column within it.
  • Peptides with unresolved monomers are still aligned. A monomer's symbol is known even when its structure is not, and the symbol is all the aligner needs.
  • A computed alignment is a starting point, not a verdict. If it groups something wrongly for your purposes, open it in the alignment editor and adjust it, try PepSeA, or import a curated alignment instead.

When it fails

A center-star alignment that cannot run ends as a Failed row in the alignment list, with the reason "This dataset has no peptide sequence this aligner can align." That happens when:

  • no peptide carries a HELM sequence, so there are no monomer sequences to align;
  • the dataset holds more than 5,000 peptides — the method's cost grows with both the number of peptides and their length, and past that point it is not run.

A failed alignment never fails the import: the dataset is ready either way. Use PepSeA, or import an alignment from a file, instead.

Where to go next