相关疑难解决方法(0)

编程理论:解决迷宫

解决迷宫的可能方法有哪些?
我有两个想法,但我认为它们不是很优雅.

基本情况:我们有一个矩阵,在这个矩阵中的元素,因为它代表一个迷宫的方式是有序的,在一个途径,一个出.

我的第一个想法是将一个机器人穿过迷宫,沿着一侧,直到它离开迷宫.我认为这是一个非常缓慢的解决方案.

第二个通过标记1,检查它可以去(上,右,下,左)每个连续的项目选择的一种方式,它有继续它的路径.这甚至比第一个慢.

当然,如果我在每个交叉点使两个机器人多线程,它会更快一些,但这也不是最好的方法.

需要更好的解决方案来通过迷宫发送机器人.

编辑
第一:谢谢你的好答案!

我的问题的第二部分是:如果我们有一个多维图,该怎么办?有没有特殊的做法,或Justin L.的答案也适用于此?
我认为这不是这种情况的最佳方式.

第三个问题:
这些迷宫求解器算法中哪一个是最快的?(纯粹假设)

algorithm maze

67
推荐指数
4
解决办法
8万
查看次数

使用R将jpg转换为greyscale csv

我有一个JPG图像的文件夹,我正在尝试为一个讨人喜欢的比赛进行分类.我已经看到Python中的一些代码,我认为会在论坛上实现这一点,但是想知道是否可以在R中完成?我正在尝试将许多jpg图像的这个文件夹转换为csv文件,其中数字显示每个像素的灰度,类似于手数字识别器http://www.kaggle.com/c/digit-recognizer/

所以基本上是j中的jpg - > .csv,显示了用于分类的每个像素的灰度数.我想在它上面放一个随机森林或线性模型.

csv jpeg r grayscale kaggle

7
推荐指数
1
解决办法
4183
查看次数

启发式的具体例子

什么是启发式的具体例子(例如Alpha-beta修剪,例如:tic-tac-toe以及它是如何适用的).我已经看到了一个关于什么是启发式的回答问题,但我仍然没有得到它使用估计的东西.你能给我一个启发式的具体例子以及它是如何工作的吗?

algorithm artificial-intelligence heuristics

6
推荐指数
1
解决办法
3664
查看次数

如何在大空间尺度上加速A*算法?

http://ccl.northwestern.edu/netlogo/models/community/Astardemo,我通过使用网络中的节点来定义最低成本路径来编码A*算法.代码似乎有效,但是当我在大空间尺度上使用它时它太慢了.我的景观有1000个补丁x 1000个补丁,1个补丁= 1个像素.即使我减少400补丁x 400补丁1补丁= 1像素,它仍然太慢(我不能修改我的景观低于400补丁x 400补丁).这是代码:

to find-path [ source-node destination-node] 

let search-done? false
let search-path []
let current-node 0
set list-open []
set list-closed []  
let list-links-with-nodes-in-list-closed []
let list-links []

set list-open lput source-node list-open
while [ search-done? != true]
[    
ifelse length list-open != 0
[
  set list-open sort-by [[f] of ?1 < [f] of ?2] list-open 
  set current-node item 0 list-open 
  set list-open remove-item 0 list-open 
  set list-closed lput current-node list-closed
  ask current-node
  [ …
Run Code Online (Sandbox Code Playgroud)

algorithm performance a-star netlogo

5
推荐指数
3
解决办法
4482
查看次数

R - 如何通过光栅图像找到最低成本路径?

如何通过栅格图像数据找到非线性路径?例如,最低成本算法?起点和终点是已知的,并给出如下:

起点=(0,0)
终点=(12,-5)

例如,通过(灰度)光栅图像提取蜿蜒河流的近似路径.

# fake up some noisy, but reproducible, "winding river" data
set.seed(123)
df <- data.frame(x=seq(0,12,by=.01), 
                 y=sapply(seq(0,12,by=.01), FUN = function(i) 10*sin(i)+rnorm(1)))

# convert to "pixels" of raster data
# assumption: image color is greyscale, only need one numeric value, v
img <- data.frame(table(round(df$y,0), round(df$x,1)))
names(img) <- c("y","x","v")
img$y <- as.numeric(as.character(img$y))
img$x <- as.numeric(as.character(img$x))


## take a look at the fake "winding river" raster image...
library(ggplot2)
ggplot(img) +
  geom_raster(aes(x=x,y=y,fill=v))
Run Code Online (Sandbox Code Playgroud)

输出图像来自ggplot命令

r raster path-finding

5
推荐指数
1
解决办法
329
查看次数