Skip to content

Commit bf71f71

Browse files
committed
update the README
1 parent 35cce63 commit bf71f71

File tree

1 file changed

+61
-23
lines changed

1 file changed

+61
-23
lines changed

README.md

Lines changed: 61 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,65 @@
11
# SAIS: Symbiotic Artificial Immune Systems
22

3-
## Introduction
4-
SAIS (Symbiotic Artificial Immune Systems) is a novel Artificial Immune System inspired by symbiotic relationships observed in biology. It leverages the three key stages of symbiotic relationships—mutualism, commensalism, and parasitism—for population updating, as seen in the Symbiotic Organisms Search (SOS) algorithm. This approach effectively tackles the challenges associated with large population sizes and enhances population diversity, issues that traditional AIS and SOS algorithms struggle to address efficiently. This project aims to provide an open-source implementation of the SAIS algorithm to foster innovation and research in bio-inspired computing and immune-inspired algorithms.
3+
![Symbiotic](https://raw.githubusercontent.com/Rqcker/ImageHosting/master/dissertation/symbio3.png)
54

6-
## Features
7-
- Innovative population update mechanism inspired by biological symbiosis.
8-
- Comparable performance to the state-of-the-art SOS algorithm and superior to other popular AIS methods and evolutionary algorithms across 26 benchmark problems.
9-
- Efficient handling of larger population sizes with fewer generations required.
5+
### Introduction
6+
SAIS (Symbiotic Artificial Immune Systems) is a novel Artificial Immune System inspired by symbiotic relationships observed in biology. It leverages the three key stages of symbiotic relationships—mutualism, commensalism, and parasitism—for population updating, as seen in the Symbiotic Organisms Search (SOS) algorithm. This approach effectively tackles the challenges associated with large population sizes and enhances population diversity, issues that traditional AIS and SOS algorithms struggle to address efficiently. This project aims to provide an open-source implementation of the SAIS algorithm to foster innovation and research in bio-inspired computing and immune-inspired algorithms. [Link to the paper](https://arxiv.org/abs/2402.07244)
7+
8+
### Features
9+
10+
- Implementation of the Symbiotic Artificial Immune Systems algorithm.
11+
- Easy to calculate the objective value of the function.
12+
- Customizable for different optimisation needs.
13+
- Support for multiple benchmark functions.
14+
15+
### Quick Start
1016

11-
## Quick Start
12-
### Installation
1317
Ensure the following dependencies are installed on your system:
1418
- Python 3.x
15-
- numPy
16-
- pandas
19+
- numpy
20+
21+
Install `sais` using pip:
22+
23+
```bash
24+
pip install sais
25+
```
26+
27+
Here's a simple example of how to use the SAIS package to optimise a function:
28+
29+
```python
30+
from sais import run
1731

18-
Installation steps:
32+
# define your benchmark number and population size
33+
population_size = 2000
34+
# number from Benchmarks List
35+
benchmark_number = 1
36+
37+
run(population_size, benchmark_number)
38+
```
39+
40+
Example outputs:
1941
```bash
20-
git clone https://github.com/Rqcker/SymbioticAIS.git
21-
cd SymbioticAIS
22-
pip install -r requirements.txt
42+
Starting SAIS for benchmark 1 with population size 2000.
43+
Iterations Number: 8
44+
Running Time: 0.18377017974853516 Secounds
45+
Best Fitness: 4.523554492464579e-10
46+
Best Antibody: [2.9999822 0.49999976]
2347
```
2448

25-
## Benchmarks List
49+
How to get the value corresponding to the target point on the function:
50+
```python
51+
import numpy as np
52+
from sais import benchmark_result
53+
54+
55+
x = np.random.uniform(np.pi, np.pi, 2)
56+
y = sais.benchmark_result(x, 2)
57+
print(x, y)
2658
```
27-
### Benchmarks
59+
60+
### Benchmarks List
61+
```
62+
### Benchmarks (Name, Range, Global Minimum)
2863
# F1 = Beale [-4.5; 4.5]; 0
2964
# F2 = Easom [-100,100]; -1
3065
# F3 = Matyas [-10,10]; 0
@@ -52,16 +87,19 @@ pip install -r requirements.txt
5287
# F25 = Griewank [-600,600]; 0
5388
# F26 = Ackley [-600; 600]; 0
5489
```
55-
## Contact
90+
91+
### SAIS Flowchart
92+
![Flowchart](https://raw.githubusercontent.com/Rqcker/ImageHosting/master/dissertation/flowchart.png)
93+
94+
### Contact
5695
For any questions or suggestions, please contact us via:
57-
- Email
58-
- GitHub Issue
96+
- [Email](mailto:junhao.song23@imperial.ac.uk)
97+
- [GitHub Issue](https://github.com/Rqcker/SymbioticAIS/issues)
5998

60-
## License
61-
This project is licensed under the [Apache License Version 2.0](LICENSE). Please make sure you understand its terms before using it.
99+
### License
100+
This project is licensed under the [CC-BY-4.0 License](LICENSE). Please make sure you understand its terms before using it.
62101

63-
## Citation
64-
If you use SAIS in your research, please cite our paper:
102+
### Citation
65103
```
66104
@misc{song2024sais,
67105
title={SAIS: A Novel Bio-Inspired Artificial Immune System Based on Symbiotic Paradigm},

0 commit comments

Comments
 (0)