modules.applications.optimization.salbp.salbp

Functions

convert_preceding_task_ids_to_tasks(tasks, ...)

Convert a list of preceding task IDs into a list of preceding tasks.

create_salbp_from_file(file_path)

Read data from a file and create an SALBP-1 instance.

get_indices(lines, keywords)

Find the positions of the keywords in the list.

has_overloaded_station(cycle_time, ...)

Return if a station in the given task_assignment is overloaded wrt the given cycle time.

has_unique_assignment_for_every_task(tasks, ...)

Return if each task is assigned to exactly one station.

parse_cycle_time(cycle_time)

Parse the available cycle time for one station.

parse_number_of_tasks(number_task)

Parse the number n of tasks in this problem.

parse_order_strength(order_strength)

Parse the order strength of the precedence graph.

parse_precedence_relation(relation)

The precedence relations define constraints on the order in which tasks are performed.

parse_task(task_times)

Parse a task and its time requirement.

read_data(file_path)

Read scenario files in .alb format.

respects_precedences(preceding_tasks, ...)

Return if the given task_assignment respects the given precedences.

salbp_factory(tasks, precedence_relations, ...)

Create an SALBP-1 instance given a list of tasks and their precedence relations.

split_lines_to_areas(lines, token_indices)

Group the list into keywords and their corresponding values.

Classes

SALBP()

The Simple Assembly Line Balancing Problem (SALBP) is a special bin packing problem with precedence relations among the items.

SALBPInstance(cycle_time, tasks, ...)

An instance of the Simple Assembly Line Balancing Problem, version 1 (SALBP-1).

Task(id, time)

A Task for an Assembly Line Balancing Problem.