<p>Scheduling is an important problem in artificial intelligence and operations research. In production processes, it deals with the problem of allocation of resources to different tasks with the goal of optimizing one or more objectives. Job shop scheduling is a classic and very common scheduling problem. In the real world, shop environments dynamically change due to events such as the arrival of new jobs and machine breakdown. In such manufacturing environments, uncertainty in shop parameters is typical. It is of vital importance to develop methods for effective scheduling in such practical settings. Scheduling using heuristics like dispatching rules is very popular and suitable for such environments due to their low computational cost and ease of implementation. For a dynamic manufacturing environment with varying shop scenarios, using a universal dispatching rule is not very effective. But manual development of effective dispatching rules is difficult, time consuming and requires expertise. Genetic programming is an evolutionary approach which is suitable for automatically designing effective dispatching rules. Since the genetic programming approach searches in the space of heuristics (dispatching rules) instead of building up a schedule, it is considered a hyper-heuristic approach. Genetic programming like many other evolutionary approaches is computationally expensive. Therefore, it is of vital importance to present the genetic programming based hyper-heuristic (GPHH) system with scheduling problem instances which capture the complex shop scenarios capturing the difficulty in scheduling. Active learning is a related concept from machine learning which concerns with effective sampling of those training instances to promote the accuracy of the learned model. The overall goal of this thesis is to develop effective and efficient genetic programming based hyper-heuristic approaches using active learning techniques for dynamic job shop scheduling problems with one or more objectives. This thesis develops new representations for genetic programming enabling it to incorporate the uncertainty information about processing times of the jobs. Furthermore, a cooperative co-evolutionary approach is developed for GPHH which evolves a pair of dispatching rules for bottleneck and non-bottleneck machines in the dynamic environment with uncertainty in processing times arising due to varying machine characteristics. The results show that the new representations and training approaches are able to significantly improve the performance of evolved dispatching rules. This thesis develops a new GPHH framework in order to incorporate active learning methods toward sampling DJSS instances which promote the evolution of more effective rules. Using this framework, two new active sampling methods were developed to identify those scheduling problem instances which promoted evolution of effective dispatching rules. The results show the advantages of using active learning methods for scheduling under the purview of GPHH. This thesis investigates a coarse-grained model of parallel evolutionary approach for multi-objective dynamic job shop scheduling problems using GPHH. The outcome of the investigation was utilized to extend the coarse-grained model and incorporate an active sampling heuristic toward identifying those scheduling problem instances which capture the conflict between the objectives. The results show significant improvement in the quality of the evolved Pareto set of dispatching rules. Through this thesis, the following contributions have been made. (1) New representations and training approaches for GPHH to incorporate uncertainty information about processing times of jobs into dispatching rules to make them more effective in a practical shop environment. (2) A new GPHH framework which enables active sampling of scheduling problem instances toward evolving dispatching rules effective across complex shop scenarios. (3) A new active sampling heuristic based on a coarse-grained model of parallel evolutionary approach for GPHH for multi-objective scheduling problems.</p>