Gnubert Peer to Peer Evolution-开源

  • s9_452228
    了解作者
  • 15.3KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-06-06 11:02
    上传日期
Gnubert 将是一个系统,可以利用互联网上许多计算机的能力来解决使用进化技术的问题。 任何用户都可以定义一个问题,系统将尝试解决它。
Gnubert.zip
  • GnubertClient.class
    2.5KB
  • maze
    1.5KB
  • hosts
    51B
  • HostCatcher.class
    1.4KB
  • ClientConnection.class
    2.2KB
  • LinkedSet.class
    1.3KB
  • Cartesian.class
    218B
  • GnubertServer$IncomingConnectionHandler.class
    3.5KB
  • GnubertServer.class
    1.8KB
  • Host.class
    1.5KB
  • README.txt
    4KB
  • hosts~
    66B
  • Gnubert.class
    6.2KB
内容介绍
This is still a very early version of Gnubert. It solves mazes defined in an ASCII file named maze. It is mostly just a demo of a genetic algorithm which shares work between machines. There is little which resembles the final goal of the project yet. I will not attempt to entirely describe Gnubert in this document. For that please go to http://gnubert.sourceforge.net. Instead I describe how to start the program and the two configuration files, maze and hosts. To run gnubert you will need either Sun's JRE, Kaffe, or some other Java virtual machine capable of running applications (not just applets). Just unpack the archive and type java Gnubert. Or, if you are on a Linux machine with java set up in misc_binaries support you can just type Gnubert.class. Future versions will be in a .jar file and include a startup script for Linux/Unix and maybe even a wrapper program for Windows. Gnubert will start by displaying the maze it is attempting to solve and then it will continually announce what generation it is on and what the average fitness level it is until it finds solutions. Then it will print out the solutions and wait to be stopped. The rest of this document describes how to change the maze and how to tell Gnubert to connect to other machines and share the work load. To define a maze consider it to be a grid. Each square of the grid is either a piece of wall which cannot be walked through or a piece of path which may be walked through. The start is always the top left square and the goal is the bottom right. Here is an example maze: ####### | # | | # # | | # | ####### The lines of '#'s on the top and bottom and the vertical lines of '|'s are just boundaries of the maze and are not actually represented in the file. The '#'s in the middle make up the walls and the blank spaces make up the paths. The first line of the maze file begins with the horizontal size of the maze and the second is the vertical size. So for the example it would be: 5 3 Each path space is represented by a zero, each wall space by a 1 so the example would be: 5 3 01000 01010 00010 Finally, each space gets it's own line so it is all spread out to: 5 3 0 1 0 0 0 0 1 0 1 0 0 0 0 1 0 Of course this is kind of a pain to enter in but maze solving was only meant to be an example application so I haven't put that much effort into that part of the program. I might make it better in the near future anyway. I have included an example maze file which I have deliberately written to be hard to solve for the genetic algorithm I am using. I have done this because I wanted it to take a while to complete so that I have more opportunity to debug various parts of code. There is also a hosts file which Gnubert uses to find other computers to help it look for solutions. It is formatted like this: host:port host:port host:port..... It comes with three hosts listed. Unforgettability.net, 127.0.0.1, and localhost. The first one points to my computer, the last two actually just point back at the machine you are running it on. They are only there so that your computer doesn't waste too much time trying to connect if you haven't given it anyone to connect to. If you have multiple machines you can add their IP addresses into the host file and they will work together to solve the maze. Future versions will ask the machines they connect to for the names of others to add to it's list. I am currently working on that feature. Eventually I will not allow Gnubert to connect back to itself but I will have it running all the time on Unforgettability.net to give out hostnames to connect to. To run gnubert you will need either Sun's JRE, Kaffe, or some other Java virtual machine capable of running applications (not just applets). Just unpack the archive and type java Gnubert. Or, if you are on a Linux machine with java set up in misc_binaries support you can just type Gnubert.class. Future versions will be in a .jar file and include a startup script for Linux/Unix and maybe even a wrapper program for Windows.
评论
    相关推荐
    • periodical:日历来跟踪您的月经并计算可能的肥沃日子
      期刊 日历来跟踪您的月经并计算可能的肥沃日子 ... 该程序是免费软件:您可以根据自由软件基金会发布的GNU通用公共许可证的条款(许可证的版本3)或(根据您的选择)任何更高版本来重新分发和/或修改它。 分发该程序是
    • GNU/Liberty Basic Compiler Collection-开源
      GLBCC是GNU编译器集合的前端。 GLBCC将Liberty Basic添加到GCC语言集合中,以便Liberty Basic代码可以直接编译为可执行文件。 由于GLBCC使用GCC,因此目标文件也可以与目标文件链接
    • admb:广告模型制作工具
      ADMB项目 ADMB-12.3 2021年3月7日发行 概述 ADMB(自动差分模型生成器)软件套件是用于非线性统计建模的环境,可实现快速的模型开发,数值稳定性,快速高效的计算以及高精度的参数估计。 AD Model Builder是围绕...
    • vs Cobol screen handler-开源
      vs Cobol屏幕处理程序将使用简单的元语言(使用标准文本文件)定义的屏幕转换为Cobol源代码,可以使用PERFORM语句进行访问。... 您可以根据自由软件基金会发布的GNU通用公共许可证v2.0的条款重新分发和/或修改它。
    • cuBERT:直接在NVIDIA(CUDA,CUBLAS)和Intel MKL上快速实现BERT推理
      直接在NVIDIA(CUDA,CUBLAS)和Intel MKL上快速实现BERT推理 直接在NVIDIA(CUDA,... Debian GNU / Linux 8(jessie) gcc(Debian 4.9.2-10 + deb8u1)4.9.2 CUDA:版本9.0,V9.0.176 MKL:2019.0.1.20181227
    • digi-approval:数字堪培拉挑战赛 - 审批系统
      该程序是免费软件:您可以根据自由软件基金会发布的 GNU 通用公共许可证(许可证的第 3 版或(由您选择)任何更高版本)的条款重新分发和/或修改它。 分发此程序是希望它有用,但不作任何保证; 甚至没有对适销性...
    • imb-encoder:用于编码 USPS IMB 跟踪号的库
      imb 编码器 这个库的目的是接收一个信息的对象并返回编码后的字符串。 用法 var encoder = require ( 'imb-encoder' ) ; var encodedString = encoder . encodeTrackingNumber ( ... 此逻辑归功于上的 Robert Mathews
    • java校招笔试题-programmer:如何成为一名程序员,罗伯特·里德
      该许可证的副本包含在标题为“GNU 自由文档许可证”的部分中。 2002年 奉献 致 Hire.com 的程序员。 目录 介绍 初学者个人技能 学习调试 如何通过拆分问题空间进行调试 如何消除错误 如何使用日志进行调试 如何理解...
    • robertbrignull-dependabot-test
      robertbrignull-dependabot-test
    • SIM800C_MQTT.rar
      使用SIM800C模块,使用MQTT协议,连接中国移动onenet平台,能实现数据的订阅、发布、存储等