About me
I am a Ph.D. student studying combinatorics and optimization at the University of Waterloo under the supervision of
Dr. Ricardo Fukasawa.
Previously I completed a M.Sc. in computer science at the University of British Columbia,
under the supervision of
Dr. Bruce Shepherd.
On the side, I make open source software for digitally processing audio and generating algorithmic music and visuals
under the alias
byte.observer
. When not in front of a computer or whiteboard
I can usually be found rock climbing, foraging for mushrooms, cycling, snowboarding, hiking or cooking.
Academic profiles:
google scholar |
github |
kattis problems
Other profiles:
bandcamp |
soundcloud |
youtube |
shadertoy |
pouet |
demozoo |
inaturalist
Education
- Ph.D. in Combinatorics and Optimization at University of Waterloo. Funded by QEII-GSST (May 2022 - April 2023) and NSERC CGS-D (May 2023 - April 2026).
- M.Sc. in Computer Science at University of British Columbia. Funded by NSERC CGS-M. (2019-2021)
- B.Sc. Honors in Computing Science at University of Alberta (2014-2019)
Papers
- 2024: Interdiction of Minimum Spanning Trees and Other Matroid Bases.
Noah Weninger and Ricardo Fukasawa.
Awarded Most Popular Poster and Honorable Mention for Best Poster at Mixed Integer Programming Workshop 2024.
preprint |
pdf |
code
- 2023: A Knapsack Intersection Hierarchy.
Adam Jozefiak, F. Bruce Shepherd, Noah Weninger.
Full version published in Operations Research Letters.
journal article |
preprint
- 2022: A Fast Combinatorial Algorithm for the Bilevel Knapsack Problem with Interdiction Constraints.
Noah Weninger and Ricardo Fukasawa.
Awarded Best Poster and Most Popular Poster at Mixed Integer Programming Workshop 2023.
In proceedings of IPCO 2023; full version published in Mathematical Programming B.
journal article (full length) |
conference version (short) |
preprint |
pdf |
code
- 2021: Approximate Extended Formulations for Multidimensional Knapsack and the Unsplittable Flow Problem on Trees (M.Sc. Thesis).
Noah Weninger.
publication
- 2018: Rendering Impulse Responses for Implicit Surfaces.
Noah Weninger.
pdf |
code
-
2018: Training Deep Convolutional Networks with Unlimited Synthesis of Musical Examples
for Multiple Instrument Recognition.
Rameel Sethi, Noah Weninger, Abram Hindle, Vadim Bulitko, Michael Frishkopf.
15th Sound and Music Computing Conference.
pdf
- 2017: Exploring Positional Linear Go.
Noah Weninger and Ryan Hayward.
15th International Conference on Advances in Computer Games.
conference paper |
pdf |
code
- 2016: ScPy: A SuperCollider Extension for Perfoming Numerical Computation via Embedded Python.
Noah Weninger and Abram Hindle.
pdf |
code
Competitive programming problems
After competing for many years I was given the opportunity
(thanks
Zac!)
to create original problems for a programming contest. Since then I've set problems for many contests.
Most of my problems are available on
Open Kattis, where
anyone can try them out.
- "Candy Store", "Triangle Trees", and "Rerouting Rapids" from the 2024 UAPC
- "Very Important Edge" from the 2023 North American Qualifier (NAQ)
- "LCM Thief" from the 2023 CCPC
- "Precarious Stacks" from the 2023 UAPC
- "Long Walk", "Maximum Fix", and "Undead or Alive" from the 2022 ACPC
- Problems on the 2021 and 2022 Iverson Exam
- "Similar Spacing" and "Travelling Caterpillar" from the 2022 UAPC
- "Zoom," "Successful Zoom," "Solution Pollution," and "Tree Canopy Graphs" from the 2022 CCPC
- "Wonky Pizza," "Beep Code," "Compression," and "Swapping Places" from the 2021 ACPC
- "The Council" and "Which Bits?" from the 2021 CCPC
- "Monochromatic Minesweeper" and "Wrapping Trees" from the 2020 ACPC
- "Product Inspector" and "Lockpick" from the 2019 UAPC
I've also acted as a judge (i.e., helping out but without proposing any problems myself) in the 2022 and 2023 ICPC Rocky Mountain Regional Contest.