A computer-implemented method for genotyping copy number variants comprising: receiving fluorescence data for a data graph from a microarray including nucleic acid probes; applying density-based clustering to the data graph to generate a plurality of candidate models from Gaussian components; selecting a best-fit model from the plurality of candidate models, the selecting of the best-fit model comprising: applying a model from the plurality of candidate models, and a scoring function to the components, to generate a component score; selecting a plate effect value; selecting a component label for each component based on the component score; utilizing the plate effect value as a point estimate for each of the components and calculating probabilities of the component's estimated statistical parameters, the statistical parameters including mean, standard deviation and plate effect value for the components; evaluating the model's fit against a probability tolerance; evaluating a next model if the model is not within the probability tolerance; and applying the model with the highest median probability over parameters, if no one of the plurality of candidate models meets the probability tolerance; configuring a normalizer with historical component data to adjust the mean and standard deviation of each of the components to generate an adjusted mixture; configuring a classifier with the adjusted mixture to classify unknown samples, the configuring of the classifier comprising: weighting component densities based on the adjusted mixture; and comparing the unknown samples to the most probable components; and assigning a copy number call corresponding to the component with the highest probability to the unknown samples if the ratio of the density of the most likely component to the density of the second most likely component, evaluated at the sample position, is above a certain cutoff, and the absolute density of the most probable component, evaluated at the sample position, is above a density cutoff. receiving fluorescence data for a data graph from a microarray including nucleic acid probes; applying density-based clustering to the data graph to generate a plurality of candidate models from Gaussian components; selecting a best-fit model from the plurality of candidate models, the selecting of the best-fit model comprising: applying a model from the plurality of candidate models, and a scoring function to the components, to generate a component score; selecting a plate effect value; selecting a component label for each component based on the component score; utilizing the plate effect value as a point estimate for each of the components and calculating probabilities of the component's estimated statistical parameters, the statistical parameters including mean, standard deviation and plate effect value for the components; evaluating the model's fit against a probability tolerance; evaluating a next model if the model is not within the probability tolerance; and applying the model with the highest median probability over parameters, if no one of the plurality of candidate models meets the probability tolerance; applying a model from the plurality of candidate models, and a scoring function to the components, to generate a component score; selecting a plate effect value; selecting a component label for each component based on the component score; utilizing the plate effect value as a point estimate for each of the components and calculating probabilities of the component's estimated statistical parameters, the statistical parameters including mean, standard deviation and plate effect value for the components; evaluating the model's fit against a probability tolerance; evaluating a next model if the model is not within the probability tolerance; and applying the model with the highest median probability over parameters, if no one of the plurality of candidate models meets the probability tolerance; configuring a normalizer with historical component data to adjust the mean and standard deviation of each of the components to generate an adjusted mixture; configuring a classifier with the adjusted mixture to classify unknown samples, the configuring of the classifier comprising: weighting component densities based on the adjusted mixture; and comparing the unknown samples to the most probable components; and weighting component densities based on the adjusted mixture; and comparing the unknown samples to the most probable components; and assigning a copy number call corresponding to the component with the highest probability to the unknown samples if the ratio of the density of the most likely component to the density of the second most likely component, evaluated at the sample position, is above a certain cutoff, and the absolute density of the most probable component, evaluated at the sample position, is above a density cutoff.