Transporter Controller
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController.TransporterController
Bases:
object
main class for transport controller, SQF is set as standard
- addControllerDict(controller_dict)
only used for Hybrid controller, allowes the use of multiple transport controller
- Parameters:
controller_dict – dictionary with python_classes
- combine_products(transport_onto)
combines the sort on transporter and not on transporter with the sort product method
- Parameters:
transport_onto –
- Returns:
[[type: on or not_on, procut_onto.name,time]]
- evaluateTransport(event_onto)
entry-level class for selecting the transport controller
- Parameters:
event_onto –
- sort_products(products_on_transporter, products_not_on_transporter)
arranges the products on the transporter, sorted by random
- Parameters:
products_on_transporter –
products_not_on_transporter –
- Returns:
[[product_onto,time,type]]
- sort_products_not_on_transporter(transport_onto=None)
arranges the products not on the transporter, sorted by waiting time, does not evaluate other transporter
- Returns:
[[product name, time (int)]]
- sort_products_on_transporter(transport_onto)
sort all products in transporter queue
- Parameters:
transport_onto –
- Returns:
[[product_onto.name,time (int)]]
TransporterController EDD
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController_EDD.TransporterController_EDD
Bases:
TransporterController
sort products on transporter based on Earlist Deadline first, currently there is no due time elemented. Therefore the start of production is set as reference. SQF used
- sort_products(products_on_transporter, products_not_on_transporter)
combines products not on transporter with on transporter and sort after EDD
- Parameters:
products_on_transporter –
products_not_on_transporter –
- Returns:
- sort_products_not_on_transporter(transport_onto=None)
sort products not on transporter after EDD
- Parameters:
transport_onto –
- Returns:
- sort_products_on_transporter(transport_onto)
sort products on transporter after EDD
- Parameters:
transport_onto –
- Returns:
[product name,int]
Transporter Controller Enum
Transporter Controller FIFO
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController_FIFO.TransporterController_FIFO
Bases:
TransporterController
transporter controller based on FIFO (Firts in First out) FIFO used
- sort_products(products_on_transporter, products_not_on_transporter)
combines the sort on transporter and not on transporter with the sort product method
- Parameters:
products_on_transporter –
products_not_on_transporter –
- Returns:
- sort_products_not_on_transporter(transport_onto=None)
sort products not on transporter after FIFO
- Parameters:
transport_onto –
- Returns:
[product name,int]
- sort_products_on_transporter(transport_onto)
sort products on transporter after FIFO
- Parameters:
transport_onto –
- Returns:
[product name,int]
TransporterController_Hybrid
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController_Hybrid.TransporterController_Hybrid
Bases:
TransporterController
Combines multiple transporter controller strategies
- addControllerDict(controller_dict)
adding all controller in a dict, value must be between 0 and 1
- Parameters:
controller_dict – {Klass:int [0:1]}
- combine_products(transport_onto)
calculates for all controller strategies the ordered product hirachy
- Parameters:
transport_onto –
- Returns:
[product_name, time, when NFJ then queue_name ]
Transporter Controller LIFO
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController_LIFO.TransporterController_LIFO
Bases:
TransporterController
transporter controller for LIFO (last in first out) (shortest waiting time) based on SQF for selecting next queue
- sort_products(products_on_transporter, products_not_on_transporter)
combines the sort on transporter and not on transporter with the sort product method
- Parameters:
products_on_transporter –
products_not_on_transporter –
- Returns:
- sort_products_not_on_transporter(transport_onto=None)
sort all products not on transporter
- Returns:
[[product_name,time (int)]]
- sort_products_on_transporter(transport_onto)
sort all products on transporter
- Parameters:
transport_onto –
- Returns:
[[product_name,time (int)]]
Transporter Controller NJF
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController_NJF.TransporterController_NJF
Bases:
TransporterController
select the product on the nearest job
- combine_products(transport_onto)
arranges the products on the transporter, sorted by random
- Parameters:
products_on_transporter –
products_not_on_transporter –
- Returns:
[[product_name,time,type]]
- evaluateTransport(event_onto)
NJF has its on evaluate transporter start point, this is currently not really neccessary
- Parameters:
event_onto –
- sort_products(products_on_transporter, products_not_on_transporter)
combines the sort on transporter and not on transporter with the sort product method
- Parameters:
products_on_transporter –
products_not_on_transporter –
- sort_products_not_on_transporter(transport_onto)
sort all products not on transporter
- Parameters:
transport_onto –
- Returns:
[[product_name,time (int)]]
- sort_products_on_transporter(transport_onto)
sort all products on transporter
- Returns:
[[product_name,time (int)]]
Transporter Controller SQF
- class ontologysim.ProductionSimulation.controller.transporter_controller.TransporterController_SQF.TransporterController_SQF
Bases:
TransporterController
calculates the next product based on the shortest queue
- sort_products(products_on_transporter, products_not_on_transporter)
combines the sort on transporter and not on transporter with the sort product method
- Parameters:
products_on_transporter –
products_not_on_transporter –
- sort_products_not_on_transporter(transport_onto=None)
sort all products not on transporter
- Parameters:
transport_onto –
- Returns:
[[product_name,time (int)]]
- sort_products_on_transporter(transport_onto)
sort all products on transporter
- Parameters:
transport_onto –
- Returns:
[[product_name,time (int)]]