The researchers started by sketching out the problem they wanted to solve in Python, a popular programming language. But they left out the lines in the program that would specify how to solve it. That is where FunSearch comes in. It gets Codey to fill in the blanks—in effect, to suggest code that will solve the problem.

A second algorithm then checks and scores what Codey comes up with. The best suggestions—even if not yet correct—are saved and given back to Codey, which tries to complete the program again. “Many will be nonsensical, some will be sensible, and a few will be truly inspired,” says Kohli. “You take those truly inspired ones and you say, ‘Okay, take these ones and repeat.’”

After a couple of million suggestions and a few dozen repetitions of the overall process—which took a few days—FunSearch was able to come up with code that produced a correct and previously unknown solution to the cap set problem, which involves finding the largest size of a certain type of set. Imagine plotting dots on graph paper. The cap set problem is like trying to figure out how many dots you can put down without three of them ever forming a straight line.

    • mumblerfish@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 year ago

      It’s not brute forcing though. It is similar to genetic programming, it seems, but with more less understood parts.

      • jacksilver@lemmy.world
        link
        fedilink
        English
        arrow-up
        6
        arrow-down
        2
        ·
        1 year ago

        I mean, I would also call genetic algorithms a form of brute forcing. And just like with genetic algorithms, this approach is going to be severely limited by the range of values that can be updated and the ability to test the outcome.

        • mumblerfish@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Why would you not be able to test the outcome fully? And what do you mean by “limited by the range of values that can be updated”?

          • jacksilver@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            So they configured the experiment so that only certain lines of code were able to be iterared/updated. Maybe you could ask it to start from scratch, but I imagine that would increase the time for it to converge (if it ever does).

            Regarding testing, not all mathematical proofs can be verified by example. Here they were trying to prove that there was an even lower bound for the problem, but not all proofs will work with that structure.

    • BetaDoggo_@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      They basically found a more effective way to brute force the problem. I don’t doubt that it’s possible. The title calling it unsolvable is nonsense though.

  • yesman@lemmy.worldOP
    link
    fedilink
    English
    arrow-up
    7
    arrow-down
    7
    ·
    1 year ago

    I thought this was interesting bc it’s an instance where a LLM has done something undeniably novel and unique while expanding human understanding. It’s a chink in the armor of the idea that a LLM is a “stochastic parrot” that can only regurgitate and never create.

    I’ve been toying with this idea that LLM are showing us that what we thought of as creativity, learning, and problem solving aren’t as rarefied as we thought. We know that AI isn’t conscious, maybe consciousness isn’t as prerequisite to behaviors and cognition as we thought.

    • jacksilver@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      I’m not so sure, it feels a lot more like the https://en.wikipedia.org/wiki/Infinite_monkey_theorem, but with a model helping limit the outputs so they are mostly usable. As is stated in the article, it took millions of runs and couple of days to get the results. So its more like brute forcing with a slightly modified genetic algorithm than anything else.

      I didn’t see a link to the full article, so maybe something more creative is happening behind the scenes, but it seems unlikely.