Goal: Implement Uniform Cost Search (UCS) and A* for pathfinding in the warehouse environment from problem 1.1, then compare their efficiency and optimality.
Tasks:
ucs_pathfinder.py):
astar_pathfinder.py):
reset(randomize=True) method from warehouse_env.py to generate 10 random configurationsDeliverables:
ucs_pathfinder.py: UCS implementation with statisticsastar_pathfinder.py: A* implementation with statisticscompare_search.py: script that runs both algorithms on 10 randomized warehouse configs and generates comparison plots/tablesGoal: Implement three local search algorithms (hill-climbing, simulated annealing, genetic algorithm) to optimize the placement of 20 storage racks in a 20ร20 warehouse grid, balancing travel distance and congestion avoidance.
Objective function: \[f(s) = \underbrace{\frac{1}{20} \sum_{i=1}^{20} d(\text{depot}, (x_i, y_i))}_{\text{Average travel distance}} + \underbrace{\lambda \cdot |\{i : d(\text{depot}, (x_i, y_i)) < 5\}|}_{\text{Congestion penalty}}\]
where \(\lambda = 2.0\) is the congestion weight. Minimize \(f(s)\) to find the layout that trades off short travel distance against overcrowding near the depot.
Tasks:
Deliverables: