What is Intelligence?

When we started going into artificial intelligence and important question arose, what is intelligence? At first many people probably thought that there was smart and not so smart and that's it, I know I was on that track. However, we went over the theory of multiple intelligences which is the many different forms of being intelligent. In life, there are many things we can be intelligent in, from art to speaking and numbers to music. Below is a chart of the different types of intelligence:

The Turing Test

For many years people have questioned whether or not machines will ever be intelligent. In 1950, a man by the name of Alan Turing wrote a paper on the subject, questioning whether a machine could possibly think. Turing then stated the new question of whether a machine could do things a human can. He then created a test method in which a judge would have a chat through typed things with a human and a machine, not knowing which one was which. If he could not tell which was which then the machine passed the test and could imitate human conversations.

Chat Bot Projects!

After discussing intelligence, we set out to create a program that can hold a small, decent conversation. We used python to program these things. At first all we could manage was one set reply but latter on we were capable of making it have a random reply. Below is a conversation I had with my program:

Even further into the programming we were capable of creating a system that picks up certain key words and uses it to help shape the answer. Below is the final copy of the code I created:

Text to Speech

On the second day of AI we went over and created another chatbot. This time, however, we went over and created a chatbot that could speak to us. Although we didn't have the means to make it take in verbal words, we had the chatbot put out verbal words that we can understand. The chatbot only accepted text from the user though. Below will be a picture of the code. Considering the fact that I can not capture audio with a picture, I will not include the conversations.

After working on the creation of these new chatbots, we went over and looked at some professional chatbots for inspiration. After a few conversations with bots like cleverbot and jabberwacky, I took a screenshot of one of my conversations. I will provide the image below.

Fact Bots and Opening Files!

On the third day of working upon AI, we started looking into how programs can open files. We had the program set up to open a text file and then write inside of the text file. By itself this is pretty useless because you can just open it by yourself and do that but by doing this we can set it up to save facts it learned into the file for later use. Below is an example of the program opening and writing into a text file.

After that we started going into fact bots which are capable of searching the web for information. This can be combined with the text file and changing to save facts to questions for future use. Below is a picture of the code used and how it worked when used.

Game Playing AI

On the fourth day of AI work we went over and began creating AIs that play simple games such as rock paper scissors. We had to define all the rules behind the game and have it make a random pick between the choices then compare it to the human choice. We were capable of having the AI identify when it lost and when it won based on the choices that were made. Then we had the AI print this out. Below will be a fragment of the programming I used for rock paper scissors AI and a match against my AI.

On the fifth day of AI we began our creation of hangman games. I made variables representing things from the board, which I was using a guillotine instead of hanging, to the amount of letters you guessed. We had the program print out what was used and add the guesses to the list and to put up a drawing depending on the amount you got wrong. On the fifth day my system wasn't working on putting out the known pieces of the word so far and crashed every time you got a correct guess. On the sixth day of AI, however, I figured out that this was because of indentation problems and ended up getting it fixed. Below will be some gameplay and some of the code used.

After fixing that error, I went over and did small but important changes such as having the system access the internet to look at a large list of words to use and changing the symbol art design a bit to make it better. This wasn't very hard to do but it made the game more challenging and cooler looking.

Above is some work I did on the seventh day of AI. As you may notice, it is some gameplay of a tic tac toe game I created. Making the game was a bit simple but hard at the same time. I made it by drawing the board with changeable variables in the slots. Then I had the system ask you what position to put on your turn in terms of numbers. Doing this I had the system check where to put your turn based on the number you gave and changed the variable at that position. At first this didn't work because it used strings as the default input but I changed it to use variables. Below is the code of the first part.

After that I went over and made the computer do the same thing, this time a bit easier because I just used the variable in the brakets. I also had to make the computer choose between random numbers before checking if it already had something there. Then I had it check for wins. I had to put an if statement for all possible forms of a win. Below is the code used to do the second part.

On the eighth day of AI, I improved the tic tac toe program by first making the system not crash when you put in a letter. To do this I just had it input as a string and changed it to an int if it was a number between one and nine. After that I made the computer recognize points in time in which it can put an O to block or put an O to win. To do this I put 48 if statements for all the different blocking and winning possibilities. It was a bit redundant but worked.