About me
I am a Ph.D. student studying combinatorics and optimization at the University of Waterloo under the supervision of Dr. Ricardo Fukasawa.
I recently completed a M.Sc. in computer science at the University of British Columbia,
where I was fortunate to be supervised by
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.
My profiles:
github |
bandcamp |
soundcloud |
youtube |
shadertoy |
kattis profile |
kattis problems |
google scholar
Research interests
- combinatorial optimization
- discrete math
- algorithmic music and sound synthesis
- computational complexity
- proof theory
- combinatorial game theory
Education
- 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
- 2022: A Knapsack Intersection Hierarchy Applied to All-or-Nothing Flow in Trees
arXiv
Adam Jozefiak, F. Bruce Shepherd, Noah Weninger
- 2021: Approximate Extended Formulations for Multidimensional Knapsack and the Unsplittable Flow Problem on Trees (M.Sc. Thesis).
pub
Noah Weninger.
- 2018: Rendering Impulse Responses for Implicit Surfaces.
pdf
code
Noah Weninger.
-
2018: Training Deep Convolutional Networks with Unlimited Synthesis of Musical Examples
for Multiple Instrument Recognition.
pdf
Rameel Sethi, Noah Weninger, Abram Hindle, Vadim Bulitko.
15th Sound and Music Computing Conference.
- 2017: Exploring Positional Linear Go.
pdf
pub
code
Noah Weninger and Ryan Hayward.
15th International Conference on Advances in Computer Games.
- 2016: ScPy: A SuperCollider Extension for Perfoming Numerical Computation via Embedded Python.
pdf
code
Noah Weninger and Abram Hindle.
Presentations
- 03/2019: Festival for Undergraduate Research and Creative Activities (FURCA). Edmonton, Alberta, Canada.
Topic: Training Deep Convolutional Networks with Unlimited Synthesis of Musical Examples for Multiple Instrument Recognition.
- 10/2018: Society for Ethnomusicology (SEM) General Meeting. Albuquerque, New Mexico.
Topic: Training Deep Convolutional Networks with Unlimited Synthesis of Musical Examples for Multiple Instrument Recognition.
- 10/2017: Centre for Advanced Studies Conference (CASCON). Markham, Ontario, Canada.
Topic: work done on OpenJ9 JIT-as-a-Service while interning at IBM.
- 06/2017: Programming Language Design and Implementation (PLDI), WALA Hackathon.
Barcelona, Spain.
Topic: static analysis of Swift programs.
- 07/2017: Advances in Computer Games (ACG).
Leiden, The Netherlands.
Topic: Exploring Positional Linear Go.
Participation
- 01/2021: attended the 2021 ACM-SIAM Symposium on Discrete Algorithms (SODA21)
- 11/2020: attended the Fundamentals of Computer Science (FOCS) online symposium.
- 10/2019: attended the CRM/DIMACS Workshop on Mixed-Integer Nonlinear Programming in Montreal, Quebec, Canada.
- 09/2019: attended the West Coast Optimization Meeting in Vancouver, Canada.
- 08/2019: attended WADS, the Algorithms and Data Structures Symposium in Edmonton, Alberta, Canada as a student volunteer.
- 03/2019: competed in the University of Alberta Programming Contest in Edmonton, Alberta. Got 1st place! (or was it 6th place? ;)
- 10/2018: attended the Society for Ethnomusicology (SEM) General Meeting in Albequerque, New Mexico, USA.
- 10/2018: competed in the Alberta Collegiate Programming Contest in Edmonton, Alberta. Got 2nd place!
- 11/2017: competed in the Rocky Mountain Regional ACM Programming Contest in Edmonton, Alberta. Got 3rd place!
- 10/2017: attended the Centre for Advanced Studies Conference (CASCON) in Markham, Ontario, Canada.
- 07/2017: attended Advances in Computer Games (ACG) in Leiden, The Netherlands.
- 06/2017: attended Programming Language Design and Implementation (PLDI) in Barcelona, Spain as a student volunteer.
- 05/2017: competed in the ACM International Collegiate Programming Contest (ICPC) World Finals in Rapid City, USA. Got honorable mention!
- 03/2017: competed in the University of Alberta Programming Contest in Edmonton, Alberta. Got 1st place!
- 11/2016: competed in the Rocky Mountain Regional ACM Programming Contest in Edmonton, Alberta. Got 1st place!
- 10/2016: competed in the Alberta Collegiate Programming Contest in Edmonton, Alberta. Got 3rd place!
- 07/2016: attended Advances in Computer Games (ACG) in Leiden, The Netherlands.
- 05/2014: competed in the Iverson Computing Science Exam in Edmonton, Alberta. Got 1st place!
Competitive programming problems
After competing for many years I was given the opportunity
(thanks
Zac!)
to create original problems for a programming contest. It turns out that
I enjoy making problems even more than just solving them!
Most of my problems are available on
Open Kattis, where
anyone can try them out.
- Problems "Zoom," "Successful Zoom," "Solution Pollution," and "Tree Canopy Graphs" from the 2022 CCPC
- Problems "Wonky Pizza," "Beep Code," "Compression," and "Swapping Places" from the 2021 ACPC
- Problems "The Council" and "Which Bits?" from the 2021 CCPC
- Problems "Monochromatic Minesweeper" and "Wrapping Trees" from the 2020 ACPC
- Problems "Product Inspector" and "Lockpick" from the 2019 UAPC