from just_time_windows.google_solver.google_model import evaluate_google_model from just_time_windows.Actor.actor import Actor as NN_Actor from just_time_windows.build_data import Raw_VRP_Data from just_time_windows.dataloader import VRP_Dataset def main(): # إعداد مجموعة بيانات صغيرة للاختبار dataset = VRP_Dataset(dataset_size=10, num_depots=1, num_nodes=12) # استخراج دفعة واحدة للاختبار batch = dataset.get_batch(start_index=0, batch_size=10) # تهيئة نموذج الشبكة العصبية nn_actor = NN_Actor(model=None, num_movers=10, num_neighbors_action=1) # حساب مخرجات NN nn_output = nn_actor(batch) total_time_nn = nn_output['total_time'] arrival_times_nn = nn_output['arrival_times'] # استخدام Google OR-Tools لتقييم نفس البيانات google_output = evaluate_google_model(dataset) # طباعة النتائج للمقارنة print("Arrival times (NN):") print(arrival_times_nn) print("\nAverage Total Time (NN Actor):", total_time_nn.mean().item()) print("Average Total Time (Google OR-Tools):", google_output.mean().item()) if __name__ == '__main__': main()