<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def initialize(log_file, project_dir=None, debug=False):
    '''
    Initializes an AbTools pipeline.

    Initialization includes printing the AbTools splash, setting up logging,
    creating the project directory, and logging both the project directory
    and the log location.

    Args:

        log_file (str): Path to the log file. Required.

        project_dir (str): Path to the project directory. If not provided,
            the project directory won't be created and the location won't be logged.

        debug (bool): If ``True``, the logging level will be set to ``logging.DEBUG``.
            Default is ``FALSE``, which logs at ``logging.INFO``.

    Returns:

        logger
    '''
    print_splash()
    log.setup_logging(log_file, print_log_location=False, debug=debug)
    logger = log.get_logger('pipeline')
    if project_dir is not None:
        make_dir(os.path.normpath(project_dir))
        logger.info('PROJECT DIRECTORY: {}'.format(project_dir))
        logger.info('')
    logger.info('LOG LOCATION: {}'.format(log_file))
    print('')
    return logger