Comece com uma solução válida x.
x ← solução inicialMETAHEURÍSTICAS CLÁSSICAS · SUBTÓPICO 01
Hill Climbing examina soluções vizinhas e troca o estado atual por uma alternativa melhor. É simples, rápido e útil, mas enxerga apenas o relevo ao seu redor.
aceitar se f(x′) > f(x)01 · MECANISMO CENTRAL
Comece com uma solução válida x.
x ← solução inicialGere soluções próximas por um movimento.
N(x)Compare a qualidade dos candidatos.
f(x′) versus f(x)Aceite uma melhora ou encerre a subida.
x ← x′02 · ESCOLHA DO VIZINHO
Avalia menos vizinhos e pode avançar rapidamente.
first improvementGasta mais por ciclo para realizar o passo mais promissor.
steepest ascentAdiciona variedade sem aceitar movimentos piores.
P(x′) ∝ ganho(x′)03 · LIMITES DA VISÃO LOCAL
Nenhum vizinho melhora, embora exista outra região superior.
A função não oferece direção clara para continuar.
Movimentos isolados não acompanham uma direção diagonal estreita.
04 · LABORATÓRIO INTERATIVO
A paisagem possui dois picos. Aumente o raio para incluir outra bacia na vizinhança e alcançar o pico global.
A faixa violeta representa N(x); os pontos menores são candidatos avaliados.
05 · ESCAPES PRÁTICOS
O resultado depende diretamente da solução inicial.
Execuções independentes cobrem diferentes bacias de atração.
Um salto maior fornece outra região para a busca local refinar.
06 · NO CÓDIGO
function hillClimbing(inicial) {
let atual = inicial;
while (true) {
const vizinho = melhorDe(vizinhanca(atual));
if (fitness(vizinho) <= fitness(atual)) break;
atual = vizinho;
}
return atual;
}Escolha um candidato válido.
Aplique movimentos pequenos.
Mantenha a trajetória ascendente.
Retorne quando nenhum vizinho superar o atual.
PRÓXIMO SUBTÓPICO
O próximo método aceitará algumas pioras para atravessar vales e escapar de ótimos locais.
Continuar estudo →