ChromesomeJS #79
ChromesomeJS #79
Comments
|
The Vision of ChromesomeJS: |
Hey, interesting project! Since your focus is Genetic Algorithms, I think that your Unique Value Proposition (in your Open Canvas) should mention GA. I look forward to seeing your Roadmap! |
This is AWESOME! (I am one of the people you mentioned who is curious about genetic algorithms |
Hello, for the writing part I think that is important to understand basics of Genetic Algorithms to try to drive users through tutorials or have a correct use of different terms (chromosome, individual, offspring... ). But I think that once someone more technical can provide some guidelines anybody should be able to rephrase it :D
Thanks for the feedback, the canvas reflect this now |
|
The roadmap is available as a Github Project and is aiming for the MVP of the project. This means that by the end of Project a MVP of ChromesomeJS should be available to be used by others. Milestone: Framework Right now, Chromesome was only oriented to offer utility functions, but this still limits developers to have their own implementation of the Genetic Algorithm (Define the loop, conditions...), hence the problem of people understanding how to implement their own ones is still there. This milestone is to create a framework that can do inversion of control and just accept inputs from the user and save developers the time of developing the rest. Milestone: Expanding utility functions Utility functions are functions that can be use freely, without the need of any framework or additional library. Usually they have one single purpose, e.g. One Point Crossover, this will take as input 2 arrays or objects and it will perform a simple one point crossover to it (swap values given a point or feature). This allow you to create your own genetic algorithm without having to implement all the functions that you may need (selection functions, crossover functions, fitness functions, mutation functions...) To make this suitable for more people, ChromesomeJS needs to offer a wider variaty of utility functions regarding offspring, selection, mutation and also have a clear API so that the framework can still deal with this changes. Milestone: Documentation A Developer portal that guide you through the usage of the library and also offer different examples and details explanations about Genetic Algorithms. It also should be more clear the guidelines for those that want to contribute to the documentation of the project (localisation, extension, corrections...) |
|
I love the name, by the way. What is a "utility function" anyhow? I do some coding, but not sure what this means. Maybe I'm missing something, but in the interest of the xkcd simplifying, I'd love to see this defined. Very cool framework possibilities! |
Nice comment, it is something that is so clear in my mind that I totally dismissed explaining it further. I updated the roadmap with the definition and an example. But basically a utility function is a pure function, with a single purpose and that does not need a framework or another library to work. For example, a typical utility function could be Math.power, Math.sqrt, Math.abs... But in the case of ChromosomeJS it is a crossover function, a selection function etcetera, so people can use them without having to use the rest of ChromosomeJS when developing Genetic Algorithms |
|
Interesting! |
Project Lead: Angel Paredes Barato
Mentor: Alexander Kutschera
Welcome to OL7, Cohort C! This issue will be used to track your project and progress during the program. Please use this checklist over the next few weeks as you start Open Leadership Training🎉 .
Before Week 1 (Jan 30): Your first mentorship call
Before Week 2 (Feb 6): First Cohort Call (Open by Design)
Before Week 3 (Feb 13): Mentorship call
Before Week 4 (Feb 20): Cohort Call (Build for Understanding)
Week 5 and more
#mozsprintThis issue is here to help you keep track of work as you start Open Leaders. Please refer to the OL7 Syllabus for more detailed weekly notes and assignments past week 4.
The text was updated successfully, but these errors were encountered: