#!/usr/bin/env Rscript
# Copyright (c) 2011-2012, Universite de Versailles St-Quentin-en-Yvelines
#
# This file is part of ASK.  ASK is free software: you can redistribute
# it and/or modify it under the terms of the GNU General Public
# License as published by the Free Software Foundation, version 2.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


suppressPackageStartupMessages(require(tgp, quietly=T))

args <- commandArgs(trailingOnly = T)

if (length(args) != 3) {
    stop("Usage: tgp_build <configuration.conf> <labelled_file> <output_file>")
}

source(file.path(Sys.getenv("ASKHOME"), "common/configuration.R"))
input = read.table(args[2])

# Set up categorical variables as factors
#for (f in conf("factors")) {
#  if (f$type == "categorical") {
#    input[,i] = input[,i]
#    #warn("categorical data not well supported in tgp module")
#  }
#}

# split input in explicative variables, X, and response, Z.
X = input[,-ncol(input)]
Z = input[,ncol(input)]
tgp1 <- btgpllm(X, Z, pred.n=F, verb=T, corr="exp")

save(tgp1, file=args[3])

