Resources

Resources are defined in Resource logic, see defining resources below. The skills of these resources can then be put as requirements for performing different tasks (processing, setup, repair) on objects that support these tasks. For details on how to assign skills to different task see skill requirements below.


Defining Resources

Through the Edit Resources dialog it is possible to define resources with a collection of skills that they can perform with a certain execution factor (speed).



Skills

Resources

Skills are distinguished by their unique names and skills named 'processing_skill', 'setup_skill' and 'repair_skill' are default skills present in every new model.

Add a skill: Push , and give it a unique name in the name-dialog, to add a new skill.

Remove skill(s): Select the skills that should be deleted and push .

Note: Skills added here are global, i.e. available throughout the entire model. Meaning that they can be put as requirements for tasks but they still need to be provided through a connected Resource logic.

Add a resource: Select desired skills for the resource and push .

Remove a resource: Push the in the top right corner of the resource.

Once a resource has been added it can be put as active or not, given a name, an amount and a set of skills. More details about these settings are given below.

Resource Setting

Description

Active

Toggle for setting this resource as active or not, i.e. making it available or not.

Name

Sets the name of this resource.

Note: Name must be unique within the Resource logic.

Amount

The amount of resources with these sets of skills that this Resource logic will provide.

Skills

All skills of this resource are listed in a table along with an execution factor.

Add a skill: Push to add a skill.

Remove a skill: Push for the skill that should be removed.

Remove all skills: Push in the header row.

Execution Factor

A real number larger than 0, making it possible to modify how long time a task requiring this skill will take. In the simple case that a task only require one skill the time consumed by the task will be:

Modified_Task_Time = Execution_Factor * Original_Task_Time

Incase the task require multiple skills an average of the execution factors of the needed skills will be used:

SUM{i=1,...,N} (Needed_Amount_of_Skilli * Execution_Factori)

Modified_Task_Time

=


*

Original_Task_Time

,

where N is the number of skills required by the task.

SUM{i=1,...,N} (Needed_Amount_of_Skilli)



Skill Requirements

Through the Edit Resources dialog it is possible to define skills need for the different tasks, Processing, Setup, and Repair, see image below.



The settings available under each task is described in more detail below.


Task Setting

Description

Active

If active this task will require the listed skills in order to be performed. If in-active the task will be performed without any skills, i.e. the standard functionality.

Interruptible

Specifies if resources assigned to this task can be interrupted and forced to another task with higher priority.

A task can also be interrupted when an assigned resource isn't operational (i.e. is failed or paused/unplanned by a shift). In this case this setting determines what happens with the assigned and interrupted resource:

  1. Interruptible=True: An interrupted resource will be released from its current task allowing a free and operational resource to complete the task.

    Note: With a response time > 0, this means additional response time even if it is the same resource that completes the work.

  2. Interruptible=False: An interrupted resource will stay with its current task and complete it as soon as the resource is operational again.

Note: Once a resource is interrupted the object that lost the resource is put back in queue waiting for its needed resources keeping its FIFO status from the inital call for resources. Once resources are available again assignement is done according to the priorities and sortings of all objects waiting for resources.

Skills first

By activating this it is possible to force all needed skills to be available before letting a part entre the object. Could for instance be used to model resources used for transportation of parts.

Note: Only possible for task 'processing' and 'setup', since 'repair' is independent of part entries.

Priority

Priority of this task on a certain object, used to sort all objects that have an outstanding order for some skills. Objects with tasks that have the same priority are sorted in a FIFO-manner, i.e. the object/task that has been waiting the longest will be treated first.

Note: Higher priority is better, i.e. priority 1 is lower than priority 2 and so fort.

Default priorities are: Processing = 1, Setup = 2 and Repair = 3.

Sorting

This setting is used to sort available resources once an object is next in line to recieve its needed resources. The resources can be sorted based on the amount of skills they are capable of performing and the execution factor of those skills, i.e. the speed with which the resource can perform those skills. These result in the following eight sorting options:

The primary sorting category is mentioned first followed by the second sorting category, i.e. FewSkills_FastExecution = first sort on resources with the fewest skills and secondly on the fast(low) execution factor.

Note: It is the average execution factor of skills of the resource that is used for sorting.

Note: When used as optimization input, the index will determine what sorting that is selected.

Label

Index

FewSkills_FastExecution

0

FewSkills_SlowExecution

1

ManySkills_FastExecution

2

ManySkills_SlowExecution

3

FastExecution_FewSkills

4

FastExecution_ManySkills

5

SlowExecution_FewSkills

6

SlowExecution_ManySkills

7

Skills & Amount

All skills needed for the task are listed in a table along with the required amount of each skill.

Add a skill: Push to add a skill.

Remove a skill: Push for the skill that should be removed.

Remove all skills: Push in the header row.