{'fraction_non_alphanumeric': 0.017437452615617893, 'fraction_numerical': 0.0, 'mean_word_length': 4.689655172413793, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Branch and Bound Algorithm for the Single Machine Scheduling Problem with Release and Delivery times

The single machine scheduling problem is one of the classic NP-hard optimization problems, and it is useful in solving flowshop and jobshop scheduling problems. The goal of this paper is to prepare algorithms for the scheduling problem, where set of tasks is performed on a single processor. Each task has a release time when it becomes available for processing, a processing time and a delivery time. At most one job can be processed at a time, but all jobs may be simultaneously delivered. Preemption is not allowed. The objective is to minimize the time, by which all tasks are delivered. We compare the nondelay schedule, in which no processor is kept idle at a time when it could begin processing a task and an inserted idle time schedule, in which a processor is kept idle at this time. In this paper, we propose an approximation algorithm and by combining this algorithm and branch and bound method, we develop branch and bound algorithm, which can find optimal solutions for the single processor scheduling problem. We use a binary branching rule, where at each branch node, a complete schedule is generated. To illustrate the effectiveness of our algorithms we tested them on randomly generated set of tasks.