Gordon starts not with code, but with why. He distinguishes between:
He introduces the concept of the "simulation clock" and the "event-scheduling approach." For a student in 2025, reading Gordon’s explanation of time management in a simulation is like watching a master watchmaker explain gears—it reveals the fundamental mechanics that modern GUIs hide from you.
Let’s translate a classic Gordon problem (A single-server queue) into modern Python using SimPy, showing why the PDF is still useful.
Gordon’s GPSS logic:
GENERATE 10,5 ; Customers arrive every 10±5 min
QUEUE LINE ; Enter the waiting line
SEIZE TELLER ; Take the teller if free
DEPART LINE ; Leave the line
ADVANCE 12,4 ; Service takes 12±4 min
RELEASE TELLER ; Free the teller
TERMINATE ; Customer leaves
Modern Python (SimPy):
import simpy import randomdef customer(env, name, server): print(f'name arrives at env.now:.2f') with server.request() as req: yield req # This is the SEIZE (and implicit QUEUE) print(f'name starts service at env.now:.2f') service_time = random.uniform(8, 16) # ADVANCE 12,4 range yield env.timeout(service_time) print(f'name leaves at env.now:.2f') # RELEASE system simulation geoffrey gordon pdf
env = simpy.Environment() server = simpy.Resource(env, capacity=1) for i in range(10): env.process(customer(env, f'Customer i', server)) yield env.timeout(random.expovariate(0.1)) # GENERATE
env.run()
If you understand Gordon’s GPSS block diagram, you can write SimPy code in your sleep. That is the power of the "System Simulation" foundation.
Ask any simulation engineer about their first project, and many will mention waiting lines (queues). Gordon’s treatment of single-server and multi-server queues remains the gold standard. Why? Because the core challenges haven’t changed: Gordon starts not with code, but with why
Gordon’s GPSS block diagrams—those deceptively simple boxes and arrows—taught a generation to think in events, not seconds.
Even today’s tools (AnyLogic, Simio, Python’s SimPy) inherit Gordon’s conceptual DNA. When you declare a Resource or Process in modern code, you’re speaking a dialect he helped invent.
If you can’t find a legal copy of System Simulation, don’t despair. The spirit of Gordon lives in:
And if you’re determined to read Gordon firsthand, check WorldCat.org for university library copies. Many still have the 1978 second edition on their shelves, gathering dust—and waiting for a new generation to discover it.
In summary: Geoffrey Gordon’s System Simulation is more than a historical artifact. It’s the Rosetta Stone of discrete-event modeling. And while its examples may have aged, its principles remain as solid as a queue of customers waiting for a single server. He introduces the concept of the "simulation clock"
Need help finding a legitimate copy? Check your university library, the Internet Archive’s controlled digital lending, or used bookstores. Respect copyright, honor the legacy—and then go simulate something.
Why should a modern engineer or data analyst spend time with a 50-year-old PDF?
1. It teaches "First Principles" thinking. Modern simulation tools (Simulink, AnyLogic, Arena) hide the math behind a GUI. They let you drag and drop blocks until something works. Gordon forces you to understand the probability distributions and the time-stepping algorithms underneath. If you want to debug a simulation that isn't working, you need Gordon’s level of understanding.
2. The persistence of Queueing Theory. We live in an economy of queues. Uber rides, Netflix streaming, AWS lambda invocations, and call centers. The math describing how these lines form and clear is perfectly articulated in System Simulation.
3. The limitations of AI. We are currently entering an era where we believe AI can simulate anything. Gordon’s book serves as a reality check. He meticulously points out where models fail, where the "Garbage In, Garbage Out" principle applies, and how sensitive a model is to initial conditions. He teaches humility in the face of complexity—a lesson the tech industry often forgets.
Most PDF versions contain:
For the data scientists reading: this is the history lesson. Gordon dedicates significant space to Monte Carlo methods—using random sampling to solve deterministic problems.