On This Page:
- Getting Started with Recipes
- Exercise #5: Create Project Recipes
- Further Resources
Getting Started with Recipes
A. Intro to Recipes
Recipes contain the operations (or tasks) required to complete a given scope of work. Each operation contains the resources required to complete the task, such as crew, equipment, and materials.
The level of detail or number of operations in each recipe depends on project requirements, the phase of construction, and the goals / objectives of using ALICE for the project.
Recipes must be assigned to 3D or Non-3D (2D) elements / groups for ALICE to schedule the project.
In ALICE, the operation duration and quantities can be Fixed (Static) or Parametric.
To create a Recipe:
- Click the “Recipe” button on the upper right-hand side of the Plan page
- Click the “+ New Recipe” to create a new one
- “Previous Element” and “Next Element” are the start and end points of the recipe. At least one operation must be connected to the “Previous Element” to determine the Recipe start, and at least one operation must be connected to the “Next Element” to determine the Recipe end
B. Creating Operations in Recipes
- Click on the '+' button to create an operation
- Click on the task card to open it
- Add the “Operation Name” in the upper left-hand corner
- All operations can have Labor, Equipment, Cranes, Materials, Rates,and Duration assigned to them. It is not necessary to have every one of these filled out and fully populated
- To create a copy of the task card, select the three dots on the bottom right-hand corner, and select “Copy”
- To delete the task card, select the three dots on the bottom right-hand corner, and select “Delete”
To fill in the information for the labor resource, go to the “Labor” tab:
- Click on the “Subcontractor” drop-down menu and select one. If the subcontractor does not exist, you can create a new one by selecting “New Subcontractor” and following the prompt. See Resources Page Section B for more information on how to create a new subcontractor
- Click on the “Type” drop-down menu and select the crew type. If the crew does not exist, you can create a new one by selecting “New Crew” and following the prompt. See Resources Page Section B for more information on how to create a new crew
- Input the “Min” and “Max” number of crews required for this operation
- Example: If the specific operation can only have one crew assigned to it, then Min = 1 and Max = 1.
- Example: If the operation can have anywhere from 1 to 2 crews assigned, and doubling the crews would have an impact on the duration of the operation, then Min = 1 and Max = 2. By assigning 1 to 2 crews, ALICE is given the opportunity to select either 1 or 2 crews to perform the operation depending on the objectives of the scenario run.
- Note: Please note that the duration formula must include “num_crews” in order for ALICE to take the number of crews into account.
Note: Only one type of crew can be assigned to an operation.
To fill in the information for the equipment resource, go to the “Equipment” tab:
- Click on the “+ Assign Equipment” button. The “Assigned Equipment” list will appear
- Click on the “Type” drop-down menu and select the equipment type. If the equipment does not exist, you can create a new one by selecting “New Equipment” and following the prompt. See Resources Page Section C for more information on how to create a new equipment
- “Qty Required” is the required number of equipment needed for this operation. The value can either be a fixed number value or a parametric value based on the number of elements
Example - Fixed Number: One concrete pump is required for the concrete pour task. Therefore, the value here will be “1.”Example - Parametric: ALICE allows for creative uses to define the number of the equipment for an operation
- Case #1: ALICE allows users to connect the required number of equipment to a number of crews by a simple formula. The number of equipment required is equal to the number of crews. In this case, ALICE will always use the same amount of equipment as your crews. Therefore, the formula will be “num_crews.”
- Case #2: Similar to other formulas in ALICE, you can use different mathematical functions to define the connection to a number of crews. The number of crews can be a numerical factor of the number of equipment. We have seen use cases where the following formulas are used: “num_crews*x” and “num_crews/x.”
Note: You can assign an unlimited number of types of equipment to an operation.
To fill in the information for the crane resource, go to the “Cranes” tab:
- Click on the “+ Assign Crane” button. The “Assigned Cranes” list will appear
- Click on the “Type” drop-down menu and select the crane type. If the equipment does not exist, you can create a new one by selecting “New Crane Type” and following the prompt. See Resources Page Section D for more information on how to create a new crane
Note: You will receive a “No locations specified for this crane” notification if the selected crane does not have any locations created in the 3D view.
To fill in the information for the materials resource, go to the “Materials” tab:
- Click on the “+ Assign Material” button. The “Assigned Materials” list will appear
- Click on the “Type” drop-down menu and select the material type. If the material does not exist, you can create a new one by selecting “New Material” and following the prompt. See Resources Page Section E or more information on how to create a new material
- Click on the “Action” drop-down menu and select either “Requires” or “Supplies”
- “Requires” uses/requires the materials from the Resource pool
- “Supplies” gives/supplies the materials to the Resource pool
- “Qty Required” is the required number of materials needed for this operation
- Example: See Resources Page Section E for additional examples of “Requires” vs. “Supplies” use cases.
To fill in the information for the production rates, go to the “Rates” tab:
- Click on the “+ Assign PR” button. The “Assigned Production Rates” list will appear
- Click on the “Name” drop-down menu and select the production rate. If the production rate (or PR) does not exist, you can create a new one by selecting “New PR” and following the prompt. See Resources Page Section G.1 for more information on how to create a new PR
Note: Rates must be used in equations (formulas) in order to influence the schedule. See D. Parametric Operations to understand how to use the production rates in the duration formulas.
To fill in the information for the duration, go to the “Duration” tab:
- Click on the “+ Assign PR” button. The “Assigned Production Rates” list will appear
- Activate the “Task Duration” field by clicking into the blank area / white space
- Type in the duration in hours. The value can either be:
- a fixed number value or
- a parametric value (See D. Parametric Operations for more information on how to set up a parametric duration formula)
Note: If there is no crew assigned to the operation, the duration will be calculated using the 24/7 calendar. This means that the operation will be done 7 days a week, 24 hours per day.
The “Override Calendar” functionality is used to override the calendar that is assigned to the crew in the Resource pool under the “Labor” tab. If no crew is assigned, the “override calendar” functionality will override the 24/7 calendar.
Example: If under the “Labor” tab, the crew is assigned an 8x5 calendar (8 hours per day, 5 days per week). However, there is a unique task in the project where the crew must work overtime to complete it. The “override calendar” functionality can be used to ensure that the crew always adheres to this overtime calendar. Please note that for all other tasks where the override calendar is not used, the crew will always use the calendar assigned under the “Labor” tab.
Rounding Up Durations
The durations are defined in hours and can be precise up to the hundredth decimal place (i.e. 0.00). For practical purposes, it is not always realistic to have durations that have this level of precision. Therefore, we can use the “Round up to nearest” functionality to decrease the level of precision.
To have a schedule that is only scheduled by the number of days and not by the number of hours, the round-up value must be equal to the daily work hours.
- Example: If the working day or shift is 8 hours, turn on the “Round up to nearest” and type “8.” This would avoid having start and end times like “9:13 am” or “4:55 pm.”
C. Relationships and Lags
C.1 Relationships and Precedence Types
Once an operation is created, relationships and precedence assignments are required.
Review Supports Page Section A for more information on how the relationships within the recipes relate to the support assignments. To connect the “Previous Element” to the operation(s):
- Click and hold on the blue circle and drag to the operation card
- Use the same technique to connect the operation to “Next Element” or to other operations
- The relationship type and lag are defined in the middle of the arrow
- Click on the relationship type to open the list of all available connection types:
- FS, SS, FF, and SF are the common precedence types
- FaS, SaS, FaF, and SaF are the ALICE custom precedence types
Common Precedence Types
The most common types of dependencies are the following four (4):
- Finish - To - Start (FS): Activity B can begin after A is finished. In other words: Finish A ≤ Start B
- Start - To - Start (SS): Activity B can start at the same time as A. In other words: Start A ≤ Start B
- Finish - To - Finish (FF): Activity B can finish at the same time as A finishes. In other words: Finish A ≤ Finish B
- Start - To - Finish (SF): Activity B can finish at the same time as A starts. In other words: Start A ≤ Finish B
ALICE Custom Precedence Types
In ALICE, the above relationship types are extended, by adding the "At" type which imposes the type of dependency. Therefore, the additional precedence types are transformed to:
- Finish - At - Start (FaS): Activity B must begin after A is finished. In other words: Finish A = Start B)
- Start - At - Start (SaS): Activity B must start at the same time as A. In other words: Start A = Start B
- Finish - At - Finish (FaF): Activity B must finish at the same time as A finishes. In other words: Finish A = Finish B
- Start - At - Finish (SaF): Activity B must finish at the same time as A starts. In other words: Start A = Finish B
Note: Be mindful when using the custom precedence types as they impose a very strict relationship between activities that can render your schedule as infeasible if not used properly.
Note:FaS, SaS, FaF, and SaFwill appear as their corresponding common relationship types when exported to other platforms such as Primavera P6 or MS Project.
To define a lag between operations:
- Type the lag value in the field next to the relationship type
Note: The lag value must be in hours.
To define the calendar used for the relationship lags:
- Go to the Resource pool and the “Calendars” tab
- Select from the “Calendars used for relationship lags:” drop-down menu located on the top right-hand corner of the page. The two options are:
- 24 Hrs Calendar: The lag is based on a 24/7 calendar
- Example: if I want a full 2 days (or 48 hours) of lag between two tasks, then the input value for the lag is 2 x 24 = 48.
- Predecessor Activity Calendar: The lag is based on the calendar defined in the predecessor activity
- Example: if I want a full 2 days of lag between two activities, and the predecessor activity is assigned a calendar with an 8-hour working day, then the input value for the lag is 2 x 8 = 16.
D. Parametric Operations
Instead of static (fixed) durations and quantities, ALICE can use the metadata of the element(s) / group(s) and create equations to calculate their durations and resource consumptions.
Recipes must be assigned to 3D and Non-3D (2D) elements to read the metadata.
All mathematical symbols ( +, -, x, / ) can be used to develop an equation.
D.1 Assign Recipe
To assign a recipe:
- On the Plan page, select the 3D or Non-3D (2D) element(s) / group(s) that you wish to assign a recipe
- Click “Assign Recipe” in the upper right-hand corner
- In the opened window, identify the appropriate recipe and click “Assign” to assign that recipe
Note: The recipe can be assigned to multiple 3D or Non-3D (2D) element(s) / group(s) at the same time.
D.2 Selected Element Parameters
To review what metadata is available for the selected element(s) / group(s):
- Go to that recipe and open any operation
- In the operation, go to the “Material” or “Duration” tab
Under “Selected Element Parameters,”you can see the default and custom properties of the element(s):
- The default metadata that ALICE calculates for all elements are:
- Lateral Surface Area (el.lateral_surface_area): the sum of the lateral surface areas of all elements of that group
- Element Number (el.num_elements): the number of elements in that group
- Surface Area (el.surface_area): the sum of the surface areas of all elements of that group
- Volume (el.volume): the sum of all the volumes of all elements of that group
- See Element Properties for more information on custom properties and the associated metadata
D.3 Resource Parameters
Under “Resource Parameters,” you can see the resources assigned to this operation:
- num_crews: the number of crews assigned to this task. “1-1” is the “Min-Max” value defined on the “Labor” tab
- num_crew_size: the number of persons in each crew
- mat.concrete: the assigned concrete material quantity
- eq.excavator: the assigned equipment quantity
- pr.excavation: the assigned production rate
Note: All assigned resources will be shown here.
D.4 Material Consumption Equation
All listed elements and resource parameters can be used for equations.
If the material required for an operation is a function of the elements and / or resources available, you can create a material consumption equation.
- Go to the “Materials” tab within the task card
- Delete the value from “Qty Available” if the field is pre-populated
- Write the mathematical formula for the material required. The metadata from the “Selected Element Parameters” section or from the “Resource Parameters” section can be used. The equations can be simple (based on one parameter) or complex (based on more than one parameter or other metrics)
Example: See video below. Click on the “el.volume” button under “Selected Element Parameters” to insert this in “Qty Available.” ALICE will use the volume of the selected element to calculate the concrete consumption only for the selected element or group.
Example: See video below. 10% of the total element volume is the rebar and 90% of the total element volume is the concrete.
To add the 90% to our equation:
- Add “ *0.9 ” to the equation
- So that Concrete Volume = Total Volume * 0.9
D.5 Duration Equation
A similar approach to D.4 Material Consumption Equation can be used to develop an equation for operation duration.
Example: See the video below. In an Excavation operation with 1 - 3 crews and an assigned Excavation Production Rate per crew, our duration equation would be “Volume / Production Rate / Number of Crews”:
- Go to “Labor”tab, and assign 1-3 for Min-Max
- Go to “Rates”tab and assign the Production Rate
- In the “Duration” tab, click in the duration field to activate it
- Click on the parameters and type in the “/” symbol to generate: el.volume/pr.excavation/num_crews
Exercise #5: Create Project Recipes
Several of the ALICE Support Pages detail information on key ALICE topics. This learning can be solidified by completing an exercise on a trial project. To put your learning into practice, follow this link: