gScore = inf(mapSize);
时间: 2024-04-03 12:30:34 浏览: 30
这行代码是在地图上创建一个与地图大小相同的数值型数组gScore,并将其所有元素初始化为inf。在A*算法中,gScore数组用于存储从起点到每个节点的实际代价,即起点到当前节点的实际距离。将gScore中的所有元素初始化为inf,是因为在搜索过程开始时,尚未访问任何节点,因此起点到任何节点的实际代价都是未知的。在搜索过程中,gScore数组中的元素会被动态修改,以反映起点到每个节点的实际代价。
相关问题
if ~islogical(map) error('MAP must be logical') end if ~isa(costs, 'double') error('COSTS must be double') end % Avoid div by zero costs(costs == 0) = eps; % Normalize such that smallest cost is 1. costs = costs / min(costs(:)); % default return - empty for failure case final = []; mapSize = size(map); mapNumEl = numel(mapSize); % Initialize the open set, with START openSet = false(mapSize); openSet(start) = true; % Initialize closed set. Closed set consists of visited locations on % the map closedSet = false(mapSize); cameFrom = zeros(1, mapNumEl); gScore = inf(mapSize); gScore(start) = 0; % Linear index -> row, col subscripts for the goal [gr, gc] = ind2sub(mapSize, goal); fScore = inf(mapSize); fScore(start) = compute_cost(mapSize, start, gr, gc); S2 = sqrt(2);
这段代码是一个 A* 算法的实现,用于在二维逻辑地图上找到从起点到终点的最短路径。其中,map 表示逻辑地图,costs 表示移动到每个位置所需的代价,start 表示起点,goal 表示终点。该算法使用 openSet 和 closedSet 两个集合来记录搜索过程中的开放节点和关闭节点。在搜索过程中,根据当前节点的代价和预期代价,选择下一个要扩展的节点,直至找到终点或无法继续扩展为止。
fScore = inf(mapSize);
这行代码看起来像是在初始化一个名为 fScore 的二维数组,数组大小与地图大小相同,并且将数组中所有元素的值都设置为正无穷大。这可能是在实现某些路径规划算法的时候,用于记录每个节点的 f 值,例如 A* 算法中的 f(n)=g(n)+h(n) 公式中的 f 值。在初始化时将所有节点的 f 值设为正无穷大,可以确保在算法执行过程中,所有的 f 值都可以被正确地更新。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)