Weak AI   Documentation     MQL Functions

--- Why the name MentDB (Mentalese Database Engine)? Because this project is the weak part of an even bigger project: to write it with a higher artificial intelligence. And this intelligence is based on the work of an American psychologist: "Jerry Fodor" who brought to light a language of thought that he named: "Mentalese". Now it turns out that in this so-called "weak" version of MentDB, I integrated a piece of this language into it. This piece of language lets you make the google search bar algorithms available for your business data. You can therefore search for products in your databases just by giving a few words of description of a product, even if you are wrong. Or mount a competitor search engine to Google ...

--- Why the word Weak? Because this project, as a development platform, also has algorithms for practicing "weak" type artificial intelligence. The DL4J and Encog libraries have been integrated, you just have to use it. There are algorithms for machine learning: Path finder, clustering, regression, algorithms for cleaning up data, chatbot (AIML), and much more ... All ready to go.
Analytics and Machine Learning

Mentalese Structure
Check data type...
Bayesian network...
Auto clustering...
Chatbot based on AIML...

MQL source code example:
Manipulate the Mentalese functions :

    #Create a new language;
    language create "en";

    #Create a symbols into the language;
    -> "[c_lang]" "en";
    #Add the symbols A-Z;
    for (-> "[i]" 65) (<= [i] 90) (++ "[i]") {
        symbol create (string char [i];) [c_lang]; 
    #Add the symbols 0-9;
    for (-> "[i]" 48) (<= [i] 57) (++ "[i]") {
        symbol create (string char [i];) [c_lang]; 
    #Add the symbols a-z;
    for (-> "[i]" 97) (<= [i] 122) (++ "[i]") {
        symbol create (string char [i];) [c_lang]; 
    symbol create "." [c_lang]; 
    symbol create "," [c_lang]; 
    symbol create "-" [c_lang]; 
    symbol create ";" [c_lang]; 
    symbol create ":" [c_lang]; 
    symbol create "!" [c_lang]; 
    symbol create "?" [c_lang];

    #Create a relation;
    -> "[R1]" (relation create (concat 
        (word create "a" "en" false) " "
        (word create "dog" "en" false) " "
        (word create "is" "en" false) " "
        (word create "an" "en" false) " "
        (word create "animal" "en" false) " "
        (word create "." "en" false)
        ) "en");

    #Make a search;
    relation search "animil dog is" "en" false;
Result : [ "RL[0] 1002128.97" ]
Path finder example :

    ml h_node load_from_json "hid1" true "[
      [ \"A\", \"B\", 2 ],
      [ \"A\", \"C\", 4 ],
      [ \"D\", \"A\", 1 ],
      [ \"A\", \"D\", 3 ],
      [ \"E\", \"F\", 4 ],
      [ \"D\", \"F\", 2 ],
      [ \"G\", \"H\", 1 ],
      [ \"F\", \"H\", 5 ],
      [ \"F\", \"I\", 7 ],
      [ \"J\", \"I\", 2 ]

    ml h_node add_problem "hid1" "probId1" "A";

    ml h_node predict "hid1" "probId1" "dijkstra" "I" null;

Result : "{ \"elapsed\": 12, \"estimation\": 0.0, \"score\": 12.0, \"cost\": 12.0, \"optimalPaths\": [ [ \"A\", \"D\", \"F\", \"I\" ] ], \"state\": \"I\" }"

MentDB © 2020 - Legal Notice