Special projects
openai.com
openai.com
Richard Hamming, "You and Your Resarch"
An anecdotal counterpoint would be that Einstein was working as a patent examiner in 1905, his "annus mirabilis"... (Of course it's not very useful to generalise Einstein's career.)
Also note that some of the major breakthroughs in the past decade or two have been by mathematicians and scientists that are outside of the "system" (Grigori Perelman, Yitang Zhang (though maybe he's not as much of an outsider)). Maybe a bit outdated but Riemann and Galois also fall into that category.
The quote mentioned Bell Labs, but you don't have to be at a high-end research lab to work on important problems.
Presumably he worked on big physics problems while also performing his job as patent examiner.
Solving any coding challenge is NP-hard problem. You need to understand not only what you need to do but also how language in which you need to do it works. For example in game of Go you have huge amount of possible states but you have only couple of moves to transition to this states. In programming language every line of code has large space of states and it grows exponentially with every new line of code. Sure you can brute force "hello world" program but good luck with writing 1000 lines of code that work together to solve complex problem. Pattern matching will not help you, training based on github will not help you.
I think you meant to say "NP-hard" . And indeed, there are many program synthesis problems which are NP-hard, 2EXP-complete, or undecidable. But there are also many program synthesis algorithms which are polynomial time. If you use Windows, there might even be one running on your computer.
We've been studying this problem for close to 50 years. I think you see the basic problems, but we know a lot about what to do about them.
"PSPACE-complete is great news. It's the new poly-time." -- Moshe Vardi
SAT solvers are very fast. It's worst-case exponential, sure, but it's hard to find that worst-case. I just heard at lunch yesterday that MaxSAT is now also easily handling problems with millions of variables. I think I'd be scared if I found out what the record was for normal SAT.
So, how do you actually do synthesis? I could talk for quite a while about it.....but here's a pretty good intro-article: https://homes.cs.washington.edu/~bornholt/post/synthesis-for...
It's not that hard. Just generate a boolean circuit for the multiplication of 2 64 bit prime numbers and convert the circuit to a 3-SAT formula. I doubt any current SAT solver can solve that problem. If you could do it for 1024 bit primes a lot of cryptography would be toast.
EDIT: To be a bit more clear I mean that the circuit takes two n-bit numbers, multiplies them then compares the result to some known product of 2 primes. So by solving this circuit you factor the known integer.
EDIT2: Doesn't solving MaxSAT exactly imply that you can also solve SAT ? If there's a SAT solver that can handle million variable instances "easily" that's something I'd be really interested in hearing more about.
The circuit I described checks that the product of two arbitrary input integers is a specific known integer.
By solving the decision problem for each bit independently you can determine all bits of the 2 input integers and hence factor the known target.
1: https://en.wikipedia.org/wiki/Boolean_satisfiability_problem
Which algorithm / program is this?
[1]: http://research.microsoft.com/en-us/um/people/sumitg/flashfi...
To prove that statement you'd have to carefully define your terms.
If "Develop a polynomial time algorithm to determine whether any given 3SAT problem is satisfiable" is a valid coding challenge then the statement is obviously true.
On the other hand I doubt that solving the types of coding challenges that actually appear in competitions can be proven to be NP-hard because that would prove that humans are much better at solving NP-hard problems than any currently known algorithm. I don't think there is any such proof (though there may be some weak evidence for the proposition).
And by "known", I don't mean "in the AI's knowledge-base"; the AI would properly at least be able to hunt down textbooks and journal papers, read them, and learn problem-solving approaches from them. In other words, the AI would at least be as able to "do science" in the way that a grad student is expected to "do science."
What relation an AGI has to NP hardness is unclear. I think that if P=NP in the sense that a practical algorithm exists for solving large (ie. 10^9 variables) NP complete problems then AGI (even super-AGI) would probably follow. However I don't necessarily think that's a necessary condition for AGI to exist.
Those who developed the minor innovation were "doing important work", as it turned out, without even realizing it.
My understanding is that these are common mechanisms through which important work is accomplished.
The people on top desperately want us gone, and when it happens it'll happen so quickly you won't know what hit you. Software engineers need to recognize this common threat and organize (labor) sooner than later. Even more important is for all engineers to plan for an imminent future where developers are not paid like they are now, if at all. We have it good, but we will be automated away like everybody else, just a little later.
An interesting analysis on a world with increased automation via emulated brains of the best of humanity: http://ageofem.com/
HN doesn't bat an eye at Uber, AirBnB, Netflix, Amazon disrupting and taking away jobs. But it's interesting once programming jobs are threatened, some become defensive.
I'd love to hear your thesis for this, in a way that doesn't whitewash away the negative effects on the individual. If you're going to claim we should all be throwing ourselves on the burning pyre of progress no matter what I'd love to hear more of a compelling argument than "never a good iea".
There's no reason why you have to think "I'm a software engineer, therefore any attack on software engineers is an attack on me." You could, just as easily, define yourself by "I'm a person. I do software engineering because the money is good right now and that is what the economy happens to need right now, but if in the future society ceases to need software engineers, I'll retrain with whatever skill is highly valued then."
I remember coming out of college, happy to learn about the world, and thinking how sad it was that people's identities were so wrapped up with their jobs that they were broken when their jobs were eliminated. I felt that shift happening soon after I turned 30, where I started to get just a little bit too comfortable and too proud of what I was rather than what I did, and then quit so that I'd have that opportunity to grow again.
Software development has been invaded by mouth-breathers who don't give a shit about what they're doing, and I don't see a way to switch careers as an adult chasing money without becoming one of those.
And I don't meant that facetiously - interpersonal skills matter. A lot more than pure technical skills, because they allow you to leverage groups of people to achieve bigger goals.
I know it sounds cruel to talk about people like a resource or as an animal, but that is precisely how I see society as treating lots of us in the name of a greater good. Under the guise of social-welfare we've increased our numbers to levels that never would have occurred naturally by us simply taking care of the really needy.
So now we're stuck in this predicament. Either we progress our society, and potentially affect a lot of people negatively. Or help everyone slightly-struggling and below out by preventing a technological-revolution so we can grow a bit at a time, and delay the problem for the next generation.
The upside is that I think it would be really accessible for anyone to have it's own personal army of programmers. Although that's also quite dangerous.
If one would reflect back on the applications that they've built in their career I suspect a number of those applications are now available generally as packaged software with customizable components.
E.g. The dawn of the web saw many publishing, & catalog systems being built. Now you don't need to, you can simply grab a commercial or OSS package and customize it for your needs. Same is true for document management, workflow.
This hasn't impacted jobs yet because we are still early in this industry, and growth is still outpacing this commoditization. But, yeh, I see the day where software developers become quite rare and software customizers are common.
The tricky challenge is organizing our labour efforts. It's already easy for IT organizations to outsource development to cheaper markets, I fear labour organization would accelerate that movement.
So, I think it'll be a long time until 'the people at the top' get what they want. Until they start coding a replacement for Dropbox or SublimeText that will be the end-all of filesharing/file-editing, we'll always need another IPFS, another Atom, etc., etc.
Other than that, implementing an AI that is capable of understanding business problems and solving them via code probably is nothing short of artificial general intelligence. In that case we won't have to worry about not being needed anymore anyway because by then we'll either very rapidly have a post-scarcity economy or you know ... Skynet ...
Will it? When you look at most First World countries in general nobody there has to starve anymore.
In the Middle Ages only liege lords could get by without ever having to work. Nowadays, even middle-class people don't necessarily need to work till retirement age.
Use of food banks has increased in the UK, and hunger is very much present: https://en.wikipedia.org/wiki/Hunger_in_the_United_Kingdom
This is a policy choice. For many voters, it's far more important that nobody "gets something for nothing" than nobody starves to death. This has resulted in the benefits system being increasingly punitive leaving some people without money for food for weeks at a time.
(For comparison: the average public school student in the US costs $12,000 to educate. And yet plenty of people will say that even that is not enough.)
But the good news is if we don't fuck up, that number will continue to grow nonlinearly, just as it has for many decades. We will live to see it cross the point where it really is high enough to give everybody a comfortable life.
Why does it cost $30,000 to educate a class of 30 kids for a month? The salary of the teacher should be <$5,000. Double, or triple that to include rent and other costs. It still comes out at half of $30K.
2. This may just be my projects, but people tend to re-make excel on the web with it.
3. Its easy to get started coding with it, but quickly turns in to spaghetti filled with glass shards when you try to do advanced things with the controls.
If AI gets to that level where the programmer is completely replaced, well, regarding "the top" that "wants us gone"... many of them would also be gone. There's no reason a general AI of that power could not automate (to give typical "the top" occupations) much of finance, law, health care, or even management / executive work.
What experience or understanding about "AI" do you base your opinion on?
Tell that to the people who insist that Real Programmers™ always write these things from scratch, never use a library to help them with it, etc.
The only way around the halting problem is to use something other than computation as we know it. I.e. an entirely new kind of machine based on different principals. And no, quantum computers do not solve the halting problem since they are still Turing-complete machines.
The halting problem doesn't really matter that much in this context. Just spawn up a bunch of threads that churn away at the problem, using random mutations, and any that go on too long can just be considered flawed, regardless of whether they have any redeeming qualities.
Then you select the winners, based on the selection criteria, and churn away on some more mutations of those new variants.
In general, you will not be able to easily find P using a genetic algorithm (which amounts to a random walk through the space of all programs) even with many threads. The problem is that the algorithm is exponential in the length of P. It only works if you only consider a very limited set of possible programs. E.g. very short programs or programs which are only slight variations on a known program.
There is a fairly large subset of useful programs that can be proven to halt. Anything that uses straight-line linear control flow. So can anything with that plus conditionals. So can that plus foreach loops, as long as iterators do not reflect updates to their underlying collections. Add a "forever { ... }" construct and you can prove that the program will not halt; in combination with the other constructs, you can prove liveness on each request handler while also guaranteeing that the server itself will never go down.
The two constructs you have to watch out for are loops that mutate state used in the conditional and unbounded recursion. Even for these, there are techniques to increase the set of programs that can be reasoned about, eg. using dataflow analysis to identify which state is mutable and preventing it from being used in conditionals or tracking data & codata through the typesystem.
http://blog.sigfpe.com/2007/07/data-and-codata.html
Such a language would not be Turing-complete; you won't be able to write an interpreter for a Turing-complete programming language in it. But the majority of common business problems don't require an interpreter for another programming language; most of them focus on storing data, triggering events, or computing functions of data.
http://mathoverflow.net/a/153106
Because of the list of correct answers for a finite subset of the Halting Problem is finite, the Turing machine you mention does exist, but we not only can't find it, we can't know when we've found it!
Where the Math Overflow post mentions that "experts could compute the particular value of n", there has recently been such a bound published in a thesis, such that we can be confident that we can never construct or recognize the solutions beyond that point (using a particular axiomatization of mathematics).
You referred to the idea that "you can have a Turing machine that solves this", and we can agree on that with the caveat that, above certain problem instance sizes, you can't know or verify in any way that you have such a Turing machine!
My argument stands. Unless the halting problem is overcome, there will still be jobs for humans to write Turing-complete programs.
Turing machine X can produce programs that meets certain specifications => Turing machine X solves the halting problem.
Here's a nice simple one for you:
def collatz(n):
while n > 1:
n = n/2 if n%2==0 else 3*n+1
Is the above program guaranteed to halt for all integer inputs?In practice, programming doesn't require solving halting problems. We write programs that are on average easy to analyze, especially if you're calibrating the scale with busy beavers. There's no fundamental reason that a computer program can't collect requirements, collect clarifications, and translate those specs into executable code. Clearly it's hard (How do you do the translation? Optimizing Prolog isn't easy! And how do you avoid asking for millions of things that humans take for granted as obvious?), but I don't see anything that makes it impossible.
Step it up a level further, if computers could think of programs to build themselves (which they probably would have to if they are going to be anywhere close to practical), that's when the "singularity" truely starts to take off. At the speed that computers operate, programs would very quickly go beyond what humans are capable of.
Has organized (labor) ever saved organized labor's job?
Organized labor is useful against a whole lot of problems, but not this one.
I'm a full-time software engineer, but I spend maybe 50% of my day implementing code. I spend a lot of time figuring out trade-offs, exploring edge cases, and verifying that the business/marketing people know what the side-effects of a given feature will be. There's also a lot of flag-waving to make sure that small problems don't become big problems.
I've run into the "that should be able to be automated" hand-wave of a thought before. I think it's always done by people who haven't actually spent time thinking about the edge-cases and all the little decisions that are put into a final software project. Sure, you can hand-wave and get a CMS, but you're going to be unpleasantly surprised when the defaults don't match your subconscious expectations.
Here's how software engineers could retain their position in a world where our code is automatically generated:
- Understand and communicate the trade-offs of different solutions
- Embrace product design-- a lot of us unwittingly become novice visual designers and product designers during our work, and we should embrace that domain knowledge that we learn, rather than being frustrated that we're being taken away from our primary task, coding.
- Explore edge cases, and explore new ways of doing things
- Understand and get involved in the business process!
This is a cynical view of the world. Maybe the people "on top" simply want to improve their company's efficiency in order to return value to investors, etc. My point being its economics, not some evil intent.
Software engineers need to recognize this common threat and organize (labor) sooner than later
And the point of that would be what? To protect our jobs by demanding that industry ignore and no longer pursue innovation? That seems like heresy for anyone in Tech.
If the day does come that AI starts writing code, the lost of our fat salaries and stock options will likely be the least of our problems; or perhaps the world will be void of problems altogether.
Those who already have capital and can invest it smartly might fare much better than those who only rely on BHI, which is at the whims of politicians. A person need not be super rich, if she can associate with other to buy land for agriculture or robots for manufacturing. Robots are analogous to land. You gotta have one or the other :-)
The bigger issue is what has we've already started to witness: automation leads to accelerated accumulation of wealth and resources among those who already have the most capital. Historically, corporate profit and labor demand went up or down together. Now they're diverging: corporate profit grows while demand for labor shrinks. The spoils of corporate success goes to those who own the tools of automation, and others lose their job and income.
In any case, OpenAI's vision here is much bigger than making software developers obsolete: they want to study (or create) AI that can improve itself (i.e., a singularity scenario).
It's not in any danger of happening soon, but if/when it happens, you might as well join the union of street gas lamp lighters.
Isn't, given a problem 'X', produce a solution 'Y' kind of automation, called AGI?
Well then you have little to worry about. If AGI is indeed invented you have bigger things to deal with than worrying about your job.
In any such eventuality 'people at the top' are likely to be eliminated rather more quickly than us. Because an AGI with huge resources can make far better decisions than any CEO ever can.
Just in case, since I think I'm up against Poe's law here: I am, in fact, 100% serious.
I am not from OpenAI though.
Similar problem to bot detection on online poker networks, except much harder on real financial markets, and probably not something you can regulate.
Try to understand how exactly Renaissance or Two Sigma are making money with their algorithmic trading, from the outside, I don't think you'll have much luck.
The moment I saw this project start, the first thing I thought was, "Isn't this how all terrible things are created, by trying to avoid having them be created?".
I wonder if the long-term strategy will be called Mutually-Assured Obsolescence™.
Making an AI that finds vulnerabilities is the hard part. Doing an offensive thing or a defensive thing is much easier if you've got an AI that's just spewing out vulns. They don't need to be tightly coupled at all.
Maybe someday we'll discover that this was exactly how the ancestor simulation we're living in started.
Insert your favorite Matrix déjà vu reference here.
Here are a few resources that might be helpful to anyone interested
https://www.complexityexplorer.org/
Does a glider in Conway's Game of Life comprehend the hardware its running on? Does it know the mind of Conway?
Why? It is ontologically no different from 1) solipsism, a philosophical idea that even most philosophers considered worthless centuries ago, or more loosely 2) belief in a higher deity who created the world.
It's completely unfalsifiable. The answer to the question clarifies nothing about our understanding of the world [1] and furthermore has absolutely no impact whatsoever on how you ought to live your life.
[1] Even if you conclude we live in a simulation, we will never know for sure anything about the nature of the simulation or the nature of the world outside the simulation.
Sure, but it is vastly interesting to think about, and imagine about and have meandering ideas about. There's probably also trappings of psychoanalysis in here somewhere.
The thing is, you're not wrong. You're just kind of mean and arrogant to reduce a multiplicity of nuanced worldviews that many people care about very deeply to simple meaninglessness.
Your argument is ironically the reductive one. I have complete respect for people who choose to believe in an organized religion. But it remains the case that whether or not you can prove a higher deity, that in of itself has no bearing on how you should live your life. You can disprove the existence of god and still choose to believe in religion. You can prove the existence and still choose to not believe in any religious system. So proving the existence is worthless.
This comment is actually a much more reasonable expression of your point than the earlier one - you mentioned you respect the people who believe in religion and revised your claim to state that proof of the unfalsifiable is meaningless (which is nearly tautological). That logic is sound (though you could make an argument that attempting to prove something unfalsifiable when you're emotionally invested in it and it's otherwise harmless could be fulfilling).
Your earlier comment had a different tone and sentiment; namely, that belief in something unfalsifiable has no impact on someone's life, and that you can't understand why grown adults would bother with it. That was the specific sentiment I found to be offensive.
For what it's worth, I'm agnostic.
2) You're the one calling it idol worship. I'm pointing out that most people would not take this idea seriously if it weren't Elon Musk saying it - and I still believe this is true.
3) The high school comment is pretty relevant. An intro philosophy class will usually mention Descartes, who thought about this stuff 4 centuries ago.
4) I only said it's funny that grown adults take the simulation hypothesis seriously. Your statement was the one that extrapolated that to religion and found offense.
I was merely joking, it's simply pretty funny to imagine a full-grown world of self-aware actors developing inside the OpenAI plan and then debating about the simulation hypothesis.
Bostrom's formulation has a properly constructed hypothesis: see http://simulation-argument.com/simulation.pdf
"It's the question that drives us, Neo. It's the question
that brought you here. You know the question, just as I
did."
"What is the Matrix?"If program X can write program Y, program X is probably unnecessarily complex with regards to solving problem Y. Program X could simply execute program Y's operations at their abstract level, which would save it all of the outputted language understanding and translation. The only tangible difference between the two would be the ability to "save" the commands, at which point program X is a scripting language and the input commands are the script.
Wouldn't this solution be better in most cases? If program X at runtime requires significant configuration to produce program Y but those configuration inputs are not saved. Then if program Y were to be changed, program X must be rerun with all of the configuration input again. In the scripting language scenario, the script is modified.
For a programming language to receive something simpler than the language it is written in, the ideas must be abstracted to reduce the amount of code required to perform the task. For example simple addition of multiple elements can be reduced to a "sum" function. The "programmer" using this must still have knowledge of the sum function and its use. Abstractions require the system to have knowledge of that domain, so with each new domain a whole other set of abstractions and complications are introduced.
So if a machine were to write the entire program, how does it differ from machine learning? While machine learning might be often used for smaller algorithms, this case would apply ML to the entire problem as sets of smaller problems. If a human must still program in some abstracted sense, isn't it just a scripting/programming language? How would a component of this suggested project not fit into the "machine learning" or "scripting/programming language" categories?
The tests referenced in [https://arxiv.org/ftp/arxiv/papers/1604/1604.04315.pdf], currently dominated by information retrieval techniques, seem more realistic and still feel hopelessly far away.
#3 should also allow looking into the use of AI to break into systems, in addition to detecting and defending against AI breaking into systems. A prototype for #4 could create an environment where trilobyte fuzzers could co-evolve into fearsome Artificial intelligences. The AIs that break into systems need not be as smart as the systems being broken into. Just as viruses are much less complicated than eukaryotic cells and yet are capable of wreaking great havoc against mammals, might this be a possible mad deterrent against out of control AI, developed by #1's opponents who use #2's breakthroughs? No AI could plausibly be bug free.
See also: Schild's Ladder.
#4 It would also be cool if humans were allowed to visit and interact with this virtual world.
See also: The Lifecycle of Software Objects
These projects have the same feel as: A PROPOSAL FOR THE DARTMOUTH SUMMER RESEARCH PROJECT ON ARTIFICIAL INTELLIGENCE, whose #4 and #1[+] were the only ones to see much progress. It's difficult to say whether we are 10 or another 50 years away from making meaningful progress on OpenAI's list, but I'm glad they made it because it seems somewhere along the past 60 years, we forgot how to dream.
[+] #3 warrants a honorable mention.
Given that online programming competitions tend to fall into distinct classes (dynamic programming, algorithmic challenges, graph problems, string problems), this seems maybe more "solvable" with a non-AI implementation?
Imagine you have a framework that can spit out sub-pieces of a solution that worked in a Unix pipe-like way (e.g, sort the graphs | find strongly connected components in each graph | spit answer of graph with lowest number of SCC).
Then you need to grind out some type of expert system to replicate the competitive programmer who currently chunks together those framework pieces.
Of course, this probably doesn't work at all for something like kaggle or stockfighter.io, where parsing the instructions and observing a dynamic system are key parts of the hacking. I am more thinking of SPOJ or similar . . .
Lastly, even if the AI figures out the implementation, it has to take care of all the edge cases too, so that the test cases pass. But I suppose this is a trivial problem compared to the other two I mentioned above...
> a framework that can spit out sub-pieces of a solution
> some type of expert system
What you've described is an AI implementation.
Not so much parsing of the problem itself, but building generic frameworks where - given data and a target variable - it will work out the type of problem (eg classification vs regression) and develop a predictive model without human intervention.
ICML has had workshops for the last two years on this problem[1][2]
It's interesting that Projects 2 and 3 would make great businesses even if they only got halfway to "existential threat" level AI. Then there's project 4, version 0.1 of Musk's "we're all living inside a simulation" claim. Musk as creator of worlds.
I bet the real purpose of this is not "It seems important to detect this", at least against superhuman AGI.
As that's asking you to win a game against a more intelligent game player, who is going to be able to out-think you and hide.
It seems more likely that:
The real purpose of this problem is to impose a 'secrecy tax' on entities who would like to recoup investment by covertly using such a system, thus reducing the incentive to build one in secret. I.e. if you know someone has invested in research that's going to limit your ability to profit from covertly building an AGI, this means you can only use it up to the limit of game theoretic detectability, reducing the profit motive of acting covertly in the first place.
Its a bit like once you break Enigma, you have to be careful how you use it. Having alternative explanations for how you got your edge then becomes valuable.
So, if you see a corporation building something that could provide an alternative explanations for huge returns, other than AGI - ideally for something that's very noisy (high variance) - and where it'll be hard to tell whether their success was by chance or on purpose, that's probably (very weak) evidence (in the bayesian sense) they are working on a secret AGI.
I suggest YCombinator is an ideal candidate... huge returns, very hard to tell if its luck or skill.
Maybe pg is actually an artificial super-intelligence. I mean, has anybody actually seen him in real life???
Indeed :). Anyone who's excited, please apply! Feel free to ping me with any questions: gdb@openai.com.
No need to start a new one here, just download Dwarf Fortress.
Yes I know my comment is probably against HN guidelines but there ought to be an exception for making fun of uber rich Silicon Valley types. They parody themselves. It reminds me a lot of the show Silicon Valley.
I was hoping for a serious discussion about the problems on the forefront of machine learning.
edit: The DARPA site you linked above calls it a "fully automated computer security challenge". They are not claiming it's AI.
That's a ignorant cheap shot. Speculative, risky research is costly because lots of things don't work.
The DARPA site you linked above calls it a "fully automated computer security challenge". They are not claiming it's AI.
Show me a definition of AI that would include papers published at NIPS/ICML or even AAAI and wouldn't include the same techniques as are used in the DARPA Grand Challenge.
AI is just a label, it isn't something magical.
I'm actually kinda miffed that OpenAI's press release seems to think automatically writing/exploiting programs is an AI problem, and targeted the AI community in their proposals (as opposed to the programming languages community). I'm a program synthesis researcher, and know how to do major aspects of #2 and #3. I know a lot of people who are already working on them (with some quite impressive results, I might add). And none of us are machine learning people.
The important thing is: the Cyber Grand Challenge is funding a dozen teams to do exactly what OpenAI is hiring for. Call it AI or not, it's being done. You might look at the proposal to automatically exploit systems and call it sci-fi, but I look at it and think "Sure, that sounds doable."
Today's program analysis and synthesis technology allows for tools far beyond anything programmers see today. I'm excited to be part of a generation of researchers trying to turn it into the programming revolution we've been waiting for.
Oh certainly. DARPA's "MUSES" program (which I'm partially funded by) is $40 million into incorporating big data techniques into program analysis and synthesis. There are systems like FlashFill and Prophet which develop a statistical model of what human-written programs tend to look like, and use that to help prioritize the search space. There are also components in the problem other than the actual synthesis part, namely the natural language part. Fan Long and Tao Lei have a paper where they automatically read the "Input" section of programming contest problems and write an input generator. It's classic NLP, except for the part where they try running it on a test case (simple, but makes a big difference).
The reverse also is happening, with people incorporating synthesis into machine-learning. The paper by Kevin Ellis and Armando Solar-Lezama (my advisor) is a recent example.
I do get touchy when people label this kind of work "machine learning" and seem oblivious to the fact that an entire separate field exists and has most of the answers to these kinds of problems. Those examples are really both logic-based synthesizers that use a bit of machine learning inside, as opposed to "machine learning" systems.
Also, NLP is at the very least closely aligned with "AI" research bit traditionally and looking at current trends.
I do get touchy when people label this kind of work "machine learning"
Don't ;) (Seriously - it's just a label. Embrace the attention)
In short, you can say "it's just a label," but that's not a reason not to fight the battle over words.
I don't think OpenAi would object to proposals from outside the AI/ML field. After all, people are doing Deep Learning based SAT solvers as class projects now, eg https://cs224d.stanford.edu/reports/BunzBenedikt.pdf
How about instead of wasting time on this stuff, they build an actual benchmark test for AGI. Something everyone in the community agrees needs to be built, and basically nobody is working on. I suggest they start with the "anytime intelligence test" from Hernandez-Oralloa as a stepping stone.
Oh wait, benchmarks aren't sexy. Nevermind.
This is actually the project I'm currently leading (goal #1 here: https://openai.com/blog/openai-technical-goals/). We should have something interesting to share in a few months.