Deadline | November 21, 2021, 23:59 PST |
Points | 3 |
Label in BRUTE | t2a-tspn |
Files to submit | archive with SOMSolver.py |
Resources | B4M36UIR_t2_resource_pack |
Download provided codes and run the main script t2a_tspn.py
From Lecture 05:
Utilize 'alternate goal' concept for solving TSP with neighborhoods (TSPN). In each epoch, the neurons are adapted towards the goals which inhibits them. But, in the TSPN, the neurons are adapted to the closes point in the specific goal neighborhood. Therefore, this concept enables to find shorter solutions, see the right image and the following GIF with SOM evolution.
Click on the following image to see the SOM evolution in GIF.
select_winner(…)
which select the closest non-inhibited neuron to the target. Inhibit the selected neuron such that it cannot be selected twice.
learn_epoch(…)
. If only the selected neuron is adapted, the final tour does not converge the to final solution. Thus a neighborhood of several neurons is also adapted towards the goal. Use 20% of neurons on both side and compute the learning parameter by the provided neighborhood function. Notice the distance is discrete and measured as number of neurons from the selected neuron.
update_goal_potition(…)
to utilize the concept of alternate goal
. The closest point on the boundary of the neighborhood region is selected to shorten the final tour. If the selected neuron is already in the region, the alternate goal
is set directly to its position.
import SOMSolver as som som.animate = False