[DOC] Documentation for builtin gridSearch function
Closes #950.
diff --git a/dev/docs/builtins-reference.md b/dev/docs/builtins-reference.md
index 83fcd10..dca37e5 100644
--- a/dev/docs/builtins-reference.md
+++ b/dev/docs/builtins-reference.md
@@ -23,6 +23,7 @@
* [Built-In Construction Functions](#built-in-construction-functions)
* [`tensor`-Function](#tensor-function)
* [DML-Bodied Built-In functions](#dml-bodied-built-in-functions)
+ * [`gridSearch`-Function](#gridSearch-function)
* [`KMeans`-Function](#KMeans-function)
* [`lm`-Function](#lm-function)
* [`lmDS`-Function](#lmds-function)
@@ -118,7 +119,43 @@
**DML-bodied built-in functions** are written as DML-Scripts and executed as such when called.
-
+
+## `gridSearch`-Function
+
+The `gridSearch`-function is used to find the optimal hyper-parameters of a model which results in the most _accurate_
+predictions. This function takes `train` and `eval` functions by name.
+
+### Usage
+```r
+gridSearch(X, y, train, predict, params, paramValues, verbose)
+```
+
+### Arguments
+| Name | Type | Default | Description |
+| :------ | :------------- | -------- | :---------- |
+| X | Matrix[Double] | required | Input Matrix of vectors. |
+| y | Matrix[Double] | required | Input Matrix of vectors. |
+| train | String | required | Specified training function. |
+| predict | String | required | Evaluation based function. |
+| params | List[String] | required | List of parameters |
+| paramValues | List[Unknown] | required | Range of values for the parameters |
+| verbose | Boolean | `TRUE` | If `TRUE` print messages are activated |
+
+### Returns
+| Type | Description |
+| :------------- | :---------- |
+| Matrix[Double] | Parameter combination |
+| Frame[Unknown] | Best results model |
+
+### Example
+```r
+X = rand (rows = 50, cols = 10)
+y = X %*% rand(rows = ncol(X), cols = 1)
+params = list("reg", "tol", "maxi")
+paramRanges = list(10^seq(0,-4), 10^seq(-5,-9), 10^seq(1,3))
+[B, opt]= gridSearch(X=X, y=y, train="lm", predict="lmPredict", params=params, paramValues=paramRanges, verbose = TRUE)
+```
+
## `KMeans`-Function
The kmeans() implements the KMeans Clustering algorithm.