SummaryModern satellite communication systems are designed to serve dispersed users with changing operational requirements. Allocating resources to meet these requirements becomes highly complex when the size, location, and allocated frequency of satellite beams are flexible. We developed solution techniques that generate feasible beam patterns and frequency allocations to maximize the total demand met across all users. In our approach, an integer program selects an optimal set of beams from a heuristically generated pool of feasible candidate beams. The challenge is in how to efficiently build a pool of good quality candidate beams from exponentially many possible solutions. An innovative column generation‐style heuristic to generate mathematically justifiable beams is presented to address this challenge. We also derived two other heuristic candidate beam generation algorithms to compare and contrast performance and robustness characteristics of different algorithmic choices. We tested the performance of our three new approaches on 12 operational instances that vary in user distribution, user numbers, and demand distribution. While the methods performed differently under varying operational scenarios, the column generation‐based methods provided the best trade‐off between computation time and solution quality in most cases. We further tested our two best performing algorithms for scalability. Our column generation‐based methods were able to provide good quality solutions with up to 400 beams and 5,000 users. Our work provides valuable insights for real‐life implementation: an end‐user of our system can select the solution approach based on their business need, computational (time) budget, and the desired solution quality.