better timing
This commit is contained in:
		| @@ -2,5 +2,5 @@ detour_factor: 1.4 | |||||||
| detour_corridor_width: 300 | detour_corridor_width: 300 | ||||||
| average_walking_speed: 4.8 | average_walking_speed: 4.8 | ||||||
| max_landmarks: 10 | max_landmarks: 10 | ||||||
| max_landmarks_refiner: 20 | max_landmarks_refiner: 30 | ||||||
| overshoot: 1.4 | overshoot: 1.8 | ||||||
|   | |||||||
| @@ -24,8 +24,8 @@ def test(start_coords: tuple[float, float], finish_coords: tuple[float, float] = | |||||||
|         nature=Preference(type='nature', score = 5), |         nature=Preference(type='nature', score = 5), | ||||||
|         shopping=Preference(type='shopping', score = 5), |         shopping=Preference(type='shopping', score = 5), | ||||||
|  |  | ||||||
|         max_time_minute=180, |         max_time_minute=100, | ||||||
|         detour_tolerance_minute=10 |         detour_tolerance_minute=0 | ||||||
|     ) |     ) | ||||||
|  |  | ||||||
|     # Create start and finish  |     # Create start and finish  | ||||||
| @@ -63,7 +63,7 @@ def test(start_coords: tuple[float, float], finish_coords: tuple[float, float] = | |||||||
|     logger.info("Optimized route : ") |     logger.info("Optimized route : ") | ||||||
|     for l in linked_tour : |     for l in linked_tour : | ||||||
|         logger.info(f"{l}") |         logger.info(f"{l}") | ||||||
|     logger.info(f"Estimated length of tour : {linked_tour.total_time}") |     logger.info(f"Estimated length of tour : {linked_tour.total_time} mintutes and visiting {len(linked_tour._landmarks)} landmarks.") | ||||||
|  |  | ||||||
|     # with open('linked_tour.yaml', 'w') as f: |     # with open('linked_tour.yaml', 'w') as f: | ||||||
|     #     yaml.dump(linked_tour.asdict(), f) |     #     yaml.dump(linked_tour.asdict(), f) | ||||||
| @@ -74,6 +74,6 @@ def test(start_coords: tuple[float, float], finish_coords: tuple[float, float] = | |||||||
| # test(tuple((48.8344400, 2.3220540)))       # Café Chez César  | # test(tuple((48.8344400, 2.3220540)))       # Café Chez César  | ||||||
| # test(tuple((48.8375946, 2.2949904)))       # Point random | # test(tuple((48.8375946, 2.2949904)))       # Point random | ||||||
| # test(tuple((47.377859, 8.540585)))         # Zurich HB | # test(tuple((47.377859, 8.540585)))         # Zurich HB | ||||||
| test(tuple((45.758217, 4.831814)))      # Lyon Bellecour | # test(tuple((45.758217, 4.831814)))      # Lyon Bellecour | ||||||
| # test(tuple((48.5848435, 7.7332974)))      # Strasbourg Gare | test(tuple((48.5848435, 7.7332974)))      # Strasbourg Gare | ||||||
| # test(tuple((48.2067858, 16.3692340)))      # Vienne | # test(tuple((48.2067858, 16.3692340)))      # Vienne | ||||||
|   | |||||||
| @@ -195,7 +195,7 @@ class Optimizer: | |||||||
|             for j, spot2 in enumerate(landmarks) : |             for j, spot2 in enumerate(landmarks) : | ||||||
|                 t = get_time(spot1.location, spot2.location) + spot1.duration |                 t = get_time(spot1.location, spot2.location) + spot1.duration | ||||||
|                 dist_table[j] = t |                 dist_table[j] = t | ||||||
|             closest = sorted(dist_table)[:20] |             closest = sorted(dist_table)[:25] | ||||||
|             for i, dist in enumerate(dist_table) : |             for i, dist in enumerate(dist_table) : | ||||||
|                 if dist not in closest : |                 if dist not in closest : | ||||||
|                     dist_table[i] = 32700 |                     dist_table[i] = 32700 | ||||||
|   | |||||||
| @@ -214,7 +214,7 @@ class Refiner : | |||||||
|             if self.is_in_area(area, landmark.location) and landmark.name not in visited_names: |             if self.is_in_area(area, landmark.location) and landmark.name not in visited_names: | ||||||
|                 second_order_landmarks.append(landmark) |                 second_order_landmarks.append(landmark) | ||||||
|  |  | ||||||
|         return take_most_important.take_most_important(second_order_landmarks, len(visited_landmarks)) |         return take_most_important.take_most_important(second_order_landmarks, int(self.max_landmarks_refiner*0.75)) | ||||||
|  |  | ||||||
|  |  | ||||||
|     # Try fix the shortest path using shapely |     # Try fix the shortest path using shapely | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user