Updating an allocentric goal from lateralised egocentric visual memories.
The 4 matches · 3 of them tie a paragraph to a whole file, not to given lines: weak matches, whose lines are not tinted
- [1] § Result › A closed-loop interaction between egocentric terrestrial and allocentric celestial guidance ↔ Fig4 Paths_Sun_Mirror/model_prediction/Run_CX_Processing_mirror.m, lines 1–141 · score 0.80 · Mirrored Sun, Sun rotation, motor noise, Real ant, turn angles, onset
- [2] § Result › A closed-loop interaction between egocentric terrestrial and allocentric celestial guidance ↔ Fig3 CX_model/CX_Agent_FB_bump.m, the whole file · a weak match · score 0.67 · motor noise, familiarity signals, bump, FB, activates, cell
- [3] § Result › The CX circuitry is suited to receive lateralised input to produce goal-oriented paths ↔ Fig3 CX_model/CX_Agent_FB_bump.m, the whole file · a weak match · score 0.57 · familiarity signal, visual memories, agent, decay, CX, steers
- [4] § Result › Guidance based on memorised views involves the celestial compass ↔ Fig4 Paths_Sun_Mirror/model_prediction/CX_Agent_Ant_mirrorsun.m, the whole file · a weak match · score 0.52 · heading direction, visual memories, sun, steering, CX, motor
Paper
Loaded from Europe PMC by your browser, not stored by OSCR: doi.org · Europe PMC
The paper is loaded when this pane is shown.
The authors' code
MATLAB · 109 lines · 3.4 KB · no license · 2 matches
- function [x,y,th,turn,err_dir,straightness] =CX_Agent_FB_bump(time, mem_bias, decay_CPU4, gain, motor_noise_deg, mem_noise_deg)
- %(x,y) are the agent coordinate
- %th is the current heading direction;
- % Basic parameters
- step_length = 1;
- max_angle = 180/180*pi; %boundary condition for the oscillation Careful below of the sign if not 180 and zero!
- min_angle = 0/180*pi;
- PB_thref = 0:pi/4:2*pi-0.1;
- bump_pwr = 4; % the higher the more the winner take all, the smaller the more linear
- % PB=((pi-abs(pi2pi(PB_thref - th))).^pwr) / pi.^pwr; % example
- mem_L= mem_bias/180*pi;
- mem_R= -mem_bias/180*pi;
- mem_noise=mem_noise_deg/180*pi;
- motor_noise=motor_noise_deg/180*pi;
- % Allocation variable cumulative
- turn=nan([1,time]);
- th=nan([1,time+1]);
- x=nan([1,time+1]);
- y=nan([1,time+1]);
- % Initial conditions
- x(1)=0;
- y(1)=0;
- th(1)=pi22pi(rand*2*pi); % th is the actual agent bearing
- HDB = zeros([1,8]);
- for i=1:time %i refer to time before movement.
- % Get EPG activation (0-1)
- EPG_raw =((pi-abs(pi2pi(PB_thref - th(i)))).^bump_pwr);
- EPG = (EPG_raw / max(EPG_raw) );
- %--------------- Update CPU4 memory -------------
- % Add noise to the direction of the visual memory
- mem_Ln = mem_L + normrnd(0,mem_noise);
- mem_Rn = mem_R + normrnd(0,mem_noise);
- % Get View Familiarities (0-1)
- Fam_L = ((pi - abs(pi2pi(mem_Ln - th(i)))) /pi)^2;
- Fam_R = ((pi - abs(pi2pi(mem_Rn - th(i)))) /pi)^2;
- % fam_R =0; % Covered eye = always max unfamiliair (pi)
- % Get PFN input. Here Familiarity signal activate a shifted activation in the FB (PFN cells)
- PFN_L_input = Fam_L * circshift(EPG,-1);%-1 put the bump 45° clockwise (left), so towards the forward direction (as Fam_L is when heading Right off the nest)
- PFN_R_input = Fam_R * circshift(EPG,+1);%+1
- % Updtate allocentric goal (HdB cells) by adding the PFN cell and its decay
- HDB = PFN_L_input + PFN_R_input + HDB - HDB*decay_CPU4;
- %--------------- Steering -------------
- % Get CPU1 activation
- CPU1_L = HDB - circshift(EPG,+1);
- CPU1_R = HDB - circshift(EPG,-1);
- CPU1_L(CPU1_L<0) = 0;
- CPU1_R(CPU1_R<0) = 0;
- % Get the turning rate (mean instead of sum to stay between 0-1)
- turn_r = sum(CPU1_L); % Note that a good left match (high CPU1_L) means turn right
- turn_l = sum(CPU1_R);
- % Will need to change when the oscillator comes into play
- turn(i) = turn_l - turn_r;
- angle_modul = turn(i)*gain ;
- % boundary
- if abs(angle_modul) < min_angle; angle_modul = min_angle * sign(angle_modul); end
- if abs(angle_modul) > max_angle; angle_modul = max_angle * sign(angle_modul); end
- th(i+1)= th(i)+ angle_modul; %set the new heading
- %add some motor noise (sensory noise could be also added)
- th(i+1) = th(i+1) + normrnd(0,motor_noise);
- % % calculate the stepsize
- stepsize = step_length;
- % stepsize = (step_length* (1-fwd_modul)) / nb_step;
- % if stepsize<0 ; stepsize=0;
- % end
- %--------move to time i+1------------
- [X, Y]=pol2cart(th(i+1) , stepsize); %move along this direction
- x(i+1)= x(i)+X;
- y(i+1)= y(i)+Y;
- end
- [th_end, r_end]=cart2pol(x(end),y(end));
- err_dir=abs(th_end);
- straightness = r_end/time;
CX_Agent_FB_bump.m at commit f251e17, no license · at the source
Overview
- Centre de Recherches sur la Cognition Animale, Centre de Biologie Intégrative, Université de Toulouse, CNRS, Toulouse, France
- School of Informatics, University of Edinburgh, Edinburgh, United Kingdom
- Department of Biology, University of Graz, Graz, Austria
Abstract
Animals navigate by combining egocentric (viewpoint-dependent) and allocentric (world-referenced) spatial representations, yet how their brains achieve this integration remains unclear. Here we show how the brains of insect expert navigators, such as ants, accomplish this task. Field experiments reveal that ants recognise long-term egocentric visual memories – assumed to be encoded in the Mushroom Bodies – via a lateralized mechanism: instead of memorising views while facing their goal, ants store these memories by looking to the sides. Recognition signals inform whether to turn left or right, but do not directly drive motor responses. Instead, they are processed separately – presumably in the two brain hemispheres – and integrated to update a goal heading in an ancestral, central brain region –the central complex. This goal heading —now anchored in an allocentric frame—is then used with celestial compass cues for robust steering. Computational models based on insect neural circuits validate this two-stage process, demonstrating how noisy, viewpoint-dependent lateralized inputs are transformed into stable allocentric directional control. These findings reveal how compact brains leverage bilateral processing to combine spatial representations for visual navigation.
Reproduced under the paper's license (CC BY), from the paper cited above.
Repository
Its files are read in the Code ↔ Paper reader above, with 4 matches between paragraphs and lines of code.
antnavteam/lateralised_visual_memories
f251e17ac9f4117f39df2a9af0660ce9e802f268, 6 November 2025Availability: 1 check, the latest on 30 September 2026: the link answers
- 30 September 2026: the link answers
29 files
- Fig1 Trackball_all_directions
/ , MATLAB, 476 linesRun_Cata_Analysis.m - Fig1 Trackball_all_directions
/ , MATLAB, 410 linesRun_Myrmecia_Analysis.m - Fig1 Trackball_all_directions
/ , MATLAB, 1 linefastsmooth.m - Fig1 Trackball_all_directions
/ , MATLAB, 2 linespi2pi.m - Fig1 Trackball_all_directions
/ , MATLAB, 47 linesrotation_plotter.m - Fig2 Trackball_Sun_mirror/
Analysis_mirror.R , R, 183 lines - Fig2 Trackball_Sun_mirror/
fastsmooth.m , MATLAB, 1 line - Fig2 Trackball_Sun_mirror/
isEven.m , MATLAB, 25 lines - Fig2 Trackball_Sun_mirror/
mirror_dynamics.m , MATLAB, 266 lines - Fig2 Trackball_Sun_mirror/
pi2pi.m , MATLAB, 2 lines - Fig2 Trackball_Sun_mirror/
plotSpread.m , MATLAB, 588 lines - Fig2 Trackball_Sun_mirror/
repeatEntries.m , MATLAB, 131 lines - Fig3 CX_model/
CX_Agent_Ant.m , MATLAB, 120 lines - Fig3 CX_model/
CX_Agent_FB_bump.m , MATLAB, 109 lines, 2 matches - Fig4 Paths_Sun_Mirror/
Run_Mirror_paths_analysi , MATLAB, 177 liness.m - Fig4 Paths_Sun_Mirror/
circ_r.m , MATLAB, 62 lines - Fig4 Paths_Sun_Mirror/
fillpath.m , MATLAB, 47 lines - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 127 lines, 1 matchCX_Agent_Ant_mirrorsun.m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 207 lines, 1 matchRun_CX_Processing_mirror .m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 62 linescirc_r.m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 47 linesfillpath.m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 8 linespi22pi.m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 3 linespi2pi.m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 16 linespoloarplot2rose.m - Fig4 Paths_Sun_Mirror/
model_prediction/ , MATLAB, 65 linessinuosity.m - Fig4 Paths_Sun_Mirror/
pi2pi.m , MATLAB, 3 lines - Fig4 Paths_Sun_Mirror/
projective_transform_pat , MATLAB, 141 lineshs.m - Fig4 Paths_Sun_Mirror/
sinuosity.m , MATLAB, 65 lines - README.md, Text, 10 lines
Code availability
Codes to analyse data and run simulations have been deposited on GitHub: https://
Reproduced under the paper's license (CC BY), from the paper cited above.
Tracing map
Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.
What the map holds:
- 1 repository of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
- 28 scripts, each with its path and the digest of its content;
- 4 matches between paragraphs of the paper and lines of the code (method lexical-v1);
- neither the text of the paper nor the code itself.
Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.
Data
No dataset and no data link were found in the paper.
Data Availability Statement
The data generated in this study have been deposited on GitHub: https://
Codes to analyse data and run simulations have been deposited on GitHub: https://
Reproduced under the paper's license (CC BY), from the paper cited above.
Versions
The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.
Version 1, 30 September 2026: the first record
Recorded: type, language, journal, volume, issue, pages, dates, 4 authors, 2 keywords, 10 MeSH terms, 1 funder, 93 references.
Cite
This paper
Wystrach, A., Le Moël, F., Clement, L., & Schwarz, S. (2026). Updating an allocentric goal from lateralised egocentric visual memories. Nature communications, 17(1), 3594. https://
BibTeX
@article{wystrach2026upd
author = {Wystrach, Antoine and Le Moël, Florent and Clement, Leo and Schwarz, Sebastian},
title = {{Updating an allocentric goal from lateralised egocentric visual memories}},
journal = {Nature communications},
year = {2026},
month = mar,
volume = {17},
number = {1},
pages = {3594},
publisher = {Nature Publishing Group},
issn = {2041-1723},
doi = {10.1038/
url = {https://
pmid = {41792124},
pmcid = {PMC13096645}
}
RIS
TY - JOUR
AU - Wystrach, Antoine
AU - Le Moël, Florent
AU - Clement, Leo
AU - Schwarz, Sebastian
TI - Updating an allocentric goal from lateralised egocentric visual memories
T2 - Nature communications
J2 - Nat Commun
PY - 2026
DA - 2026/
VL - 17
IS - 1
SP - 3594
SN - 2041-1723
PB - Nature Publishing Group
DO - 10.1038/
UR - https://
LA - en
ER -
CSL-JSON
{
"id": "10.1038/
"type": "article-journal",
"title": "Updating an allocentric goal from lateralised egocentric visual memories",
"container-title": "Nature communications",
"author": [
{
"family": "Wystrach",
"given": "Antoine"
},
{
"family": "Le Moël",
"given": "Florent"
},
{
"family": "Clement",
"given": "Leo"
},
{
"family": "Schwarz",
"given": "Sebastian"
}
],
"container-title-short":
"volume": "17",
"issue": "1",
"page": "3594",
"DOI": "10.1038/
"PMID": "41792124",
"PMCID": "PMC13096645",
"ISSN": "2041-1723",
"publisher": "Nature Publishing Group",
"URL": "https://
"language": "en",
"issued": {
"date-parts": [
[
2026,
3,
6
]
]
}
}
The tracing map gets a citation of its own once an author has validated it and it has a DOI.
Similar papers
The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.
- [1] doi:10.7554/elife.107589 [code]
- Distinct evolutionary trajectories of two integration centres, the central complex and mushroom bodies, across Heliconiini butterflies.Journal: eLifeIn common: other, 19 references
- [2] doi:10.1038/s41586-026-10827-7 [code]
- A vector-based strategy for olfactory navigation in Drosophila.Journal: NatureIn common: cognitive, 10 references
- [3] doi:10.1038/s41467-026-75945-2 [code]
- Neural dynamics for working memory and evidence integration during olfactory navigation in Drosophila.Journal: Nature communicationsIn common: Statistics and Machine Learning Toolbox, cognitive, 7 references
- [4] doi:10.1126/sciadv.aeh7220 [code]
- Central complex representations of self-movement are sufficient to compute wind direction in flight.Journal: Science advancesIn common: CircStat, Statistics and Machine Learning Toolbox, 6 references
- [5] doi:10.1016/j.isci.2026.116039 [code]
- Caste- and sex-specific differential investment in brain regions of Australian ants.Journal: iScienceIn common: other, 7 references
- [6] doi:10.3389/fnsys.2026.1822122 [code]
- Convergence-divergence circuits for multimodal integration of innate and learned opponent valences.Journal: Frontiers in systems neuroscienceIn common: 6 references
- [7] doi:10.1038/s41586-026-10735-w [code]
- Distributed control circuits across a brain-and-cord connectome.Journal: NatureIn common: ggplot2, 5 references
- [8] doi:10.1073/pnas.2609141123
- Odor tracking in flying &
lt;i& gt;Drosophila& lt;/ i& gt; requires visual reafference and compass neurons. Journal: Proceedings of the National Academy of Sciences of the United States of AmericaIn common: cognitive, 5 references - [9] doi:10.1371/journal.pcbi.1014577 [code]
- Combining sampling and attractor dynamics in spiking models of head direction systems.Journal: PLoS computational biologyIn common: 4 references
- [10] doi:10.1038/s41593-026-02257-5 [code]
- Neural sequences underlying directed turning in Caenorhabditis elegans.Journal: Nature neuroscienceIn common: 4 references
Contribute
The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.
Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.
Claim this paper
Correct its record
Say what each link of this record is, remove the ones that are not the paper's, add the ones that are missing. The correction becomes a new version of the record, in its Versions section.
Validate its tracing map
You validate the map as this page shows it: 1 repository of the authors' code, each at its verified commit and with its license, 28 scripts, and 4 matches between paragraphs and code (see the Code and Map sections). It then receives a DOI on Zenodo, with you (your ORCID iD) and OSCR as its creators; the code itself is not deposited.
The map's fingerprint: sha256:634091ada2d0a6fa…
Add the badge to its README
The badge links the code to this page. Copy one of these into the README of the paper's code: only you decide where it goes, and nothing is changed for you.
Markdown
[, paste the snippet at the top, then “Commit changes…” and, to review it first, “Create a new branch and start a pull request”. You open the pull request; OSCR asks for no permission.
Request its removal
To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).
Discussion, reproductions, activity
Discussion: questions and error reports about this paper and its code, from signed-in readers and its authors. It opens with sign-in.
Reproductions: reports from readers who ran the authors' code: what they reproduced, with which environment, commit and data. It opens with sign-in.
Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.
