What is Combinatorial AI?
Combinatorial AI is a learning algorithm of the automated search for computational functions that are both syntactically valid and pragmatically useful. The algorithm is able to:
- Learn to build simple models of objects and processes in a changing environment,
- Combine the simple models into solutions for problems defined in the environment,
- Communicate the models using syntactically correct messages in a formal language.
The combinatorial approach is a method of structural search and optimization. Combinatorial AI gains knowledge starting from very simple to more and more complex models.
Under the right training supervision, training a combinatorial agent to search quazi optimal solutions takes polynomial time.
Possible application examples may include:
- Programming communications between components
- Task paralleling and scaling
- Porting between platforms
- Automated testing
- Elements of automation in CAD development
- Conjecture of different CAD applications
- Record keeping
- Supply chain/distribution management
- Cost optimization
- Risk control
The proof-of-concept combinatorial agent trained on a demo problem was presented in 2019. In the demonstration, the agent:
- builds simple models from the interplay with its environment,
- generates solutions for a specified problem by combining the models,
- represents the solution in a formal language that allows it’s analysis or execution.
Now there is continued R&D to train the combinatorial AI to
- Process structured problem descriptions in XML extensions,
- Represent solutions in a Turing-complete language.