Often synonymous with "random generation", procedural generation is the usage of calculations and algorithms to create content, rather than referring to preset data. The typical reason is to generate content mid-gameplay, which makes for a more unpredictable and unique experience in multiple playthroughs. Common elements that are subject to procedural generation in games include item attributes, enemy abilities, and level layouts.
Procedural generation specifically refers to the usage of algorithms to generate content, it is not necessary to be random. Pseudo-random generators with fixed seeds can be considered procedural generation despite producing identical results.