Пример #1
0
            self.epsilon *= self.epsilon_decay

    def load(self, name):
        self.model.load_weights(name)

    def save(self, name):
        self.model.save_weights(name)


if __name__ == "__main__":
    env = TMSimEnv()
    partition_list = {}
    # for i in range(3):
    #     partition_list[i]=Partition(i, 0.2*(i+1))
    g = Generation()
    partition_list =g.generate_partitions(20)
    print 'Number of partitions:'+str(len(partition_list))
    env.make(partition_list, 0.6)
    state_size = env.get_state_size()
    action_size = env.get_action_size()
    agent = DQNAgent(state_size, action_size)
    # agent.load("./save/cartpole-dqn.h5")
    done = False
    batch_size = 32



    wFile = open('Result_Diff_Task.txt','w')
    for e in range(EPISODES):
        state = env.reset()
        r = 0
Пример #2
0
    policies = ["best_fit", "first_fit", "worst_fit", "almost_worst_fit"]  # ,
    #policies = ["worst_fit"]
    schedulability = []
    total_jobs = []
    failed_jobs = []
    ratio = []
    g = Generation()
    #initialize counters
    for i in range(len(policies)):
        schedulability.append(0)
        total_jobs.append(0)
        failed_jobs.append(0)
        ratio.append(0)
    for i in range(repeat_times):
        partition_list = g.generate_partitions(sum_af)
        largest_aaf = max(partition_list, key=lambda x: x.af).af
        sum_aaf = 0
        for p in partition_list:
            sum_aaf += p.aaf
        print(sum_aaf)
        task_list = g.generate_tasks(load_ratio * sum_aaf, False, 0.5, 0,
                                     largest_aaf)
        for j in range(len(policies)):
            temp_partition_list = copy.deepcopy(partition_list)
            temp_task_list = copy.deepcopy(task_list)
            temp_fail, temp_total = run_test(temp_partition_list,
                                             temp_task_list, pcpu_num,
                                             simulation_time, policies[j])
            while temp_fail is None or temp_total is None:
                #print("not schedulable")