Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
amirdeljouyi authored Feb 29, 2024
1 parent df493ae commit 63fc95f
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,23 @@
![](./split.png)

# 🚀 Getting Started
A `cross-platform` application to `build graphs` and run `graph coloring` algorithms on them , you can download this app from :
A `cross-platform` application to `build graphs` and run `graph coloring` algorithms on them, you can download this app from :
- Windows : [Graph Coloring windows x64][windows]
- Linux : Soon
- Mac : Soon
- Linux: Soon
- Mac: Soon

# 🍄 Introduction

## Graph coloring
Graph coloring is one of the most important concepts in graph theory and is used in many real time applications in computer science. It can be defined as a problem of how to assign colors to certain elements of a graph given some constraints. It is especially used in research areas of science such as data mining, image segmentation, clustering, image capturing, networking etc. Vertex coloring is the most common application of graph coloring. In vertex coloring, given m colors, the aim is to find the coloring of vertices of the graph such that no two adjacent vertices have the same color (Here, adjacent means that two vertices are directly connected by an edge). If this goal is achieved, the graph is said to have proper coloring.
Graph coloring is one of the most important concepts in graph theory and is used in many real-time applications in computer science. It can be defined as a problem of how to assign colors to certain elements of a graph given some constraints. It is especially used in science research areas such as data mining, image segmentation, clustering, image capturing, networking etc. Vertex coloring is the most common application of graph coloring. In vertex coloring, given m colors, the aim is to find the coloring of vertices of the graph such that no two adjacent vertices have the same color (Here, adjacent means that an edge directly connects two vertices). If this goal is achieved, the graph is said to have proper coloring.

## Algorithms

### Welsh Powell
The algorithm used is a greedy coloring, so it is guaranteed to find *a* coloring which may or may not be optimal. The specific algorithm is the Welsh-Powell algorithm. [Read more about it on Wikipedia.](https://en.wikipedia.org/wiki/Graph_coloring#Greedy_coloring)
The algorithm used is a greedy coloring, so it is guaranteed to find *a* coloring that may or may not be optimal. The specific algorithm is the Welsh-Powell algorithm. [Read more about it on Wikipedia.](https://en.wikipedia.org/wiki/Graph_coloring#Greedy_coloring)

### Harmony Search
The standard HS mimics music improvisation process to solve optimization problems. However, it is not suitable for binary representations. This is due to the pitch adjusting operator not being able to perform the local search in the binary space
The standard HS mimics the music improvisation process to solve optimization problems. However, it is not suitable for binary representations. This is due to the pitch-adjusting operator not being able to perform the local search in the binary space

### Genetic Algorithm
A genetic algorithm is a search heuristic that is inspired by Charles Darwin’s theory of natural evolution. This algorithm reflects the process of natural selection where the fittest individuals are selected for reproduction in order to produce offspring of the next generation.
Expand All @@ -43,7 +43,7 @@ A genetic algorithm is a search heuristic that is inspired by Charles Darwin’s
- Graphically Add/Edit/Delete Vertices and Edges

## Import Graph
- you can import json graph (`gephi`) or `dimacs` graphs (.col, .dimacs)
- you can import JSON graph (`gephi`) or `dimacs` graphs (.col, .dimacs)

## Export Graph
- you can export your graph as .json and .dimacs
Expand Down Expand Up @@ -72,11 +72,11 @@ npm install
npm start
```

You can desactivate "Developer Tools" by uncommenting `win.webContents.openDevTools();` in `main.ts`.
You can deactivate "Developer Tools" by uncommenting `win.webContents.openDevTools();` in `main.ts`.

## Included Commands

You can find commands for build in browser or windows , linux , mac in `package.json`
You can find commands for build-in browser or Windows, Linux , mac in `package.json`

# ☑ TODO

Expand All @@ -91,18 +91,18 @@ You can find commands for build in browser or windows , linux , mac in `package.
## Application
- Add graph state for redo/undo
- Compare algorithms
- Chart for each algorithms
- Chart for each algorithm

# 👬 Contribution

Help me in this application with your feedback and your discussion

- Open pull request with improvements
- Discuss feedbacks and bugs in issues
- Discuss feedback and bugs in issues
- Reach out with any feedback [My Twitter](https://twitter.com/amirdeljouyi)

**Please title your issue with [Bug] or [Feature Request] depending on if your issue is a bug or a feature request.**

[license-badge]: https://img.shields.io/badge/license-Apache2-blue.svg?style=flat
[license]: ./LICENSE.md
[windows]: https://github.com/amirdeljouyi/graph-coloring/releases/download/v1.0.1/graph-coloring-windows.exe
[windows]: https://github.com/amirdeljouyi/graph-coloring/releases/download/v1.0.1/graph-coloring-windows.exe

0 comments on commit 63fc95f

Please sign in to comment.