CodingTrain / CodingTrain/Suggestion-Box

[Coding Challenge Suggestion] [Nature of Code] Antz!

Ouverte
#449 0 commentaires 1 réaction 0 personnes assignées Voir sur GitHub
Langage dominant
Aucune donnée de langage
Étoiles
570
Forks
85
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Here's a Coding Challenge Suggestion/Project:

The goal of "Antz" is to show that from a very simple set of rules, repeated by many agents (here virtual ants!), a complex task can be executed.

For "Antz" the basic rules are:

when not carrying food:
- search randomly (e.g. Gaussian randomness) ; they start from the nest.
- if some food is found then pick it up
- else if a 'strong enough' pheromone trail is found then try to follow it

when carrying food:
- go back to the nest in the shortest possible way
- leave a pheromone trail behind
- if the nest is reached, put the food down.

The pheromone trail fades away as the time goes by. I would make the trail not a single pixel wide line, but instead a few pixels wide with a gradient from the ant actual path. The pheromones from several ants accumulate.
A food source disappears when empty (several sources are generated when starting).
______________________________
In a further/2nd version, some obstacles could be added to show that the ants "choose" the shortest way around an obstacle, due to the fact that the short path has a more dense pheromone trail than the longest which eventually gets discarded. (This principle is studied in the data routing/networking field).
______________________________
My own amateur example can be found here : https://github.com/fphenix/Antz

Cheers!

Fred L.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Begin by reviewing the linked Antz example and the listed carrying, searching, and pheromone rules. Define the simulation scope, including food sources, fading and accumulated trails, and decide what observable behavior demonstrates completion; obstacle routing is explicitly a later version.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Domaine
ai
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.