Inteligencia Artificial
Julio Ponce, Universidad Autonoma de Aguascalientes
Aurora Torres Soto
Fátima Sayuri Quezada
Copyright Year:
Publisher: LATIn Project
Language: Spanish; Castilian
Formats Available
Conditions of Use
Attribution-ShareAlike
CC BY-SA
Reviews
Considering only the title, I was expecting the book to provide an in-depth introduction to artificial intelligence covering classic topics such as search algorithms (BFS, DFS, A*), constraint satisfaction problem (CSP), planning, logic, basic... read more
Considering only the title, I was expecting the book to provide an in-depth introduction to artificial intelligence covering classic topics such as search algorithms (BFS, DFS, A*), constraint satisfaction problem (CSP), planning, logic, basic probability theory, Bayesian networks, decision tree. Contrary, the book provides a survey on multiple topics that a graduate student covers in an Artificial Intelligence program, providing a brief introduction to entire courses such as Multi-Agent System, Knowledge Representation and Reasoning, Machine Learning, Optimization, Swarm Intelligence which is an overly ambitious goal, reflected in the relatively low quality of the content (with some exceptions).
The content is not accurate, and it contains errors.
Location of the error: page 59
The "(b) Control one-pass" figure is incorrect. There should be only one set of arrows going up (from perception input to action output), or both sets of arrows should point upwards.
Location of the error: page 81, subchapter 5.2.2.
In the chapter "Introduccion al Aprendizaje," the authors briefly introduce linear regression. The solution for the parameters beta claimed to be: beta = (X X^T)^(1) X^T y. Instead, it should be: beta = (X X^T)^(-1) X^T y. Most probably, this was just a typo.
Location of the error: page 82, subchapter 5.2.3.
In the same chapter, "Introduccion al Aprendizaje," the authors introduce linear classification. The authors define the hyperplane y(x) = beta0 + beta1 * x1 + beta2 * x2 and then claim that the classification criterion is given by
c(x) = 0 if x < 0.5
c(x) = 1 if x >= 0.5.
This affirmation is incorrect. First, the classification criterion should be based on y(x) and not on x. Second, by the definition of y, the comparison against 0.5 does not make sense. By the definition of y, the value should be compared against 0 and NOT 0.5. The comparison should have been performed against 0.5 if the sigmoid function would have been applied, following the definition: y = sigmoid(beta0 + beta1 * x1 + beta2 * x2), since sigmoid(0) = 0.5
Location of the error: (page 92, subchapter 6.4), (page 106, subchapter 7.1.4).
The authors confuse the notion of convex sets with convex functions. The authors introduce the notion of the convex set but provide the mathematical definition of the convex function.
Location of the error: page 93, subchapter 6.5.1.
The title of the subsection is called Method Simplex, which is an algorithm for solving linear programs. The subsection only introduces the definition of a linear program and does not introduce the algorithm itself. The title should be modified.
Hill Climbing (page 98 / 6.6.4)
In the beginning, the objective is to minimize the function, although the update maximizes it.
The book covers relatively older material, but I consider it relevant for an artificial intelligence specialist. The book offers a survey of some of the courses included in an artificial intelligence program such as Multi-Agent System, Knowledge Representation and Reasoning, Machine Learning, Optimization, and Swarm Intelligence, which are still active research areas. The authors did not include more recent developments such as (deep) neural networks, (deep) reinforcement learning, (deep) unsupervised learning in which a reader might be more interested in. Nevertheless, the content is relevant, and the areas covered can serve as a strong foundation for modern research areas. I consider that those updates can be easily introduced since the chapters are relatively independent of each other.
The majority of the time, the text is written in accessible prose, and it provides adequate context for technical terminology used with a few exceptions. There are a few terms that translated in Spanish but abbreviated in English without specifying the English translation(e.g., cuadrados de los errores(RSS) - page 81, Los k vecinos más cercanos (kNN) - page 83)
The text is overall internally consistent in terms of terminology. Although the majority of the chapters are independent, the overlapping examples use the same jargon.
Each chapter of the book covers relatively independent topics from artificial intelligence and is divided into subchapters that expose a particular idea, making it easy to reorganize and realign with various subunits of the course without much disruption to the reader.
The book offers a survey of multiple courses covered in an artificial intelligence program. Some of the chapters' content is relatively independent of the others, meaning that the order in which they are introduced is not very impactful with a few exceptions. The book has a dedicated chapter for each of the following topics: "5-Introduccion al Aprendizaje", "6-Optimizacion y Heurísticas", "7-Algoritmos Evolutivos" introduced in this specific order. I consider that chapter 6 should be introduced before chapters 5 and 7 since the later ones are using some optimization techniques. Nevertheless, this would require some adjustments to the optimization chapter to relate it better to the other two previously mentioned.
The book has significant interface issues. The content seems to be a collection of individual work of multiple authors negligently merged. There is no standardized format across the chapters, which results in an unappealing aspect of the book.
Chapter "1 - Introducción y Antecedentes de la Inteligencia
Artificial"
It contains blurry images (pages 18, 22, 25) and has a poorly managed use of white space, consistent across the entire book.
Chapter "2 - Planteamiento del Problema"
Contains closely related images of different resolutions (page 36).
Chapter "3 - Representación del Conocimiento"
A blurry figure of a table (page 42)
The figures have a different resolution (page 44).
There is no consistency between the upper and lower case for the truth tables on page 46.
It contains a low resolution of a screen capture of Protege (page 48) and a typo (Ptotege, which should be Protege).
Chapter "4 - Agentes Inteligentes" contains unindexed figures accross the entire chapter. (page 54, 59, 61, 62, 65, 69, 75).
It contains an example of code not properly formated (page 64).
It contains low-resolution image (page 65).
Formatting errors (extra spaces) for the code on page 68.
Difficult to read code on page 75.
Chapter "5 - Introduccion al Aprendizaje"
Inconsistency in using sub/super - scripts (page 80, chapter 5.2.1)
e.g.: X = (X1, X2, ..., Xp) not using subscript. Two rows below for the definition of Y it is using subscripts.
Chapter "6 - Optimizacion y Heurísticas". This chapter has major formatting problems. The content is almost unreadable.
Not using subscripts: f1, f2, ... fn (page 87)
Not using subscripts: x = {x1, ...., xn} (page 87)
Formatting errors: in[U+FB02]uyen, [U+FB02]otante (page 87, 88)
X^(*), X* -> not using superscipts sometimes / inconsistency (page 88)
f : X 7→ R (page 89, 90 / 6.2)
x^l -> confusing notation for local maxium (page 89 / 6.2)
x1, x2 -> not using subscripts (page 89 / 6.2)
Rn -> not using superscirpts (page 89 / 6.2)
x^(-)l -> confusing notatiof for local minimum (page 89 / 6.2)
Missing symbols in the definition of local maximu/minimum. The epsilon symbol is missing when defining the epsilon ball (page 89 / 6.2)
x*l -> confusing/hard to read notation for local optimum (page 89 / 6.2)
^x -> confusing/hard to read notation for global maximum (page 90 / 6.2)
Missing symbol for global minimum (page 90 / 6.2)
Not using subscripts for the constraints and the covariates/featurs/coordinates) (page 91)
Hard to read text because sub/super - scripts are not used (page 92 / 6.4)
Textlabel for figure 6.2, and the figure itself should be re-written. In the textlabel, 6.2(b) is missing. There is no clear spearation between the convex and non-convex sets (they should be clearly marked in the figure). (page 92 / 6.4)
Paragraph in the bottom page 92/ 6.4 is fragmented.
Missing footnote (unimodal1)(pag 93 / 6.5)
Inconsistency in writing for the definition of the linear program. Alternating between using sub/super-scripts and not using them. Hard to read. Lots of blank unaesthetic space. Missing definition of r(X) (page 93 / 6.5.1)
The pseudocode is impossible to read. (page 94 - 95 / 6.5.2 - 6.5.3)
Simulated Annealing (page 97 / 6.6.3) Hard to read pseudocode further details should be provided regarding the notation used in the pseudocode (e.g., P, E, T)
Hill Climbing (page 98 / 6.6.4) - the pseudocode is easier to read than the others. Although I would recommend reediting (using sub/super-scripts, symbols). A the beginning the objective is to minimize the function, although the update maximizes it.
Chapter "7 - Algoritmos Evolutivos"
Subsection 7.1 covers the exact material presented in section "Optimizacion y Heurísticas"(6) only with better editing. The mathematical errors are still present (e.g., convex set vs. convex function). All Pseudocodes should be broken in multiple lines.
Pseudocode should be broken in multiple lines (page 114 / 7.2.3)
Pseudocode should be broken in multiple lines (page 116 / 7.2.3)
Hard to read pseudocode (page 119/7.3)
inconsistency displaying the pseudocode with the previous ones (page 156)
Chapter "8 - Algoritmos Bioinspirados"
Hard to read pseudocode (page 173-174/ 8.2.1). Inconsistent formatting of the pseudocode across the book
Missing symbol description for the computation of the probability of selecting a node and updating the feromone level until late (the running example).
Missing table labels for the cost of the edge, feromone level (page 176/ 8.2.1)
Hard to read pseudocode (page 180-183/ 8.2.2). Inconsistent formatting of the pseudocode across the book. Can be simplified and easy to understand if mathematical symbols were used
Chapter "9 - Algoritmos en Paralelo mediante Uso de GPUs"
Editing problems - hard to read pseudocode (page 203) and inconsistent formatting across the book
The text does not contain grammatical errors.
The text is not culturally offensive in any way. All the examples used are purely technical and representative for the exposed concepts without referencing any race, ethnicities, and background.
This book represents a survey of some of the courses covered in an artificial intelligence program such as Multi-Agent System, Knowledge Representation and Reasoning, Machine Learning, Optimization, and Swarm Intelligence. Most of the material is superficially covered, and some of the content is not accurate and lacks a clear explanation. The book has significant formatting problems regarding the pseudocode, figure numbering usage of space, and is not consistent across the chapters. The content seems to be a collection of individual work of multiple authors negligently merged. Although I would not recommend this book as reference material for any course, I consider that it can serve as a good survey for the classical methods in artificial intelligence if the errors are fixed, and some materials are reconsidered.
Table of Contents
- 1 Introducción y Antecedentes de la Inteligencia Artificial
- 2 Planteamiento del Problema
- 3 Representación del Conocimiento
- 4 Agentes Inteligentes
- 5 Introduccion al Aprendizaje
- 6 Optimizacion y Heurísticas
- 7 Algoritmos Evolutivos
- 8 Algoritmos Bioinspirados
- 9 Algoritmos en Paralelo mediante Uso de GPUs
Ancillary Material
Submit ancillary resourceAbout the Book
Este libro es una introducción al area de la Inteligencia Artificial y presenta algunas de las aplicaciones que puede tener en la vida real en diversos campos de aplicación, El libro esta compuesto de ocho capítulos los cuales abarcan los antededentes, algunos conceptos importantes para la resolución de problemas como es la representación de conocimiento, el planteamiento de los problemas. Asimismo se menciona la teoría de agentes por un lado y por otro lo que es el aprendizaje computacional. Otra area que se aborta es la computación evolutivo y los algoritmos bioinspirados para la resolución de problemas, dandole enfasis a los problemas de optimizacion. Por ultimo se menciona una nueva tendencia en el area de las ciencias computacionales como es el uso de las GPUs para trabajar de una manera mas rapida al realizar el procesamiento en paralelo.
About the Contributors
Authors
Julio Ponce, Universidad Autonoma de Aguascalientes
Aurora Torres Soto
Fátima Sayuri Quezada