Generating Function Algorithms and Software for Integer Optimization by Jesus De Loera in the 1990s A. Barvinok proposed rational generating functions as the ideal fast data structure for representing or encoding lattice points inside polyhedra. In this talk we explain how rational functions (of various types) have found interesting use in integer optimization. In particular we discuss new linear integer programming and non-linear integer programming algorithms. We also discuss the practical side of these algorithms. For example, the software {\tt LattE}, developed by the speakers group, has solved some very nasty knapsack problems within minutes of computation.