Как создать уникальное ограничение для нескольких столбцов в SQL Server

Во-первых, решите, нужно ли вам оптимизировать, потому что любая оптимизация усложнит ваш код и для небольшого количества целей ваше текущее решение, вероятно, отлично подходит для простой эвристики, такой как расстояние Манхэттена.

Прежде чем сделать первый шаг, вычислите эвристику для каждой цели. Помните ближайшую цель как выбранную цель и двигайтесь к ней, но вычтите максимально возможный прогресс по отношению к любой цели со всех остальных расстояний. Вы можете считать это второе значение «метаэвристическим»; это оптимистичная оценка эвристики для других целей.

На последующих шагах вычислите эвристику для текущей цели и любые цели с «метаэвристикой», которая меньше или равна эвристике. Другие цели не могут быть лучше эвристики, поэтому вам не нужно их вычислять. Ближайшей целью станет новая текущая цель; двигайтесь к нему, вычитая максимально возможный прогресс от других. Повторяйте, пока не достигнете цели.

16
задан Neilski 1 August 2012 в 07:46
поделиться