1. A scheduling device that schedules processing of a plurality of semi-finished products by a plurality of processing devices, comprising: a dividing unit configured to select a predetermined number of semi-finished products from a head out of a plurality of the semi-finished products for which scheduling order was determined, and to divide selected semi-finished products according to a plurality of patterns to generate a plurality of set sequences, the set sequences each being a sequence of one or more sets, the sets each including at least one semi-finished product; a calculating unit configured to assign, for each of the set sequences, the sets included in the set sequence to different ones of the processing devices so that processing of all the semi-finished products belonging to the set sequence are completed fastest, and find the set sequence that completion time is fastest among the set sequences; and a determining unit configured to determine that a top set in the set sequence found by the calculating unit is processed by the processing device assigned by the calculating unit, wherein the dividing unit uses the patterns satisfying that a size of one set is not less than a smallest number of minimum numbers of semi-finished products that the processing devices can process at one time and is not more than a largest number of maximum numbers of semi-finished products that the processing devices can process at one time, and sizes of respective top sets in the set sequences cover all values in a range from the minimum number to the maximum number.