Writing Software with AI – Adaptive Programming

It is natural that even humans don’t learn everything over night and that we have to spend a lot of time probing information so that we can acquire knowledge. This knowledge then becomes intelligence once we have processed it. Therefore in my opinion it might be worth it to build an AI system that asks questions, launches quests and goes after missing pieces of information, whenever it is stuck on a new problem.

Adaptive programs

Adaptive programs will be sort of software systems that while working on a complex problem will have the ability to simultaneously discover peers that might already know solution to part of the problem or be able to give directions to contact another software system that might. To prevent the infinite wait times after second level of delegation the software system will stop active probing and assign the responsibility to an asynchronous probing agent to probe further.

This network based software system collaboration can reduce the complexity of the software systems and provide for most optimal reuse of existing solutions to recurring problems. The central principle is that software systems will not just be used for computation, but for gathering knowledge on the problem sets they can solve directly or by delegation to peer software systems. The communication can be based on open protocols and human feedback can be used to refine solutions arrived at by these adaptive programs.