July 20–24, 2015
Portland, OR

Solve optimization problems using swarm intelligence

James McCaffrey (Microsoft)
5:00pm–5:40pm Wednesday, 07/22/2015
Solve Portland 252
Average rating: *****
(5.00, 3 ratings)

Prerequisite Knowledge

This session assumes attendees have intermediate or higher level coding ability with a C-family procedural language, but does not assume any knowledge of swarm intelligence.


Swarm intelligence (SI) algorithms mimic the behaviors of groups such as flocks of birds and schools of fish. This session describes in detail four major SI algorithms: amoeba method optimization, particle swam optimization, simulated bee colony optimization, and firefly algorithm optimization. Attendees will receive Python source code for each algorithm.

Although SI algorithms have been studied for years, there is little practical implementation guidance available. This session describes the scenarios when SI algorithms are useful (and scenarios when SI algorithms are not useful), carefully explains how four major SI algorithms work, and presents a production quality, working demo, coded using Python, of each algorithm. Attendees will leave this session with a clear understanding of exactly what SI algorithms are, and have the knowledge needed to apply them immediately.

Photo of James McCaffrey

James McCaffrey


James McCaffrey is a data scientist and engineer in the Advanced Development group at Microsoft Research in Redmond, Washington. James holds a doctorate from the University of Southern California, an MS in computer science from Hawaii Pacific University, a BA in mathematics from California State University at Fullerton, and a BA in psychology from the University of California at Irvine. James has authored several books including Neural Networks Succinctly and is the senior contributing editor for Microsoft MSDN Magazine.

Comments on this page are now closed.


James McCaffrey
07/24/2015 7:40am PDT

(from the speaker)
Thanks to all who attended the talk on swarm intelligence. Hope to see you all at next year’s OSCON where I’ll describe a fascinating programming paradigm based on artificial chemistry!