Negative free float?

Member for

14 years 6 months

Bernard,

 

Just, from academic point of view: Four floats can be defined on activities. At least this is what we teach in our books since 67. (This is the first Hungarian textbook for students I could trace back )

Total float: float if predecessor activities finish at their earliest, and successors start/finish at the latest

Free float: the float if predecessors finish at their earliest, and successorss start/finish at the earliest

Independent float: the float if predecessors finish at their latest, and successors start at the earliest

Conditional float: the float if predecessors finish at their latest, and successors start and finish at their latest

 

How was they developed? It is easy. Imagine part of a CPM (activity on arrow) network with two events i,j, and an activity between them. During the calculation you define the early and late event times. Ei, and Li for i and Ej, and Lj for j,

Now 

TF=Lj-Ei-tij   (tij is the duration of ij activity)

FF=Ej-Ei-tij

IF=Ei-Lj-tij

CF=Lj-Li-tij

and no more chance because we have only this four combinations for early and late times.

More in this: Network Scheduling Techniques for Construction Project Management by me. publisher Kluwer Academic Publisher

Hope this was satisfactory.

Miklós

Member for

14 years 6 months

Bernard,

 

Just, from academic point of view: Four floats can be defined on activities. At least this is what we teach in our books since 67. (This is the first Hungarian textbook for students I could trace back )

Total float: float if predecessor activities finish at their earliest, and successors start/finish at the latest

Free float: the float if predecessors finish at their earliest, and successorss start/finish at the earliest

Independent float: the float if predecessors finish at their latest, and successors start at the earliest

Conditional float: the float if predecessors finish at their latest, and successors start and finish at their latest

 

Hoiw was they developed. It is easy. Imagine a CPM (activity on arrow) network with two events i,j, and an activity between them. During the calculation you define the early and late event times. Ei, and Li for i and Ej, and Lj for j,

Now 

TF=Lj-Ei-tij   (tij is the duration of ij activity)

FF=Ej-Ei-tij

IF=Ei-Lj-tij

CF=Lj-Li-tij

and no more chance because we have only this four combinations for early and late times.

More in this: Network Scheduling Techniques for Construction Project Management by me. publisher Kluwer Academic Publisher

Hope this was satisfactory.

Miklós

Member for

21 years 8 months

Bernard,

If you have Negative Total Float and FF=/> 0 then Free Float is greater than Total Float as 0/>0 is greater than any negative value.

You are correct when questioning that if there is negative total float and common sense tells you Free Float shall never be greater than Total Float then why not negative free float, but you are missing questioning the computations of total float under FNL constraints.

The problem is with the implementation of the constraint when it cannot be met. Is simple, some software developers forgot that there is a time constraint, they forgot common sense, tomorrow is after yesterday it cannot be the other way.

Negative Total Float in the physical world is impossible, in any case it shall be defined differently and not confused with Total Float. It is in error to say it is a mathematical computation and as such it makes sense. Yes you can fool the computations but it is wrong if the results are misleading.

Not all software developers follow this flawed application of constraints and Total Float computation. Not everyone goes over and over again the same error some dummy created long ago and no one ever questioned. Spider Project does not enforce impossible constraints and when it cannot be met it correctly identifies criticality by making Late Dates equal to Early Dates but never Late before Early, very simple.

More interesting than FF is resource critical float, a computation few software can get it right.

Best regards,

Rafael

Member for

20 years 7 months

Hi, Patrick.

Isn't this overstating it a bit?  "(C)ritically important to the performance of all scheduling software"?

I mean, considering that the VAST majority of scheduling software does not even compute something as fundamental as Critical Path Drag (to say nothing of Drag Cost, or The Cost of Leveling with Unresolved Bottlenecks [the CLUB]), to refer to a metric that is ALWAYS located OFF the critical path as being "critically important" seems strange.

Many years ago, I worked with a company (PSDI) that created Qwiknet Professional. Qwiknet was a nice tool, but didn't compute free float. We got hammered again and again in project demos by competitors who would say: "That Qwiknet is so bad it doesn't even compute free float! Uh -- you know what free float is, right?  Here, let me show you in our software..."  Sure, Qwiknet's omiision was problematic, but NONE of those packages computed Drag, which is far more "critical", being a metric that is exclusively on the Critical Path! (Even 20 years later, only Spider Project and the Sumatra.com Schedule Optimizer add-on to MS Project compute Drag!)  

BTW, I enjoyed your article -- but surely you should have discussed Critical Path Drag, too.

Fraternally in project management,

Steve the Bajan

Member for

24 years 9 months

Hi Bernard,

Mike may be a grumpy old ‘dirt cowboy’ but the subject you are touching on is critically important to the performance of all scheduling software, there is no one ‘right answer’ and many tools totally screw up the calculations.  I spent several months looking at this problem last year and believe the current draft of our paper on CPM Calculations is correct. You are welcome to use the information in the paper: http://www.mosaicprojects.com.au/PDF/Schedule_Calculations.pdf

To answer your initial question: Free Float is always positive – it is impossible to have negative free float (unlike total float). For more on this see the definitions in the paper.

Pat.

Member for

22 years 11 months

Nevermind, I was looking too closely at a tree and didn’t account for the forest. I got it sorted out.



Bernard Ertl

InterPlan Systems

Member for

19 years 10 months

Hi Bernard



I have no idea at all what you are going on about.



I am sure that there is a place in PP for this High Arcana form of discussion but for us poor dirt cowboys scratching for a living in the real world - forget it.



Best regards



Mike Testro.

Member for

17 years 3 months

Dear Bernard,



Either you use Start-to-start with a lead, or Finish-to-start with a lag to model the case you are describing.



It is much better if you follow Mike’s advice and split the predecessor into two activities and then link them Finish-to-Start. This way you can follow the program much earier.



With kind regards,



Samer

Member for

22 years 11 months

Thanks Mike, but I’m interested in the question from an academic viewpoint (ie. I’m developing CPM software and interested in planner/industry expectations).



Best I can tell from the many written definitions I have seen, the FF (and total float for that matter) should actually be equal to the total float that would be calculated if the relationship to the constrained successor did not exist (because they don’t and can’t delay the mandatory successor). I don’t believe that this is what anyone wants in practice, however.



Most software is calculating total float as a negative number with the mandatory constrained successor. Free float is bit more curious, however.



Bernard Ertl

InterPlan Systems

Member for

19 years 10 months

Hi Bernard



The simple answer is do not use any form of constraints.



They distort the critical path and give negative floats.



Delete them all immediately and set up your programme properly.



Best regards



Mike Testro