Bruce Shepherd is a Professor in the Department of Computer Science, University of British Columbia. He is also a Distinguished Scholar in UBC's Sauder School of Management.
Dr. Shepherd completed a BSc in Computer Science and Mathematics at the University of Victoria and then studied at the Department of Combinatorics and Optimization, University of Waterloo where he earned his MSc under the supervision of Dan Younger, and Ph.D. under the supervision of Bill Pulleyblank. During his doctoral work he also produced train scheduling software for the meet-pass problem with Pulleyblank for Canadian Pacific Railway. He went on to hold a NATO Postdoctoral Fellowship working with Lex Schrijver in CWI, Amsterdam and a Von Humboldt Fellowship working with Bernhard Korte in Bonn.
His first academic appointment in 1992 was joint between Mathematics and Operational Research at the London School of Economics. During that time he also performed consulting in optimization for firms such as British Telecom, Rio-Tinto, and Reuters. He was also co-director of the LSE Centre for Discrete and Applicable Mathematics. In 1997 he joined Bell Laboratories, Murray Hill, NJ where he designed algorithms and produced software in areas such as optical network design, real-time network management, scheduling and internet measurement. He also maintained an interest in the fundamental theory behind these problems including his work with Tim Griffin and Gordon Wilfong which formulated a graph theory model to analyze the world's defacto interdomain routing protocol BGP. Between 2007 and 2017 he was a member of the Department of Mathematics and Statistics, McGill University where he was a James McGill Professor (internal equivalent of a Tier 1 Canada Research Chair). He was also an associate member of McGill's School of Computer Science.
Dr. Shepherd has been on the editorial boards of the SIAM-MPS Series in Optimization, Math Programming Series B, and Operations Research Letters. He served as co-editor of Mathematical Programming Series A from 2007-2016 and is presently an area editor for Mathematical Programming Computation. He has spent leaves at the Theory Group of Microsoft Research, and Computer Science, University of Washington (2011-12) and the Sauder School of Management, UBC (2014), as well as long-term visits to the Fields Institute, University of Bonn, DIMACS, and University of Tokyo.