jijzepttools.blackbox_optimization.demo.ad_simulator

Contents

jijzepttools.blackbox_optimization.demo.ad_simulator#

Classes#

BiddingStrategy

Generic enumeration.

TargetingGranularity

Generic enumeration.

DeviceTarget

Generic enumeration.

TimeSlot

Generic enumeration.

CreativeFormat

Generic enumeration.

FrequencyCap

Generic enumeration.

AudienceStrategy

Generic enumeration.

AdCampaignParams

広告キャンペーンパラメータ

MarketConditions

市場環境パラメータ

AdEngineSimulator

広告配信エンジンシミュレータ

AdCampaignRunner

広告キャンペーン実行・分析クラス

Module Contents#

class BiddingStrategy#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

CPC = 'CPC'#
CPM = 'CPM'#
CPA = 'CPA'#
ROAS = 'ROAS'#
class TargetingGranularity#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

GENDER_ONLY = 'gender_only'#
AGE_GROUP = 'age_group'#
DETAILED_DEMO = 'detailed_demo'#
BEHAVIORAL = 'behavioral'#
class DeviceTarget#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

PC = 'pc'#
MOBILE = 'mobile'#
TABLET = 'tablet'#
ALL_DEVICES = 'all_devices'#
class TimeSlot#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

ALL_DAY = 'all_day'#
WEEKDAY_DAYTIME = 'weekday_daytime'#
EVENING = 'evening'#
WEEKEND = 'weekend'#
class CreativeFormat#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

BANNER = 'banner'#
VIDEO = 'video'#
NATIVE = 'native'#
RICH_MEDIA = 'rich_media'#
class FrequencyCap#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

NO_LIMIT = 'no_limit'#
DAILY_3 = 'daily_3'#
WEEKLY_5 = 'weekly_5'#
MONTHLY_10 = 'monthly_10'#
class AudienceStrategy#

Bases: enum.Enum

Generic enumeration.

Derive from this class to define new enumerations.

LOOKALIKE = 'lookalike'#
RETARGETING = 'retargeting'#
INTEREST = 'interest'#
NEW_ACQUISITION = 'new_acquisition'#
class AdCampaignParams#

広告キャンペーンパラメータ

bidding_strategy: BiddingStrategy#
targeting_granularity: TargetingGranularity#
device_target: DeviceTarget#
time_slot: TimeSlot#
creative_format: CreativeFormat#
frequency_cap: FrequencyCap#
audience_strategy: AudienceStrategy#
budget_allocation: float = 1.0#
bid_amount: float = 100.0#
target_age_range: int = 20#
class MarketConditions#

市場環境パラメータ

competition_level: float = 0.5#
market_saturation: float = 0.3#
seasonal_factor: float = 1.0#
economic_index: float = 1.0#
class AdEngineSimulator(market_conditions: MarketConditions | None = None, noise_level: float = 0.1)#

広告配信エンジンシミュレータ

market_conditions#
noise_level = 0.1#
random_state#
base_ctr = 0.02#
base_cvr = 0.05#
base_cpc = 150#
evaluate_campaign(params: AdCampaignParams) Dict[str, float]#

キャンペーンパラメータを評価してKPIを返す

class AdCampaignRunner(market_conditions: MarketConditions | None = None, noise_level: float = 0.1)#

広告キャンペーン実行・分析クラス

simulator#
analyze_campaign(params: AdCampaignParams, num_trials: int = 1) Dict#

キャンペーンを分析(複数回実行して平均を取る)