Code Monkey home page Code Monkey logo

ga-hls's Introduction

Hi there ๐Ÿ‘‹

ga-hls's People

Contributors

gastd avatar rdinizcal avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

ga-hls's Issues

Understand if Grammar-based Fuzzing may help us.

Grammar-based fuzzing is about using a grammar (set of rules) to guide the mutation of a formula.

What if we try to use something similar when mutating the individuals?
In this way we may guarantee that the mutations will not result in syntactically wrong formulations.
After all, we already have the HLS grammar.
What would be the effort to implement the "fuzzer"? Are there any off-the-shelf artifact tha twe can use to implemetn the fuzzer?

Resources that may help with the investigation (Andreas Zeller):

Implement crossover

The crossover should split the chromosome into two parts. The parts are merged with other parent parts to create two new offspring. Our individual is a tree, so we randomly choose a node and split the tree into this node. The same is done for the second parent. We create the offspring by merging the tree with the subtree, creating a new individual.

Implement mutation

To mutate an individual, we randomly choose a node to mutate and randomly choose the new operator using a list of operators such as '[ForAll, And, Or, Implies, Exists]'.

Fitness

Come up with a helpful fitness function to guide the GA's evolution:
Our goals:

  • A runnable formula

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.