public void addParametersCost(NodeArgument[] params, double cost) {

        this.costTable.put(NodeArgumentArray.getNodeArgumentArray(params), cost);

        // set the min and the max
        if ((cost != Double.NEGATIVE_INFINITY) && (cost != Double.POSITIVE_INFINITY)) {
            if (this.minCost == null || cost < this.minCost) {
                this.minCost = cost;
            }

            if (this.maxCost == null || cost > this.maxCost) {
                this.maxCost = cost;
            }
        }
    }