Find Jobs
Hire Freelancers

AI for software robots (no hardware)

$30-5000 USD

Fechado
Publicado há mais de 15 anos

$30-5000 USD

Pago na entrega
Using Java, build an application which allows one or more software robots to exist and interact within a virtual 2d maze. The maze is to be either randomly generated, or loaded from an external definition file. Once loaded the robots will need to undertake one of various behaviors (such as flocking, avoidance) and undertake simpe tasks such as finding objects in the maze or an exit. The maze and the robots should be simply animated on a html page using simple javascript (use the minimum js possible - just enough to display the 2d maze and the robots). ## Deliverables This relies on you having some AI gaming experience, please do not bid if you do not. Using Java, build an application which allows one or more software robots to exist and interact within a virtual 2d maze or arena. The maze / arena is to be either randomly generated, or loaded from an external definition file. The maze may be of any size, but for working tests assume 50 x 50 tiles. Once loaded the robots will need to undertake one of various behaviours (such as flocking, avoidance) and undertake simple tasks such as finding objects in the maze or an exit. The robots should learn the structure of the maze, and the location of objects in the maze. This precludes the use of any random algorithm for the navigation. Once the structure is discovered the robot must be able to find the shortest route between two points. The method used to understand the structure and to navigate must be pluggable so that it is possible to add new algorithms. The algorithms must adapt to the possibility of changes in the structure of the maze such as the removal or addition of a wall. The robots must be configurable separately - so all pluggins, and attributes are specific to each robot. Configuration of this is via XML files, some standard java mechanism must be used for this, but I specifically forbid the use of Castor. The robots need to implement the following behaviours: * Discovery & Search for Objects - the primary aim is to find the Objects as quickly as possible. If a robot finds and passes over all the Objects before the other and without capture then the program will finish. Robots will "know" at the start how many objects there are (so they need to discover them, not discover how many there are). * Avoidance - once the robot is aware of the other robot it will attempt to avoid the other [login to view URL] robot should act intelligently to avoid the chaser and make efforts to avoid being cornered in a dead-end. While using Avoidance behaviour the Search for Objects behaviours should be used where a path can be found that both avoids capture and collects and Object; the AI should weigh these behaviours according to how close the robot is to achieving the Search for Objects goal. * Capture - once the robot is aware of the other robot it will attempt to move to the same tile as the other robot. If a robot manages this it has "captured" the other robot and the program will finish. The Chase must implement Path Following and make use of the Maze itself to corner the other robot. While using Capture behaviour the Search for Objects behaviour should also be considered by the AI. Robots move either forwards or backwards. They have a property that determines their base speed and can accelerate forwards to 3 times that if they have the space (so if a robot has a base of 1 tile then it can accelerate in 3 turns from 0 tiles/second to 1 to 2 to 3 tiles per second. Robots can stop instantly. Robots can reverse at their base speed only. They can turn at a speed of either 90 or 180 degrees per second (this is a configurable property). Robots can "see" forwards for a configurable distance at an angle of 45% to either side of the direction they are facing. They can see for 1 tile in all directions. Robots cannot see over or through walls, so line of site must be calculated. This effectively means that robots can only move N, E,S,W. The maze and the robots should be simply animated on a html page using simple java script (use the minimum js possible - just enough to display the 2d maze and the robots and objects).Use very simple icons for the robots, internal and external walls and objects, spend minimal time on this aspect, it should be sufficient to display the robots and their movement for testing purposes. The page should also display debug information about the current behaviour of each robot. I intend to use this as a learning tool, the code emphasis must be on clear code with good logging and debug. You should expect follow on work. --- Addition --- In response to a clarification request... There are 2 aspects to this: * The core of the AI logic - this must be Java and run server side. * The display of the robots in the maze and their movements - this must be HTML and java script. This must have no AI logic, and is for the visualisation of the behaviors.
ID do Projeto: 3367322

Sobre o projeto

3 propostas
Projeto remoto
Ativo há 15 anos

Quer ganhar algum dinheiro?

Benefícios de ofertar no Freelancer

Defina seu orçamento e seu prazo
Seja pago pelo seu trabalho
Descreva sua proposta
É grátis para se inscrever e fazer ofertas em trabalhos
3 freelancers are bidding on average $1.555 USD for this job
Avatar do Usuário
See private message.
$2.539,15 USD em 14 dias
1,5 (1 avaliação)
2,7
2,7
Avatar do Usuário
See private message.
$170 USD em 14 dias
0,0 (2 avaliações)
0,0
0,0
Avatar do Usuário
See private message.
$1.955 USD em 14 dias
0,0 (0 avaliações)
0,0
0,0

Sobre o cliente

Bandeira do(a) UNITED KINGDOM
United Kingdom
0,0
0
Membro desde set. 15, 2008

Verificação do Cliente

Obrigado! Te enviamos um link por e-mail para que você possa reivindicar seu crédito gratuito.
Algo deu errado ao enviar seu e-mail. Por favor, tente novamente.
Usuários Registrados Total de Trabalhos Publicados
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Carregando pré-visualização
Permissão concedida para Geolocalização.
Sua sessão expirou e você foi desconectado. Por favor, faça login novamente.