CRAFT program

The above difficulty can now be alleviated due to the availability of computer software packages such as the Computerized Relative Allocation of Facilities Techniques (CRAFT). The basic technique of optimization in CRAFT is similar to what we did visually: exchanges of positions between different departments. The computer program, therefore, requires input data such as:

1. Load Summary
2. The existing layout and the distances different locations,
3. The floor area requirements of the different departments. In addition to this, the computer program introduces two more aspects:
4. The possibility of the differences in the costs of material handling between two different pairs of departments, expressed as rupees per load per unit distance.
The per load per unit distance cost of material handling between departments 1 and 2 may be quite different from the cost per load per unit distance between departments 1 and 3 For instance, in our earlier example (visual inspection) we had considered the per load per unit distance costs to be the same for all the combinations of departments. This may be true in practice, because the type of material being handled between one pair of departments may be different from the other pair of departments and therefore the material handling equipment needed for such movement within the pair of departments may be different from one pair to another. Naturally, the materials handling costs between different pairs of departments will also be different. Such an interdepartmental cost matrix should be provided as input data.
5. CRAFT also takes into account the non-moveability of certain departments in practice. For example, the receiving section may have to be located near the railway tracks if a large volume of raw materials is received by rail. Such positional constraints should be part of the input data.

The ultimate aim of the CRAFT program is to minimize the material handling costs for the entire plant.


A CRAFT program basically has the following elements:

1. It reads the load summary (the number offloads carried between pairs of departments), the cost per unit load per unit distance for the handling of materials between various pairs of departments the existing layout of departments, the area requirements and the dimensions of the departments, and constraints of the positioning of the departments,
2. It computes the centers of the departments and computes the various inter-departmental distances. The inter-departmental distances are not diagonal ever, but only horizontal and vertical.
3. On the basis of the above it computes the total material handling costs per unit period for the layout.
4. It makes paired and/or three way exchanges between the different departmental locations so as to produce a valid and improved layout pattern. The improvement is in terms of reducing the total material handling costs. While making these exchanges, due regard to the area and physical dimension requirements of the individual department is paid.
5. The computer prints out the scaled layout pattern and the corresponding cost.

Subroutines of CRAFT:

For doing this, the CRAFT program employs various subroutines which are described below:

AJA: The computer exchanges only those departments which are of the same size or which are adjacent. This subroutine checks though the input data find such eligible departments.

CKPAR: Checks the cost and volumes-of-flow input, and computes the product of the load summary and the cost per load per unit distance matrices; it checks computations for zeros along the diagonal.

CENTER: Computes the centers of all the departments.

CDIST: Computes the distance (horizontal and vertical, not diagonal) between the centers found by the previous subroutine CENTER.

CKISP: Checks initial layout, indexes the layout for easy reference in location and supervises the initial computation of centers, distance, adjacencies, etc.

ANACTL: A supervisory subroutine for two am d three way exchanges. It calls ANAN and ANAT intermittently as they are required.

ANAN: A supervisory routine for two way exchanges computes the cost reduction that can be achieved by the exchange of department with other eligible departments.

ANAT: A supervisory routine for three way exchanges.

FUNCTION: Computes the total transportation costs of alternatives COST: layout patterns. This routine is used by other routines such as ANAN.

EXCH: Supervises the actual exchange of two departments. Equal size departments are easily exchanged. The unequal size departments are exchanged by calling other carving subroutines MESSR and/or NESSQ. For this part, the program puts the unequal size departments, which are to be exchanged in a temporary matrix. After the carving out and the exchanges the departments are positioned into the permanent matrix by means of another subroutine PICKUP.

SETUP: Facilities the other carving subroutine MESSR and MESSQ by analyzing the relative orientation of the departments to be exchanged and rotating the larger department for carving out the smaller department out of it.

MESSR: A carving subroutine of the exchange of departments of unequal size.

MESSQ: A carving subroutine useful for the exchange of department of unequal size.

PICKUP: Picks up the exchanged departments from the temporary matrix and drops them back into the permanent matrix.

EXCT: Supervises the exchange of department A and department C across department B.

PERIM: Measures the common border between two departments which have been carved out of the larger department. This helps in limiting the spatial dispersion of departments.

CEXC: Puts the new departments resulting form MESSR and/or MESSQ back in the regular index and checks each new departments for a valid shape, and computes their common border.

VALID: Checks the validity of the configuration of each department, for the initial as well as subsequently resulting modified layout patterns.

POSTM: Used for the post mortem debugging so that any error situation in the programs is detected and rectified.

IALPHA: Converts the numeric code to the letter code for printouts.

OUTISP: Facilitates the printing out of the results of the program the layout with departments properly outlined the cost, and other information is printed out.