aimacode / aima-javascript

Javascript visualization of algorithms from Russell And Norvig's "Artificial Intelligence - A Modern Approach"
http://aimacode.github.io/aima-javascript/
MIT License
538 stars 216 forks source link

Ch 4 - Design idea to re-implement Genetic Algorithm visualisation #157

Open vishakha-lall opened 6 years ago

vishakha-lall commented 6 years ago

Hi @samuelgoto ! As suggested by @redblobgames on the Gitter channel, I have been working on creating an interactive static blog page to demonstrate my abilities to implement a design. (Point 6- Prototype) I do understand that you require students to portray design skills and the understanding to create visualisations for the reader. I studied Chapter 4 and went through the prototype explaining Genetic Algorithm. I have a better design idea to improve the implementation and enhance the understanding of the algorithm for a reader. I like the use of colours to explain the working of the algorithm, however, it seems complex and confusing. This has also been mentioned as a possible improvement. In my opinion, to understand the implementation of the algorithm, the reader must understand the basic steps involved - Selection, Crossover, Mutation to see the final result. I would love to share a design document and narrative of the same. Let me know if I'm on the right track. Also, although it is a process later in this timeline, I have created a prototype model of a clean and simple blog and hosted it on Github Pages. Should I share it right away? Thankyou!

samuelgoto commented 6 years ago

That sounds like a reasonable way to go. I keep making these instructions better and better, so please take a look:

https://github.com/aimacode/aima-javascript/wiki/GSOC-2018

I feel strongly that we should align things first in a design doc rather than code or a prototype: it is much faster to iterate and to give feedback on a design doc with wireframes than in PRs and code. I am very confident that the hard part of the problem here isn't how to code but how to design (and that will remain true too once you get out of school, so I think this is useful advice), so share a design doc with me and lets iterate on that before you show me a prototype or code.

On Wed, Feb 28, 2018 at 10:02 AM, Vishakha Lall notifications@github.com wrote:

Hi @samuelgoto https://github.com/samuelgoto ! As suggested by @redblobgames https://github.com/redblobgames on the Gitter channel, I have been working on creating an interactive static blog page to demonstrate my abilities to implement a design. (Point 6- Prototype https://github.com/aimacode/aima-javascript/wiki/GSOC-2018) I do understand that you require students to portray design skills and the understanding to create visualisations for the reader. I studied Chapter 4 and went through the prototype explaining Genetic Algorithm. I have a better design idea to improve the implementation and enhance the understanding of the algorithm for a reader. I like the use of colours http://aimacode.github.io/aima-javascript/4-Beyond-Classical-Search/ to explain the working of the algorithm, however, it seems complex and confusing. This has also been mentioned as a possible improvement https://gist.github.com/Rishav159/9b33681a3029c7c930a7c60d4a2aee1e#future-work. In my opinion, to understand the implementation of the algorithm, the reader must understand the basic steps involved - Selection, Crossover, Mutation to see the final result. I would love to share a design document and narrative of the same. Let me know if I'm on the right track. Also, although it is a process later in this timeline, I have created a prototype model of a clean and simple blog and hosted it on Github Pages. Should I share it right away? Thankyou!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/aimacode/aima-javascript/issues/157, or mute the thread https://github.com/notifications/unsubscribe-auth/AAqV6kQkkiC-QAdtJGSF9aG4QvXhytq_ks5tZZTRgaJpZM4SXFpN .

-- f u cn rd ths u cn b a gd prgmr !

vishakha-lall commented 6 years ago

@samuelgoto I have worked on a design document to illustrate my idea. Please go through this and let me know how the idea sounds. I have added necessary drawings to depict it too. Here is the document. I have enabled comments so that we can discuss the modifications on the document itself. Waiting for your feedback. :)

vishakha-lall commented 6 years ago

I have added a wireframe to the document too.

samuelgoto commented 6 years ago

I left some comments in your docs. High level, I think there is a major narrative missing here: there is no beginning, no middle and no end. No progressive flow and antecipation being built. No motivating example. You want to work on that first I think.

vishakha-lall commented 6 years ago

I have gone through your feedback. I now have a better idea of what you are looking for. I'm making some changes in the document.

vishakha-lall commented 6 years ago

I have made modifications to the previous document. Please review :) I would love to get your feedback. Here is the document.

vishakha-lall commented 6 years ago

Noting @redblobgames 's suggestions for the design of the individual entity, I have added more potential alternatives and supplementary ideas. Please go through them and provide feedback :) Here is the document.