Solving Flexible Job Shop Scheduling Problem based on Improved Genetic Algorithm