AI Adoption GuideConstructionPlan
CPM Schedule Generation from Scope
ML generates schedule logic and activity durations from scope and WBS, referencing historical project benchmarks. (e.g., Alice Technologies)
Construction processBidAwardPlanMobilizeBuildInspectHandoverClose
By Don, DoneThat’s AI coach · updated
Accept a cited draft, not an issued programme
A usable result is a draft CPM in which every activity, relationship, and duration suggestion cites a scope line, a WBS node, or a named historical prior. The planner still owns the network. Historical benchmarks explain why a duration was proposed. They do not prove that duration for this job. Do not publish an unsigned model draft as the contract programme.
Vendors in this class, including Alice Technologies and Autodesk, sell software used on this problem. Treat any generated logic and duration suggestions as a first pass for project controls. Rankings among those tools do not change the rule: the programme is issued only after a planner has edited the logic, rejected bad priors, and signed.
The quality bar is checkability. If a suggested activity cannot be traced to a scope or WBS line, drop it or rewrite it until it can. If a duration has no cited prior and no method (quantity, production assumption, calendar), it is a guess. Guesses do not belong on a baseline.
Map scope and WBS into named activities
Start from the documents the job already has: the contract scope, the specification, the drawings, and the WBS used for cost and packaging. Do not start from a blank activity list and hope the model invents a complete work breakdown.
For each WBS node that will be scheduled, require a one-to-many map into activities at the level the team will update. Package-level WBS nodes are usually too coarse for a CPM. Activity names should say the work, the location or zone, and the responsible trade or package. Avoid dumping a whole specification section into a single bar.
Cite the source on the activity. A cite is a pointer a planner can open: a WBS code, a spec clause, a drawing number, or a scope paragraph. Cites are how the draft stays auditable when someone later asks why an activity exists.
Split when the documents split. If the WBS says Superstructure and the spec and drawings split core, typical floors, and roof plant, the network needs those splits. A model that collapses them into one package activity will hide interfaces, calendars, and access constraints that actually drive the job.
Keep calendars and constraints out of activity names. Capture weather, union, or permit calendars as calendars. Capture access, crane, and power as constraints or predecessor activities, not as adjectives in the name.
Do not let the model invent work that is not in scope. If it proposes activities for fit-out packages that are in a later phase or under a different contract, park them off the issued programme or mark them as excluded with a cite to the scope boundary.
When historical jobs inform the map, retrieve comparable breakdowns with historical bid RAG retrieval only as a pattern library. A past WBS is a prior for structure, not a substitute for this contract.
Propose logic and durations as checkable priors
Logic first, then duration. A duration on an activity with the wrong predecessors is a false remaining-duration story.
For each activity, require at least one predecessor that is physically or contractually necessary, or an explicit start constraint with a cite (notice to proceed, access date, permit). Prefer finish-to-start for handoffs you can walk on site. Use start-to-start or finish-to-finish only when the method statement actually overlaps the work, and record the lag with a reason.
Every proposed relationship should cite why it exists: a trade handoff in the spec, a pour-and-cure sequence on the drawings, a procurement lead in the package scope, or a site-access rule. Missing cites are missing arguments.
Durations are priors. A historical benchmark from a similar building type, similar production system, and similar constraints can seed remaining duration. A benchmark from a dissimilar job cannot. Do not copy a steel-frame typical-floor duration onto post-tensioned concrete, or a rural-pad duration onto a tight urban plot with one crane. State the prior (which job family, which production system) and the method for this job (quantity and production assumption, or planner judgement). If the model cannot name the prior, the planner supplies the duration or the activity stays out of the draft.
Never invent a number to fill a blank. An empty duration is honest. A fabricated duration becomes a contractual commitment the moment the programme is issued.
After the first network exists, scan it the way you would a junior planner's first pass: open-ended activities, missing successors on work that must hand off, negative float created by constraints the job does not have, and a critical path that does not run through the known bottleneck.
Walk one draft the way a planner would
A planner is building the first CPM for a mid-rise residential tower on a constrained urban plot. The cost WBS holds a single Superstructure package. The specification and structural drawings split the work into core, typical floors, and roof plant. The model maps Superstructure to a short list of activities and proposes finish-to-start links from core complete into the typical-floor cycle.
Two failures show up on a walk-through, before any duration is treated as real.
First, tower-crane erection is absent as a predecessor to the first elevated pours. The plot has no practical mobile-crane alternative for those pours. In the draft, typical-floor work can start as soon as the core activity finishes. That missing predecessor hides the critical path. The true driver is crane jump, certification, and then floor cycles. A programme issued in that state would report float on work that cannot start.
Second, the typical-floor duration is seeded from a historical steel-frame job in the same city. This job is post-tensioned concrete with a different pour sequence and curing constraint. The copied duration is a prior from a dissimilar production system. It is not a fact for this frame. Leaving it in place without a method note trains the rest of the network, procurement dates, and trade stacking on the wrong production story.
The fix is not a vendor swap. The planner splits Superstructure to match the documents, inserts crane erection and certification with cites to the method statement and site logistics, replaces the steel-frame prior with a duration method for this concrete cycle (or leaves the duration blank until quantities are agreed), and only then computes the critical path.
That walk-through is the job. The model accelerates the first map. It does not replace the walk.
Edit, sign, then issue
The planner edits in the live schedule tool, not in a chat transcript. Accept, rewrite, or delete each activity. Break or add relationships. Replace copied durations. Attach calendars. Set the data date. Compute.
Record what changed and why, at least for logic and duration edits that move the critical path. A short narrative that lists rejected priors and inserted predecessors is enough for the next reviewer.
Do not issue the AI draft as the contract programme. Issue is a controls act: the named planner (or planner of record) signs the network and the narrative. Unsigned drafts stay marked draft, with a date and a model-run identifier so they are never mistaken for the baseline.
Once a signed programme exists, near-term quality is a different pass. Use a lookahead constraint scan on the activities inside the lookahead window so missing permits, submittals, and access do not sit quietly behind a clean critical path. Risks that the mapping surfaced (single-crane access, dissimilar-job duration priors, scope-boundary packages) belong on the project risk register generation workflow, not as hidden notes on bars.
If the issued programme later fails in the field, do not regenerate a new unsigned network and call it recovery. Run schedule recovery scenario generation from the signed logic, with the same cite-and-edit rule: scenarios are proposals until a planner owns the recovery programme.
The durable output is a draft CPM with cites to scope and WBS lines, edited and signed by the planner who will defend it. Historical benchmarks remain priors. The programme is not published unsigned.
Is this worth automating for you?
Whether this pays back depends on how much time it takes your team today. Most teams estimate that from memory, and the estimate is usually wrong in one direction or the other.
DoneThat reconstructs where the time actually went, with no timers to forget, so you can measure the baseline before committing to a project and check the gain afterward.
Measure the baseline first