BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//programme.europython.eu//europython-2026//talk//SASJQU
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-europython-2026-SASJQU@programme.europython.eu
DTSTART;TZID=CET:20260716T145500
DTEND;TZID=CET:20260716T152500
DESCRIPTION:Coordinating a swarm of drones to autonomously allocate tasks\,
 \nbid on them in real time\, and execute multi-robot formations\nsounds li
 ke science fiction — but it is entirely possible\nwith Python\, a handfu
 l of threading primitives\, and ROS2's\nMultiThreadedExecutor.\n\nThis tal
 k walks through the concrete implementation challenges\nof building a dece
 ntralised auction-based task allocation\nsystem for a swarm of four Crazyf
 lie UAVs. The focus is on\na problem that trips up almost every robotics e
 ngineer who\ngraduates from tutorials to real deployments: what happens\nw
 hen your system has to wait for external\, asynchronous\nevents — bids f
 rom four robots\, assignment confirmations\,\nformation completion signals
  — without blocking the entire\nnode and without introducing race condit
 ions or deadlocks?\n\nWe will explore how Python's threading.Event and Loc
 k\nprimitives were used alongside ROS2's MultiThreadedExecutor\nand Reentr
 antCallbackGroup to implement a synchronized\nbid-collation protocol\, a g
 lobal assignment barrier\, and\na concurrent multi-goal formation controll
 er — all running\nin parallel on a single laptop while communicating wit
 h\nphysical drones over radio.\n\nYou will leave with a clear\, transferab
 le mental model\nfor combining Python threading with ROS2 callback groups\
 ,\npractical patterns for synchronizing distributed asynchronous\nevents i
 n real-time systems\, and an honest account of what\nbreaks in the real wo
 rld (and why).
DTSTAMP:20260524T131059Z
LOCATION:Chamber Hall B (S3B)
SUMMARY:Flying in Formation - with Python Threading and ROS2 Parallelism - 
 DEBORAH E DANJUMA
URL:https://programme.europython.eu/europython-2026/talk/SASJQU/
END:VEVENT
END:VCALENDAR
