Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] New Cell Idea's #74

Open
TheBarret opened this issue Sep 23, 2023 · 1 comment
Open

[Feature Request] New Cell Idea's #74

TheBarret opened this issue Sep 23, 2023 · 1 comment

Comments

@TheBarret
Copy link

TheBarret commented Sep 23, 2023

I would like to throw in some idea's for cell variants, I used GPT to work out the mechanics in more details.


Logic Gate Cell

image

Description:
The Logic-Gate Cell is a versatile cell type that allows the organism to perform logical operations on incoming data. It combines various logic gates, including NOT, AND, OR, XOR, NAND, and more, into a single cell. This cell enhances the organism's ability to process information and make decisions based on logical conditions.

GUI:

  • A dropdown menu in the GUI lets users choose from available logical operations (e.g., AND, XOR) and configure the cell accordingly.

Mechanics:

  • The Logic-Gate Cell supports multiple logical operations, each corresponding to a specific input/output channel.
  • It can perform NOT, AND, OR, XOR, NAND, and other logical operations based on its configuration.
  • Each logical operation can have its own set of input and output channels.

Input/Output Mechanism (Sample):

  • Input 1: Input for the first operand of the logic gate operation.
  • Input 2: Input for the second operand of the logic gate operation (if applicable).
  • Output 1: Output channel for the result of the logic gate operation.

Usage Example:

  1. Neighboring cells send binary data to the Logic-Gate Cell's input channels.
  2. The Logic-Gate Cell performs the specified logical operation (e.g., AND, XOR) on the input data.
  3. The result of the logic operation is sent to the output channel (Output 1) and transmitted to neighboring cells.

Customization:

  • The Logic-Gate Cell can be configured to perform specific logical operations (e.g., AND, OR, XOR) based on user-defined settings.
  • The user can specify which logical operation should be executed by adjusting the cell's parameters.

Integration with Existing Cells:

  • The Logic-Gate Cell can be integrated into the organism's neural network, allowing it to make decisions, control movements, or respond to environmental conditions based on logical conditions.
  • It can work in conjunction with other cells, such as sensor cells for data input and muscle cells for executing actions based on logical outcomes.

Advantages:

  • Enables complex decision-making processes within the organism.
  • Supports a wide range of logical operations for versatile behavior.
  • Enhances adaptability and responsiveness to environmental cues.

The Logic-Gate Cell provides the organism with the capability to process data logically, make decisions based on conditions, and execute actions accordingly. It is a valuable addition for organisms aiming to exhibit intelligent behaviors.


Memory Cell

The Memory Cell is a specialized cell designed to store and recall information over time.
It acts as a form of data storage within the organism, allowing it to retain and retrieve data as needed.
This cell enhances the organism's ability to process information and adapt to changing conditions.

Mechanics:

  • The Memory Cell has two main functions: write and read.

  • Write Function: When activated (Input 1 set to 1)
    The Memory Cell can receive data from neighboring cells and store it for future use. The data to be stored is typically binary (0 or 1).

  • Read Function: When activated (Output 1 set to 1)
    The Memory Cell retrieves and outputs the stored data to neighboring cells. The retrieved data can then be used for various purposes by other cells.

Input/Output Mechanism:

  • Input 1 (Write data): This input channel allows neighboring cells to send data to the Memory Cell for storage. When Input 1 is set to 1, it indicates that data is available for writing. The Memory Cell will store the received data.
  • Output 1 (Read data): This output channel enables the Memory Cell to transmit the stored data to neighboring cells. When Output 1 is set to 1, it indicates that the Memory Cell is reading and sending out the stored data.

Usage Example:

  1. Neighboring cells send data to the Memory Cell by activating Input 1.
  2. The Memory Cell stores the received data.
  3. Other cells can request the stored data by activating Output 1.
  4. The Memory Cell responds by transmitting the stored data to requesting cells.

Capacity:

  • The Memory Cell can typically store a limited amount of binary data, such as a sequence of 0s and 1s.
    The specific storage capacity can be set as needed, depending on the organism's requirements.

Advantages:

  • Enhances the organism's ability to retain and utilize information.
  • Facilitates adaptability and decision-making based on historical data.
  • Enables more complex and intelligent behaviors in the organism's responses to its environment.

Integration with Existing Cells:

  • The Memory Cell seamlessly integrates with other cell types, allowing them to access and utilize stored data for their functions.
  • It can be used in conjunction with sensor cells to remember environmental cues, with neuron cells for decision-making, or with muscle cells for adaptive movements, among other possibilities.

A Memory Cell provides the organism with the capability to learn from experience, retain valuable information, and adapt more effectively to changing conditions.


Hibernation Cell

d417ba4be5c623dc58af5d35004cea2d

Description:
The Hibernation Cell is a specialized cell type that allows an organism to enter a dormant or hibernation state under certain conditions. This state conserves energy and reduces activity, providing advantages in survival during unfavorable environmental conditions or low energy availability.

Mechanics:

  • The Hibernation Cell can be configured to enter hibernation mode when specific conditions are met.
  • It can control the organism's energy consumption, activity level, and responsiveness.
  • The cell's behavior is adaptable and can be fine-tuned to the organism's requirements.

Input/Output Mechanism (Sample):

  • Input 1: Activation trigger for entering hibernation mode (e.g., low energy levels).
  • Output 1: Indicates the hibernation state (1 for active, 0 for hibernating).

Usage Example:

  1. The Hibernation Cell continuously monitors the organism's energy levels (level would be the sum of the entire genome).
  2. When energy levels drop below a predefined threshold (configured through the GUI), the cell triggers hibernation mode.
  3. During hibernation, the organism reduces its activity, conserves energy, and becomes less responsive to stimuli.
  4. When energy levels recover or environmental conditions improve, the Hibernation Cell exits hibernation mode and resumes normal activity.

Integration with Existing Cells:

  • The Hibernation Cell can be integrated into the organism's overall energy management strategy.
  • It can work in conjunction with energy-generating cells (e.g., Transmitter Cells) to optimize energy conservation and utilization.

Advantages:

  • Increases organism's chances of survival during energy scarcity or adverse environmental conditions.
  • Provides flexibility in energy management strategies.
  • Offers adaptability to different environmental scenarios.

Pheromone Cell

image

Description:
The Pheromone Cell is a specialized cell variant that allows organisms to leave a trail of pheromones as they move through their environment. This trail of pheromones serves as a form of communication and navigation for other cells within the organism. Cells with the Pheromone Cell variant can detect and follow these pheromone trails, enabling coordinated movement and decision-making within the organism.

Mechanics:

  • The Pheromone Cell emits and senses pheromone concentrations in its environment.
  • As the Pheromone Cell moves, it releases pheromones into its surroundings.
  • Pheromones persist for a certain duration and decay over time.
  • Other cells, equipped with specialized receptors, can detect and respond to pheromone concentrations in their proximity.

Input/Output Mechanism:

  • Input 1: Activation input to control pheromone emission (e.g., 1 for emitting, 0 for idle).
  • Output 1: Output channel for sensing pheromone concentrations in the environment.

Trail Pheromone Mechanics:

  • When activated (Input 1 set to 1), the Pheromone Cell releases pheromones into its surroundings.
  • Pheromone concentrations are detected through Output 1.
  • Cells equipped with Pheromone Receptor Cells can follow these pheromone trails to navigate and coordinate their actions.
  • Pheromones persist for a set duration before gradually decaying, allowing for dynamic trail formation.

Usage Example:

  1. A Pheromone Cell detects a valuable resource or identifies a path of interest.
  2. The Pheromone Cell activates (Input 1 set to 1) to release a trail of pheromones.
  3. Nearby cells equipped with Pheromone Receptor Cells sense the pheromone concentrations through their Input channels.
  4. Cells that detect the pheromone trail can follow it to reach the resource or destination.

Customization:

  • Users can customize the duration of pheromone persistence, influencing how long the trail remains detectable.
  • The activation threshold for emitting pheromones (e.g., Input 1 threshold) can be adjusted based on the desired behavior.

Integration with Existing Cells:

  • The Pheromone Cell can be integrated into an organism's network to enable coordinated movement and resource discovery.
  • Pheromone Receptor Cells, equipped on other cells, can receive and respond to pheromone concentrations, allowing them to follow trails and make decisions based on environmental cues.

Advantages:

  • Facilitates communication and coordination among cells within the organism.
  • Supports trail-based navigation and resource discovery.
  • Enhances the organism's ability to adapt to changing environments.

The Pheromone Cell variant, with its trail pheromone mechanics, introduces a unique form of communication and navigation within the organism. Cells can follow pheromone trails to reach specific destinations or coordinate their actions effectively.


Symbiotic Cell

New Project (35)(98)

Forms mutually beneficial relationships with other cells or organisms, sharing resources or protection.

Input 1: Establish symbiotic relationship (0 or 1)
Output 1: Symbiosis status (0 or 1)

Functionality:
The Symbiotic Cell specializes in establishing symbiotic relationships with neighboring cells or organisms within the simulated environment. These relationships are mutually beneficial and serve various purposes, such as resource sharing or protection.

Input 1 (Establish symbiotic relationship):

  • When Input 1 is set to 1, the Symbiotic Cell actively seeks neighboring cells or organisms with which to establish a symbiotic relationship. It assesses the compatibility and potential benefits of such a relationship.

  • Input 1 is set to 0 when the cell wants to terminate an existing symbiotic relationship or remain independent.

Output 1 (Symbiosis status):

  • When a symbiotic relationship is successfully established, Output 1 is set to 1, indicating the active symbiosis status. This means that the Symbiotic Cell is currently benefiting from the relationship.

  • Output 1 is set to 0 when the cell is not engaged in any symbiotic relationship or when an existing relationship is terminated.

Use Cases:

  1. Resource Sharing: In a symbiotic relationship, the Symbiotic Cell can share resources such as energy, nutrients, or genetic material with its partner. This enhances the survival and reproduction chances of both cells.

  2. Protection: Symbiotic relationships can also provide protection, where one cell may shield the other from predators or environmental threats. This protective behavior can be vital for the organism's overall survival.

  3. Genetic Exchange: Some symbiotic relationships involve the exchange of genetic material, promoting genetic diversity and potentially leading to the evolution of new traits or abilities.

  4. Coordinated Activities: Symbiotic partners may coordinate their activities, such as hunting, defense, or foraging, to increase their efficiency in the environment.

The Symbiotic Cell's ability to establish and maintain these mutually beneficial relationships adds complexity and strategic depth to the simulated organisms, enabling them to adapt and thrive in diverse environmental conditions.

@RichardThurbin
Copy link

Hey team. I am currently working on a Masters in AI and am looking at what to do for a project. The work you guys have done here looks really good and I love the principle and architecture of how you have implemented the evolutionary model. It also looks beautiful!

Looking at this cell feature list, I was thinking what was missing was a memory cell and see you are already way ahead of me!

Would you be interested in me contributing to the project and developing the memory cell? I would be doing this in the context of seeing how memory supports a cognitive architecture for machine consciousness and the evolutionary benefits this has for organisms. Here is an example paper looking in to this: http://arxiv.org/abs/2203.17255

Here is my linked in profile if you are interested in my background: https://www.linkedin.com/in/richardthurbin/ plus my you can see my GitHub profile but most of the code I have written was closed source.

Let me know your thoughts. I don't know if this would be a suitable project yet but wanted your feedback before I submit the initial proposal.

Regards, Richard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants