I am trying to implement minimax with alpha-beta pruning for a checkers game in Java. My minimax algorithm works perfectly. My code runs with the alpha-beta code in place. Unfortunately, when I play 1000 games vs the standard minimax algorithm, the alpha-beta algorithm always comes out behind by 50 games or so. Since alpha-beta pruning should not be reducing the quality of the moves, just th
我正在尝试用Java的alpha-beta修剪来实现一个跳棋游戏的minimax。 我的minimax算法完美运作。 我的代码与alpha-beta代码一起运行。 不幸的是,当我玩标准极小极小算法的1000场比赛时,alpha-beta算法总是落后50场左右。 由于alpha-beta修剪不应该降低移动的质量,只需要花费时间来实现它们,就必须有错误。 但是,我已经拿出笔和纸,并绘制假设的叶节点值,并使用我的算法来预测它是否会计算正确的最佳移动,并且看起来没
I have to implement a Reversi game for Android. I have managed to implement all the game, is functional, but the problem is that I don't have an AI. In fact, at every move the computer moves in the position that achieves him the highest number of pieces. I decided to implement and alpha-beta pruning algorithm. I did a lot of research on the internet about it, but I couldn't come to a
我必须为Android实施Reversi游戏。 我设法实现了所有的游戏,都是功能性的,但问题是我没有AI。 事实上,每一次移动计算机移动的位置,达到他的最高件数。 我决定实施alpha-beta修剪算法。 我在互联网上做了大量的研究,但我无法得出最终结论如何去做。 我试图实现一些功能,但我无法达到预期的行为。 我的棋盘存储在班级板(在这个班级内,每个玩家占用的棋子存储在一个二维int数组中)。 我附上了一个小图(对于它的
Not sure if this is possible, but can I access the raw bytes of a compact disc using Java? If so could you provide a sample of code please? I am using Windows and don't mind platform specific code. I'm pretty sure you can't do it in Java. You will have to write native C code using Windows API (start with CreateFile as described here) and then call it using JNI from Java. 你需要
不知道这是否可行,但我可以使用Java访问光盘的原始字节吗? 如果是的话,你能提供一个代码样本吗? 我使用的是Windows,并不介意特定于平台的代码。 我很确定你不能用Java来做。 您必须使用Windows API编写本机C代码(如此处所述,以CreateFile开头),然后使用来自Java的JNI调用它。 你需要用平台特定的API来询问操作系统 - 在Linux下,最有可能的是一个/ dev文件,
I'm implementing a simple checkers game (java applets as clients + servlet) where two players can connect to the servlet and play. As I'm just beginning with applet-servlet programming, I have some problems with the proper communication. Let's suppose the game begins and first player moves. Then I have to send his move to the servlet which should inform the other player. And here
我正在实现一个简单的跳棋游戏(Java applets as clients + servlet),其中两个玩家可以连接到该servlet并进行游戏。 由于我刚开始使用applet-servlet编程,所以我在正确的通信方面遇到了一些问题。 假设游戏开始并且第一个玩家移动。 然后,我必须将他的举动发送给应通知其他玩家的servlet。 在这里我不知道该怎么做。 servlet如何将接收到的数据传递给另一个applet,而不是发送它的那个? servlet如何以及在何处保存与
I've been trying to work out how to approach this problem but I don't know where to start. I have an game applet written in Java that I'm trying to make multi-player across a network. At the moment it is a standalone application but eventually it needs to be on some sort of web page where clients can access it through a browser and play against each other. I was thinking that eac
我一直在努力解决如何解决这个问题,但我不知道从哪里开始。 我有一个用Java编写的游戏applet,我试图通过网络制作多人游戏。 目前它是一个独立的应用程序,但最终它需要在某种网页上,客户可以通过浏览器访问它并相互对抗。 我一直在想,每个客户端小程序都可以使用带有一个在tomcat服务器上不断运行的小程序的套接字进行通信。 服务器上的这个小程序将处理传入套接字连接,创建新线程处理每个连接,维护连接客户端列表以
I have a general question concerning client-server design. We have a Java server with Spring, a GWT client program and some HTTP-servlets for our site. At the moment we also want to develop an applet which would communicate with that server in such a way GWT-client and site requests do. Is it a good idea to communicate with the server from applet by RMI? Ie to create some Remote services, r
我有一个关于客户端 - 服务器设计的一般问题。 我们有一个带有Spring的Java服务器,一个GWT客户端程序和一些用于我们站点的HTTP-servlet。 目前我们还想开发一个applet,它可以通过GWT客户端和站点请求的方式与服务器进行通信。 通过RMI从applet与服务器通信是否是一个好主意? 即创建一些远程服务,注册他们与Spring并从小程序调用他们? 提前致谢! 当然,这是RMI最初的主要使用案例之一。 当然,Spring使得RMI非常
here is the structure of my war file. MyApp.war WEB-INF classes/com/info/App.java classes/application.properties lib/ META-INF test just before deployment of this war to tomcat, Ops team will need to update the application.properties file. I prefer not to explode. but just to update the war and leave for tomcat to explode during start up I
这里是我的战争档案的结构。 MyApp.war WEB-INF classes/com/info/App.java classes/application.properties lib/ META-INF test 就在将这场战争部署到tomcat之前,Ops团队将需要更新application.properties文件。 我不喜欢爆炸。 但只是为了更新战争并在启动期间让tomcat爆炸 我试过这个 jar uvf MyApp.war /var/data/prod/application.properties 在执行此命令后
I am using the Ant wldeploy task to deploy a Java Web Service, packaged as a WAR file, to a WebLogic Server. Everything is working as expected except the WAR file is being uploaded to WLDomain/AdminUploadLocation/warFileName/app/warFile.war where WLDomain - name of my WebLogic Server Domain AdminUploadLocation - location to upload WAR files specified by Admin Server configuration wa
我正在使用 Ant wldeploy 任务,将打包成WAR文件的Java Web Service部署到WebLogic Server。 除WAR文件正在上传到WLDomain / AdminUploadLocation / warFileName / app / warFile.war之外,所有内容都按预期工作 哪里 WLDomain - 我的WebLogic Server域的名称 AdminUploadLocation - 用于上载由管理服务器配置指定的WAR文件的位置 warFileName - 战争文件的名称作为目录 app - 名为“app”的目录 warFile.wa
I Have no problem in deploying an 'app.war' file when copied into the below deployments folder : "jboss-as-7.0.0.Finaljboss-as-7.0.0.Finalstandalonedeployments"; JBoss7 would deploy it properly. I would like to do the same for an exploded folder 'app'(ie extracted app.war). Apache Tomcat works properly with an exploded folder in its deployment directories, but am u
我在复制到下面的部署文件夹时部署'app.war'文件没有问题: “jboss-as-7.0.0.Final jboss-as-7.0.0.Final 独立部署”; JBoss7会正确部署它。 我想为爆炸文件夹“应用”(即提取的app.war)做同样的事情。 Apache Tomcat可以在其部署目录中的展开文件夹中正常工作,但无法为JBoss执行相同的操作。 我确实在JBoss控制台中部署了扫描程序auto-deploy-exploded ='true'; 我确实在部署目录中创建了'app.
Is it possible to output the current stacktrace with method signatures ? I'm trying to debug some obfuscated code that has a ton of methods with the same name that just differ in arguments and return type. Some things that will not work: Thread.currentThread().getStackTrace(); new Throwable().getStackTrace(); // etc.. Nope, but you could instrument with AspectJ while troubleshooting to g
是否有可能用方法签名输出当前的堆栈跟踪? 我试图调试一些混淆的代码,它有很多方法具有相同的名称,只是参数和返回类型不同。 有些事情是行不通的: Thread.currentThread().getStackTrace(); new Throwable().getStackTrace(); // etc.. 不,但您可以在排除故障的情况下使用AspectJ进行测试,以获得更完整的信息而无需添加日志记录。 根据您尝试调试的内容以及您对涉及的任何数据的了解程度,您可能会精确定位或多或少