Patent ID: 8498733

Claim:
A method of programming a machine tool system, the method comprising the steps of: receiving a defined part program which includes a plurality of operation sets, each operation set including a plurality of operations, each operation specifying a tool path for the operation and a tool for the operation and belonging to one of a plurality of operation types, the defined part program further including a tool change reduction instruction for each of the plurality of operation types, wherein a sequential execution of the defined part program by the machine tool system requires a first number of tool changes; determining a second execution sequence of the operations to require a second number of tool changes by the machine tool system, the second number of tool changes being less than the first number of tool changes, wherein in the second execution sequence an execution order of the plurality of operations within a first operation set is maintained as provided in the defined part program, an execution order of the plurality of operations within a second operation set is maintained as provided in the defined part program, an execution order of each of the plurality of operation types is either maintained or may not be maintained depending upon the tool change reduction instruction corresponding to the operation type, and at least one operation from the second operation set is executed subsequent to a first operation of the first operation set and prior to a second operation of the first operation set; and controlling the machine tool system to execute the second execution sequence of the operations, wherein the machine tool system performs the second number of tool changes during the execution of the reordered execution of the operations.