Кіріспе

Толық полиномиалдық уақытқа жуықтау схемасы (FPTAS) – функциялық есептерді, әсіресе оптимизациялау есептерін шамамен шешуге арналған алгоритм. FPTAS есептің бір мысалын және ε > 0 параметрін кіріс ретінде қабылдайды. Ол нәтиже ретінде дұрыс мәннен кеміндегі еселік және дұрыс мәннен көп емес еселік мәнді қайтарады. Оптимизациялау есептері контекстінде дұрыс мән – оптималды шешімнің мәні ретінде түсініледі, және FPTAS жарамды шешімді (және тек шешімнің мәнін емес) беруі керек деп көбінесе айтылады. Мән беру және сол мәнмен шешім табу, егер есеп өзін-өзі кешіру қабілетіне ие болса, эквивалентті. FPTAS-тың орындалу уақыты есеп көлеміне және 1/ε-ға полиномиалды. Бұл жалпы полиномиалдық уақытқа жуықтау схемасынан (PTAS) өзгеше. Жалпы PTAS-тың орындалу уақыты әрбір нақты ε үшін есеп көлемі бойынша полиномиалды, бірақ 1/ε бойынша экспоненциалды болуы мүмкін. FPTAS термині FPTAS-ы бар есептер класын білдіру үшін де қолданылуы мүмкін. FPTAS – PTAS-тың ішкі жиыны, және егер P = NP болмаса, ол қатаң ішкі жиын болып табылады.

Басқа күрделілік сыныптарымен байланыс

FPTAS-тағы барлық мәселелер стандартты параметрлеуге қатысты шешілуге жарамды. Полиномдық шектелген мақсаттық функциясы бар кез келген күшті NP-қиын оптимизациялық проблема P=NP болмаса FPTAS-қа ие болмайды. Дегенмен, керісінше дұрыс емес: мысалы, егер P, NP-ге тең болмаса, екі шектеуі бар рюкзак күшті NP-қиын болмаса да, ең жақсы мақсаттық функция полиномдық шектелген жағдайда да FPTAS-қа ие емес.

Динамикалық бағдарламаны FPTAS-қа түрлендіру

Вёгингер нақты бір динамикалық бағдарламаларды FPTAS-қа түрлендірудің жалпы жоспасын ұсынды.

Үлгі емес

Жоғарыда көрсетілген нәтижелердің жалпылығына қарамастан, оны қолдануға болмайтын жағдайлар бар. 1. Толық кешігу мәселесінде 1||, Лоулердің динамикалық бағдарламалау түзілімі ескі күй кеңістігіндегі барлық күйлерді B рет жаңартуды қажет етеді, мұнда B X (максималды кіріс мөлшері) шамасында болады. Экономикалық партия көлемін анықтау үшін қолданылатын динамикалық бағдарлама үшін де осы жағдай орынды. Бұл жағдайларда F-дегі өту функцияларының саны B-ге тең, ал ол log(X) бойынша экспоненциалды болып келеді, сондықтан екінші техникалық талап бұзылады. Күйді қысқару әдісі тиімді емес, бірақ FPTAS құру үшін басқа әдіс – кіріс дөңгелектеу – қолданылды. 2. Дисперсияны азайту мәселесінде 1||, мақсаттық функция , бұл 2-ші талапты бұзады, сондықтан теорема қолданылмайды. Бірақ FPTAS құру үшін басқа техникалар қолданылды.

Нақты сандарды шамалау үшін FPTAS

FPTAS-тың пайдалы болуы мүмкін проблемалардың тағы бір түрі – нақты сандарға жуық рационалдық сандарды табу. Мысалы, шексіз қатардың сомасын қарастырайық. Бұл сан иррационалды. Оны рационалды санмен жуықтау үшін, біз алғашқы k мүшенің қосындысын есептейміз, мұнда k – шекті сан. Дәлелдеуге болады, жуықтау қателігі шамамен тең. Демек, ε қателігіне жету үшін шамамен мүше керек, сондықтан бұл FPTAS болып табылады. Атап айтқанда, осы соманы тек O(log(ε)) мүшесі қажет болатын басқа сома арқылы да көрсетуге болады, сондықтан сома ε кодтау ұзындығы бойынша көпмүшелік уақытта жуықталуы мүмкін.