Organisational Posture

Elements of a Temporal Workforce Structure Model

Drs Stuart Nettleton & David Boyle

Principal Consultants, Atturra Limited (ATA.AX), Data & Analytics

Abstract

This presentation describes the main elements of a temporal workforce structure model that has been developed using the Wolfram language and Wolfram Desktop application. These models have proven difficult to develop computationally for many years, resulting in organisations facing costly and complex crisis management, the chaos of the spot market for staff and high-risk opportunistic appointments. This presentation describes a workforce posture model to address these issues. The symbolic approach delivers the benefits of “closed-loop” control of workforce posture in an agile, efficient and feasible way using symbolic convolution algorithms and multi-stage optimisation.

Purpose

Major organisations in mining, defence and similar high technology and infrastructure intensive industries have operational and capital development plans that extend for two decades or more.

A major limiting factor in sustainment and expansion can be the availability of sufficient personnel in the right posts, in the right roles and locations, with the right experience and at the right promotional level, at the right times. This is called organisational or “workforce posture.”

Planning for temporal workforce posture tâtonnement, which is matching staff supply to staff demand over time, has become a major issue for corporate governance.

The temporal workforce model presented here changes the current system of management from one of informed guesses to a systematic approach to achievement of planned temporal workforce posture.

Traditional Model Difficulties

Literature reviews and client experience has indicated that temporal workforce models have proven extremely difficult to manage - if intractable - with tools like spreadsheets and discrete modelling packages. This is due to:

Natural exit from training and operational engagement profiles

A profusion of career pathways

Historical maturity or vintage structure embedded within the system

Material impairment due to the attrition of trained and experienced staff, which needs to be carefully managed with employment contracts and incentives (e.g. return of service obligations)

Millions to billions of variables and temporal outcomes that can exist

Demand and Supply

The demand side of workforce posture is complicated by factors that include operational tempo and dynamic contingency requirements.

The Workforce Posture model described in this presentation addresses the supply side.

The supply side is complicated by six main factors and constraints:

Long duration of each individual’s training and operational engagement profile, which can be a decade or more

Many paths that these profiles can take

Non-intuitive dynamics of sequenced end-to-end stock-and-flow models, which include inertia and decision latency

Training capacity constraints

Attrition of trainees, experienced staff and trainers

Minimise both the opportunity loss of under supply and the cost of pooling and oversupply

Active Management Approach

As a result, recruitment and deployment decisions need to be made years in advance of organisational posture demand, mindful of:

The changing baseline and embedded historical structure of supply due to accepted/sunk decisions and exigencies

An evolving demand profile

The need to review and update decisions regularly over time implying an active management approach to the production of trained personnel

An end-to-end perspective since decisions may not be fully understood by the various silos that likely exist within the system, such as early phase training entities. For example, it has always been the case that companies reach back into universities or vocational training providers to ensure and incentivize that sufficient graduates are available in desired disciplines.

Temporal Model Workflow

(*modelAttributes=Grid[{{Style["Data Driven model:",{Red,Bold}]},{Text@"* Career Pathways Graph"},{Text@"* Historical Inflows"},{Text@"* Baseline Posture"},{Text@"* Target Posture"},{""},
{Text@Style["Simultaneously compute:",{Red,Bold}]},
{Text@"* Thousands of Cohort Inflows as DiracDelta Function Optimisation"},
{Text@"* Dozens of Career Phases as UnitStep Functions"},
{Text@"* Hundreds of Career Pathways Converging and Diverging over Time"},
{Text@"* Thousands of Career Path Transitions"},
{Text@"* Hundreds of Markov Distributional Valves"},
{Text@"* Tens of Waves of Distributional Valve Optimisation"},
{Text@"* Maximum Likelihood Optimisation of Thousands of Partially or Fully Unknown Distributional Valve Settings"},
{Text@"* Dozens of Constraints including Inflow Capacity, Talent Restriction & Attrition"},
{Text@"* Thousands of Weeks of Projection & Visualisations"},
{Text@"* Hundreds of Timeseries Visualisations"}},Alignment->Left];GraphicsGrid[{{,}},ImageSize->1500,Alignment->{{Right,Left},Automatic}]*)

Illustrative Workforce Graph

edges=DirectedEdge@@@{{1,2},{1,3},{2,4},{3,5},{3,6},{4,8},{5,4},{4,6}};
Graph[Quiet@DiscreteMarkovProcess[1,Normal@AdjacencyMatrix@edges],VertexLabels->Flatten@{
1->Style["Recruitment",{20,Bold}],
Thread[Range[2,7]->(Style[#,20]&/@{"Junior\nPosition A","Junior\nPosition B","Senior\nPosition A","Conversion B to A","Attrition","Promotion"})]},ImageSize->1000,VertexCoordinates->{1->{0,0}}]

Indicative (Simplified) WF Production Graph

Mathematics of Convolution: Positions Example

cohortsPerAnnum=3;inputSignal=(Table[42DiracDelta[x-t],{t,1,52,52/cohortsPerAnnum}]//Plus@@#&)+(Table[5DiracDelta[x-t+2],{t,1,52,52/cohortsPerAnnum}]//Plus@@#&);
plotRecruitment=Plot[Join@@{Table[42UnitBox[x-t],{t,1,52,52/cohortsPerAnnum}],Table[5UnitBox[x-t+2],{t,1,52,52/cohortsPerAnnum}]},{x,1,60},PlotRange->{{0,60},{0,50}},PlotLabel->Style["Cohort\nRecruitment\nProfile",{20,Bold}],Filling->True,AxesLabel->{"Time\nPeriods","Positions"}];
Print[Text@"inflow = ",Unevaluated[Text[Table[42DiracDelta[x-t],{t,1,52,52/cohortsPerAnnum}]+Table[5DiracDelta[x-t+2],{t,1,52,52/cohortsPerAnnum}]]]]
(*Print[Text@Style["Convolution Example",{28,Bold}],"\n"];*)
Print[Text@"inflow = \n",Text@inputSignal];
edgeFlowIntoVertex=(UnitStep[x-10]-UnitStep[x-20])/2 +(UnitStep[x-15]-UnitStep[x-25])/2; 
Print[Text@"position specification = \n",Text@edgeFlowIntoVertex];
convFn[inputSig_,edgeFlowIn_]:=Table[Convolve[inputSig,i,x,t],{i,{edgeFlowIn}}];
convResult=convFn[inputSignal,edgeFlowIntoVertex];
Print[Text@"position function = ",Text@convResult,"\n"];
plotPositions=Plot[convResult,{t,0,60},PlotRange->{{0,60},{0,50}},PlotLabel->Style["Positions\nHalf Recruitment arriving in 10 periods & Half 5 periods later\nDuration of 10 periods in this Position",{20,Bold}],Filling->True,AxesLabel->{"Time\nPeriods","Positions"}];
GraphicsGrid[{{plotRecruitment,plotPositions}},ImageSize->1300]

Output Visualisations

Grid[{{Plot[{0.8-0.5LogisticSigmoid[0.2x-4],0.2+0.5LogisticSigmoid[0.2x-4]},{x,0,60},AxesOrigin->{0,0},PlotLegends->(Style[#,{20,Bold}]&/@{"Valve\nPart A","Valve\nPart B"}),PlotLabel->Style["Valve Optimisation\n",{24,Bold}],
AxesLabel->(Style[#,{20,Bold}]&/@{"Time\nPeriods","Per Unit"}),ImageSize->500],"  ",Plot[{40+60LogisticSigmoid[0.2x-4],40+40LogisticSigmoid[0.25x-4]},{x,0,60},AxesOrigin->{0,0},PlotLegends->(Style[#,{20,Bold}]&/@{"Target\nPosture","Achievable\nPosture"}),PlotLabel->Style["Maximum Achievable Growth\nwhile Maintaining Posture",{24,Bold}],
AxesLabel->(Style[#,{20,Bold}]&/@{"Time\nPeriods","Total\nPersonnel"}),Filling->True,Epilog->Inset[Style["Deficit",{Red,20}],{50,90}],ImageSize->500]}}]

Utility Functions

Active Management of the Workforce Production System

Timely and Valuable Information for Decisions that have Lead-Times of Years

Answers to Critical Questions:

“What is the confidence of workforce production to meet demand and tempo requirements?”

“How and when will remediation, growth and sustainment targets be achieved?”

“What is the maximum growth potential while maintaining posture?”

“Which decisions are urgent?”

“What are the risk implications of delayed decisions?”

“What are the costs of various strategies to achieve target outcomes?”

“What are the critical bottleneck capacity constraints & attrition points to be addressed?”