Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Looking for a good problem for a solution I have coded :)

  1. Jan 9, 2016 #1
    I have coded the following abstraction for breeding neural networks with a genetic algorithm: https://github.com/tomekd789/clogann
    Now I am looking for a problem to solve using it. It would be ideal if it is non trivial, of practical significance, and matching the tool. So far I've tried:
    • Numbers factorization (with a mediocre effect)
    • Checking satisfiability of random 3-SAT terms taken from the phase transition area (http://www.princeton...s/gent94sat.pdf) (somehow dissatisfied; did not reach the goal of proving P = NP http://cdn01.codecall.net/public/style_emoticons/default/wink.png [Broken])
    • Forex (with positive effects, but not worth the effort).
    All hints welcome.

    Last edited by a moderator: May 7, 2017
  2. jcsd
  3. Jan 10, 2016 #2


    User Avatar
    Science Advisor

    Solution looking for a problem is often not cost-effective.
  4. Jan 13, 2016 #3
    Anything more concrete? ;)
    Meanwhile, I've been advised to take a sequence of "coin tosses" generated manually by a human (i.e. no real coins, no computer involved, just from one's head) and breed a network capable of predicting next tosses results. I was astonished: for 1000 "coin tosses" the network was 70% correct.
    I.e. we humans are quite predictable, at least in this case. :)
    Another surprise was the necessary minimal size of the network: just two input neurons, and three extra, one treated as output, too.

    Still looking for other ideas.
  5. Jan 13, 2016 #4


    User Avatar
    2017 Award

    Staff: Mentor

    Which ratio do you get if you simply predict "the opposite of the previous coin"? Is the neural net better than that?
  6. Jan 13, 2016 #5
    65.2%, then still slightly worse.
  7. Jan 13, 2016 #6


    User Avatar
    2017 Award

    Staff: Mentor

    At first glimpse this isn't very significant. What does your algorithm? Can it solve linear systems or can it learn?
    Without being an expert I'd try to google 'genetic algebras' and see what kind of problems there are.
    Or try some decryption problems. You can start with an easy Cesar code. Just to see how it performs. And then more difficult ones.
    (I'd have a bunch of tasks but they all involve solving linear systems with free variables. They are ##O(n^3)## which quickly makes it boring to solve them by hand.)
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook