Merge pull request 'revision from our profesor' (#11) from new_revision into master
Reviewed-on: #11
This commit is contained in:
commit
497b4a3e3e
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -1 +1,2 @@
|
|||||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
53
main.tex
53
main.tex
@ -58,7 +58,7 @@
|
|||||||
\item \textbf{CARRERA:} Ingeniería Civil en Informática
|
\item \textbf{CARRERA:} Ingeniería Civil en Informática
|
||||||
\item \textbf{E-MAIL:} martin.araneda1501@alumnos.ubiobio.cl
|
\item \textbf{E-MAIL:} martin.araneda1501@alumnos.ubiobio.cl
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\vspace{2mm}
|
\vspace{1mm}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item \textbf{NOMBRE:} Christopher Cromer
|
\item \textbf{NOMBRE:} Christopher Cromer
|
||||||
\item \textbf{DIRECCIÓN:} Roberto Matta 204, Departamento 625, Concepción
|
\item \textbf{DIRECCIÓN:} Roberto Matta 204, Departamento 625, Concepción
|
||||||
@ -93,17 +93,34 @@
|
|||||||
|
|
||||||
\section{Título Anteproyecto}
|
\section{Título Anteproyecto}
|
||||||
|
|
||||||
Diseño e Implementación de una inteligencia artificial en video juegos con enfoque en lenguaje lógico y compilado.
|
Diseño e Implementación de un lenguaje de programación basado en Prolog para control de agentes en videojuegos.
|
||||||
|
|
||||||
\section{Descripción del Problema}
|
\section{Descripción del Problema}
|
||||||
|
|
||||||
Se va a utilizar un lenguaje lógico de programación para poner en funcionamiento una inteligencia artificial autónoma\
|
Los videojuegos de plataformas son un género de videojuegos que se basan en completar niveles, obtener objetos y sortear obstáculos tales como\
|
||||||
desarrollada en un motor de video juegos.
|
acantilados o plataformas (dado así el nombre del género). Este tipo de videojuegos usualmente utilizan una vista de desplazamiento horizontal\
|
||||||
|
de izquierda a derecha.
|
||||||
|
|
||||||
Un lenguaje lógico es una manera de asimilar la toma de decisiones de un ser humano en como resolver un dificultad, con la diferencia\
|
\begin{figure}[!h]
|
||||||
de poder elegir que problema queremos solucionar y desarrollando relaciones entre objetos (agentes y/o obstáculos).
|
\centering
|
||||||
|
\includegraphics[width=0.3\textwidth, height=0.3\textheight, keepaspectratio]{mario-bros.png}
|
||||||
|
\caption{Super Mario Bros.}
|
||||||
|
\label{fig:mario-bros}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
Todo esto es creando un cerebro o ''ente pensante'' que hará este trabajo de abordar estos problemas y superarlos. Este ente es llamado\
|
Uno de los juegos más influyentes y populares en este género es Super Mario Bros., lanzado en 1985. Este juego sentó las bases de lo que hoy\
|
||||||
|
se considera un videojuego de plataforma, incluyendo los elementos típicos, como distribución en niveles por cada mundo y obtención\
|
||||||
|
de objetos para tener una vida extra.
|
||||||
|
|
||||||
|
En el trabajo se va a utilizar un lenguaje lógico de programación para diseñar e implementar un agente inteligente para ser incorporado en un video\
|
||||||
|
juego implementado mediante el motor Godot.
|
||||||
|
|
||||||
|
Un lenguaje lógico es una manera de modelar el comportamiento de los seres humanos empleando reglas del tipo ''if...then...'' para\
|
||||||
|
resolver una dificultad, con la diferencia de poder elegir qué problema queremos solucionar y\
|
||||||
|
desarrollando relaciones entre objetos (agentes y/o obstáculos).
|
||||||
|
|
||||||
|
Todo esto es creando un sistema que será capaz de resolver un problema como lo hace un ser humano y superarlos.\
|
||||||
|
Este sistema es llamado\
|
||||||
''Inteligencia Artificial'', una combinación de programación y lógica, que tiene las mismas capacidades racionales de un ser humano.
|
''Inteligencia Artificial'', una combinación de programación y lógica, que tiene las mismas capacidades racionales de un ser humano.
|
||||||
|
|
||||||
Por tanto, se va a abordar un típico problema que incluye la toma de decisiones para superar obstáculos.
|
Por tanto, se va a abordar un típico problema que incluye la toma de decisiones para superar obstáculos.
|
||||||
@ -113,27 +130,29 @@ Por tanto, se va a abordar un típico problema que incluye la toma de decisiones
|
|||||||
|
|
||||||
\subsection{Objetivo General:}
|
\subsection{Objetivo General:}
|
||||||
|
|
||||||
La finalidad de esta actividad de titulación es el desarrollo de un lenguaje de programación de tipo Prolog para poder\
|
Desarrollar un lenguage de programación tipo Prolog que permita modelar el comportamiento de los agentes de un vídeojuego empleando\
|
||||||
implementar una inteligencia artificial que permita evitar ciertos obstáculos.
|
reglas declarativas.
|
||||||
|
|
||||||
\subsection{Objetivos Específicos:}
|
\subsection{Objetivos Específicos:}
|
||||||
|
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\item Revisar bibliografía sobre Prolog, el motor Godot y programación de video juegos.
|
\item Revisar bibliografía sobre Prolog, el motor Godot y programación de video juegos.
|
||||||
\item Analizar la información recopilada de la bibliografía investigada.
|
\item Analizar la información recopilada de la bibliografía investigada.
|
||||||
\item Crear el lenguaje de programación tipo Prolog.
|
\item Crear el lenguaje de programación de comportamiento tipo Prolog.
|
||||||
\item Implementar el lenguaje de programación en el motor Godot.
|
|
||||||
\item Desarrollar un videojuego usando inteligencia artificial basado en el lenguaje tipo Prolog.
|
\item Desarrollar un videojuego usando inteligencia artificial basado en el lenguaje tipo Prolog.
|
||||||
|
\item Evaluar el desempeño del lenguaje creado.
|
||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
\section{Descripción de las actividades (Plan de trabajo)}
|
\section{Descripción de las actividades (Plan de trabajo)}
|
||||||
|
|
||||||
\begin{enumerate}
|
\begin{enumerate}
|
||||||
\item Se hará una revisión y descarte de bibliografía relacionada al desarrollo de videojuegos con implementación de inteligencia artificial basado en Prolog y motor Godot.
|
\item Fase 1. Revisión y descarte de bibliografía relacionada al desarrollo de videojuegos con implementación de inteligencia artificial\
|
||||||
\item Se estudiará la información recopilada para posible implementación en el software.
|
basado en Prolog y motor Godot.
|
||||||
\item Se creará un lenguaje de programación lógico basado en Prolog.
|
\item Fase 2. Estudio de la información recopilada para posible implementación en el software.
|
||||||
\item Se implementará el lenguaje de programación lógico en el motor de videojuegos Godot.
|
\item Fase 3. Creación del lenguaje de programación lógico basado en Prolog.
|
||||||
\item Se desarrollará un videojuego estilo plataforma con despliegue de la inteligencia artificial basada en Prolog.
|
\item Fase 4. Implementación de un videojuego en el motor Godot de estilo plataforma formado por agentes inteligentes programados mediante\
|
||||||
|
el lenguaje recientemente creado.
|
||||||
|
\item Fase 5. Evaluación del sistema para verificar el comportamiento del lenguaje creado y su correcto desempeño.
|
||||||
\end{enumerate}
|
\end{enumerate}
|
||||||
|
|
||||||
|
|
||||||
@ -142,7 +161,7 @@ implementar una inteligencia artificial que permita evitar ciertos obstáculos.
|
|||||||
El beneficio de usar un lenguaje lógico en vez de funcional es poder programar una inteligencia artificial que tome decisiones\
|
El beneficio de usar un lenguaje lógico en vez de funcional es poder programar una inteligencia artificial que tome decisiones\
|
||||||
de la misma forma que una persona real piensa usando datos basado en el entorno.
|
de la misma forma que una persona real piensa usando datos basado en el entorno.
|
||||||
|
|
||||||
Es necesario para así simular de manera mas realista el comportamiento humano de una inteligencia artificial y poder ser\
|
Es necesario para así simular de manera más realista el comportamiento humano de una inteligencia artificial y poder ser\
|
||||||
adaptado a otros tipos de juegos y motores.
|
adaptado a otros tipos de juegos y motores.
|
||||||
|
|
||||||
Adicionalmente, al utilizar un lenguaje de programación compilado en vez de scripting, se puede desarrollar una inteligencia artificial\
|
Adicionalmente, al utilizar un lenguaje de programación compilado en vez de scripting, se puede desarrollar una inteligencia artificial\
|
||||||
|
BIN
mario-bros.png
(Stored with Git LFS)
Normal file
BIN
mario-bros.png
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user