An optimization program that optimizes a process procedure for each of a plurality of process machines in a substrate process system which includes the plurality of process machines, each of which has a pair of substrate transportation devices (40, 42) for transporting circuit substrates on two paths and are arranged in a row, and in which the circuit substrates are transported on the two paths from an upstream process machine to a downstream process machine among the plurality of process machines, wherein the pair of substrate transportation devices (40, 42) is configured to operate in a single lane operation, wherein circuit substrates are transported on either one of the two paths, and wherein the pair of substrate transportation devices (40, 42) is configured to operate in dual lanes operation, wherein circuit substrates are transported on both of the two paths in parallel, the program comprising: a first process setting section configured to set a first process procedure for each of the plurality of process machines so as to equalize for each of the plurality of process machines a total process time that is the sum of a process time for a circuit substrate being transported on one of the two paths, and a process time for a circuit substrate being transported on the other of the two paths; a second process setting section configured to set a second process procedure for each of the plurality of process machines so as to equalize the process time for each of the plurality of process machines for a circuit substrate being transported on one of the two paths, and to equalize the process time for each of the plurality of process machines for a circuit substrate being transported on the other of the two paths; characterized by a procedure selecting section configured to select any one of the first process procedure and the second process procedure based on the number (S-A) of circuit substrates processed on both of the two paths in the dual lanes operation and the number of circuit substrates processed on one of the two paths in the single lane operation of the number of circuit substrates planned for production in the substrate process system. a first process setting section configured to set a first process procedure for each of the plurality of process machines so as to equalize for each of the plurality of process machines a total process time that is the sum of a process time for a circuit substrate being transported on one of the two paths, and a process time for a circuit substrate being transported on the other of the two paths; a second process setting section configured to set a second process procedure for each of the plurality of process machines so as to equalize the process time for each of the plurality of process machines for a circuit substrate being transported on one of the two paths, and to equalize the process time for each of the plurality of process machines for a circuit substrate being transported on the other of the two paths; characterized by a procedure selecting section configured to select any one of the first process procedure and the second process procedure based on the number (S-A) of circuit substrates processed on both of the two paths in the dual lanes operation and the number of circuit substrates processed on one of the two paths in the single lane operation of the number of circuit substrates planned for production in the substrate process system.